自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(56)
  • 收藏
  • 关注

原创 2、Ubuntu下安装mosquitto

Ubuntu下安装mosquitto

2023-05-27 13:01:08 1252

原创 1、MQTT协议入门以及mosquitto示例

MQTT协议入门以及mosquitto示例

2023-05-27 12:47:43 1509

原创 1.2 IAR 环境配置及编译

IAR 环境配置及编译

2023-05-20 15:55:00 4547

原创 1.1 IAR新建工作空间 及 新建工程

1.1 IAR新建工作空间 及 新建工程

2023-05-20 15:47:49 1396

原创 2、Orangepi Zero2刷机和系统启动

Orangepi Zero2刷机和系统启动

2023-05-10 19:53:57 848

原创 Linux共享库、动态库详解

Linux共享库、动态库详解

2023-05-10 14:25:29 962

原创 Orangepi Zero2 全志H616简介

Orangepi Zero2 全志H616

2023-04-29 09:00:00 2029

原创 1.Linux——进程间的五种通信方式(管道、消息队列、共享存储、信号、信号量)

进程间通信(IPC,InterProcess Communication)是指在不同的进程之间传播或交换信息。

2023-04-02 19:21:21 2044 4

原创 STM32学习笔记(一)——如何下载程序到STM32单片机

如何下载程序到STM32单片机

2023-01-31 14:51:14 7010 2

原创 STM32学习笔记(五)——这就是GPIO的八种工作模式!!!

GPIO的八种工作模式

2023-01-05 18:57:26 520

原创 串口的认识(COM接口)

串口的认识(COM接口)

2022-11-29 21:48:11 12271 4

原创 关于51单片机启蒙的那点事儿

关于51单片机启蒙的那点事儿

2022-11-23 17:45:57 447 2

原创 9.FreeRTOS之中断管理

操作系统中,中断同样是具有优先级的,并且也可以设置它的优先级,但是他的优先级并不是从 0-15。是 取决于 configMAX_SYSCALL_INTERRUPT_PRIORITY。触发中断,在中断服务函数里向队列里发送数据,任务则阻塞接收队列数据。在中断中必需使用中断相关的函数;创建一个队列及一个任务,按下按键。任何中断的优先级都大于任务!中断服务函数运行时间越短越好。

2024-11-01 13:56:09 92

原创 8.FreeRTOS之软件定时器

如果定时器服务任务的优先级设置的高的话,定时器命令队列中的命令和定时器回调函数就会及时的得到处理。软件定时器有一个定时器服务任务和定时器命令队列,这两个东西肯定是要配置的,相关的配置也是放到文件FreeRTOSConfig.h。开启任务调度器的时候,会创建一个用于管理软件定时器的任务,这个任务就叫做软件定时器服务任务。软件定时器也可以实现定时功能,达到定时时间后可调用回调函数,可以在回调函数里处理信息。该功能将使软件定时器的重新开启定时,复位后的软件定时器以复位时的时刻作为开启时刻重新。

2024-11-01 13:55:32 75

原创 7.FreeRTOS之延时函数

一直不停的调用获取系统时间的函数,直到指定的时间流逝然后退出,故其占用了全部CPU。系统调用其它处于就绪状态的优先级最高的任务来执行。作用是让任务阻塞,任务阻塞后,

2024-11-01 13:54:54 71

原创 6.FreeRTOS之任务通知

任务通知是通过更新任务通知值来发送数据的,任务结构体中只有一个任务通知值,只能保持一个数据。在大多数情况下,任务通知可以替代二值信号量、计数信号量、事件标志组,可以替代长度为。如果被通知任务还没取走上一个通知,又接收了一个通知,则这次通知值未能更新并返回。如果被通知任务还没取走上一个通知,又接收了一个通知,则这次通知值未能更新并返回。等待通知的任务可以被阻塞, 但是发送消息的任务,任何情况下都不会被阻塞等待。发送消息给任务,如果有通知未读, 不覆盖通知值。:接收通知的任务句柄, 并让其自身的任务通知值加。

2024-11-01 13:54:14 108

原创 5.FreeRTOS之事件组

等待的事件标志位值:等待事件标志位成功,返回等待到的事件标志位 其他值:等待事件标志位失败,返回事件组中的事件标志位。是一组事件标志位的集合, 可以简单的理解事件标志组,就是一个整数。位用作存储事件标志 ,所以说一个事件组最多可以存储。:指定要在事件组中设置的一个或多个位的按位值。:指定要在事件组中清除的一个或多个位的按位值。位用作存储事件标志组的控制信息,低 24。:指定事件组中要等待的一个或多个事件。设置之后事件组中的事件标志位值。清零之前事件组中事件标志位的值。:对应的事件标志组句柄。

2024-11-01 13:53:35 70

原创 4.FreeRTOS之互斥量

优先级继承:当一个互斥信号量正在被一个低优先级的任务持有时, 如果此时有个高优先级的任务也尝试获取这个互斥信号量,那么这个高优先级的任务就会被阻塞。在多数情况下,互斥型信号量和二值型信号量非常相似,但是从功能上二值型信号量用于同步, 而互斥型信号量用于资源保护。互斥型信号量和二值型信号量还有一个最大的区别,互斥型信号量可以有效解决优先级反转现 象。优先级继承并不能完全的消除优先级翻转的问题,它只是尽可能的降低优先级翻转带来的影响。释放信号量的过程中,中等优先级任务M。,从而延迟了信号量的释放时间,导致。

2024-11-01 13:52:47 84

原创 3.FreeRTOS之信号量

信号量这个名字,我们可以把它拆分来看,信号可以起到通知信号的作用,然后我们的量还可以用来表示资源的数量,当我们的量只有0。的时候,它就可以被称作二值信号量,只有两个状态,当我们的那个量没有限制的时候,它就可以被称作为计数型信号量。),是在多任务环境下使用的一种机制,是可以用来保证两个或多个关键代码段不被并发调用。的队列,因此计数型信号量能够容纳多个资源,这在计数型信号量被创建的时候确定的。计数型信号量的释放和获取与二值信号量完全相同!成功,返回对应计数型信号量的句柄;成功,返回对应二值信号量的句柄;

2024-11-01 13:51:58 85

原创 2.FreeRTOS之队列

队列又称消息队列,是一种常用于任务间通信的数据结构,队列可以在任务与任务间、中断和任务间传递信息。采用实际值传递,即将数据拷贝到队列中进行传递,也可以传递指针,在传递较大的数据的时候采用指针传递。如果队列创建成功,则返回所创建队列的句柄。在这种情况下,就可以使用队列。当任务向一个队列发送消息时,可以指定一个阻塞时间,假设此时当队列已满无法入队。)处理,但树獭处理速度很慢,在处理数据的过程中,狐狸(任务2。)的数据存储缓冲机制,即先入队的数据会先从队列中被读取。创建队列时,需要指定队列长度及队列项目大小。

2024-11-01 13:51:16 110

原创 1.FreeRTOS之任务

正在更新...

2024-11-01 13:50:21 97

原创 一文带你搞懂 FreeRTOS 实时操作系统

只会祼机开发的单片机工程师,薪资注定不会高于会。操作系统会更加有帮助。

2024-11-01 13:46:08 100

原创 Linux底层驱动编译原理 、编译过程和装载(树莓派(香橙派))

1.写完把它放到驱动设备目录中,如:pin4引脚驱动,我把它放到内核源码的~/SYSTEM/linux-rpi-4.14.y/drivers/char,因为这是个字符设备。6.我们仿照已经写好的代码,在注释后的第一行加上:obj-m += 你要生成的驱动, 注意设备名要带后缀。一个驱动由设备名和和设备号组成的结构体,设备号又分为主设备号和次设备号,例如:pin5 8 3。14.自己写一个驱动的调用代码,简单的验证一下,驱动的调用就跟操作普通文件一样。9.在目标平台上,加载驱动。

2023-07-09 21:22:21 915

原创 树莓派(香橙派)交叉编译

1. 正常我们先要交叉编译wiringPi库,编译出的库适合树莓派,这时候交叉编译可执行程序的试试,链接库的格式也是正确的。我们在ubuntu上面编写树莓派的代码,并编译成可执行代码,如a.out,2. 在符号连接中,文件实际上是一个文本文件,其中包含的有另一文件的位置信息。是在树莓派上面运行,不是在ubuntu linux上面运行。(host) :编辑和编译程序的平台,一般是基于X86的PC机,通常也被称为主机。因为链接的库的格式不对,是宿主机的平台,出现以下错误。

2023-07-08 22:37:32 1046

原创 3、mqtt客户端演示(MQTT通信协议(mosquitto)发布订阅 C语言实现)

MQTT通信协议(mosquitto)发布订阅 C语言实现

2023-05-27 12:26:35 1491

原创 1、ESP8266通过HTTP协议接入OneNet云平台(保姆式教程)

ESP8266通过HTTP协议接入OneNet云平台

2023-05-12 10:44:57 1253 2

原创 5、基于linux文件系统编程下开发的ftp小项目基础功能实现

基于linux文件系统编程下开发的ftp小项目实现

2023-04-24 14:36:43 107

原创 4、socket 服务器实现双方消息发送

socket 服务器实现双方消息发送

2023-04-24 14:15:36 440

原创 3、Sockt服务器和客户端的开发步骤以及API

Sockt服务器和客户端

2023-04-16 21:14:05 385

原创 2、字节序(全)

字节序

2023-04-13 21:21:39 283

原创 1、TCP/UDP对比,端口号的作用

TCP/UDP对比,端口号的作用

2023-04-13 20:21:42 500

原创 1.linux多线程(全)

linux多线程

2023-04-12 21:10:56 308

原创 3.Linux——信号量

Linux——信号量

2023-04-04 16:06:07 623

原创 2.Linux——信号

在信号处理函数被调用时,操作系统会建立新的信号阻塞字,包括正在被递送的信号。sigqueue 函数不但可以发送额外的数据,还可以让信号进行排队(操作系统必须实现了 POSIX.1的实时扩展),对于设置了阻塞的信号,使用 sigqueue 发送多个同一信号,在解除阻塞时,接受者会接收到发送的信号队列中的信号,而不是直接收到一次。那么,kill 函数发送的信号是无法携带数据的,我们现在还无法验证发送收的部分,那么,我们先来看看发送信号的高级用法后,我们再来看看如何通过信号来携带数据吧。

2023-04-03 21:21:41 683

原创 4.typedef void (*sighandler_t)(int);

typedef void (*sighandler_t)(int)

2023-04-03 19:26:10 284

原创 Linux——system函数与popen函数的使用

system函数与popen函数的使用

2023-03-27 11:14:44 153

原创 fork与vfork的区别

fork与vfork的区别

2023-03-27 10:54:46 100

原创 Linux——进程一(面基)

LInux进程面试题

2023-03-25 15:48:48 75

原创 fopen、fread、fwrite、 fseek 、fclose (了解)fgetc 、fputc、 feof与之前open、close、write、read有何区别

fopen、fread、fwrite、 fseek 、fclose

2023-03-25 13:01:49 162

原创 Linux文件如何记录一个结构体(保姆式教程)

文件如何记录一个结构体

2023-03-25 10:11:38 61

2.FreeRTOS之队列

2.FreeRTOS之队列

2024-11-01

3.FreeRTOS之信号量

3.FreeRTOS之信号量

2024-11-01

3.FreeRTOS之信号量

3.FreeRTOS之信号量

2024-11-01

4.FreeRTOS之互斥量

4.FreeRTOS之互斥量

2024-11-01

5.FreeRTOS之事件组

5.FreeRTOS之事件组

2024-11-01

4.FreeRTOS之互斥量

4.FreeRTOS之互斥量

2024-11-01

6.FreeRTOS之任务通知

6.FreeRTOS之任务通知

2024-11-01

8.FreeRTOS之软件定时器

8.FreeRTOS之软件定时器

2024-11-01

9.FreeRTOS之中断管理

9.FreeRTOS之中断管理

2024-11-01

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除