FreeRTOS
文章平均质量分 92
Valkyrie902
这个作者很懒,什么都没留下…
展开
-
FreeRTOS中断管理
更加详情请看以上链接↑任何中断的优先级都大于任务!在我们的操作系统,中断同样是具有优先级的,并且我们也可以设置它的优先级,但是他的优先级并不是从0~15,默认情况下它是从5~150~4这5个中断优先级不是FreeRTOS控制的(5是取决于 configMAX_SYSCALL_INTERRUPT_PRIORITY1.在中断中必需使用中断相关的函数;2.中断服务函数运行时间越短越好。原创 2024-05-13 12:48:28 · 335 阅读 · 0 评论 -
延时函数与软件定时器
简单可以理解为闹钟,到达指定一段时间后,就会响铃。STM32芯片自带硬件定时器,精度较高,达到定时时间后会触发中断,也可以生成PWM、输入捕获、输出比较,等等,功能强大,但是由于硬件的限制,个数有限。软件定时器也可以实现定时功能,达到定时时间后可调用回调函数,可以在回调函数里处理信息。原创 2024-05-13 12:01:58 · 805 阅读 · 0 评论 -
FreeRTOS任务通知
FreeRTOS从版本V8.2.0开始提供任务通知这个功能,每个任务都有一个32位的通知值。按照 FreeRTOS 官方的说法,使用消息通知比通过二进制信号量方式解除阻塞任务快45%, 并且更加省内存(无需创建队列)。在大多数情况下,任务通知可以替代二值信号量、计数信号量、事件标志组,可以替代长度为 1的队列(可以保存一个32位整数或指针值),并且任务通知速度更快、使用的RAM更少!原创 2024-05-12 16:47:50 · 913 阅读 · 0 评论 -
FreeRTOS事件组
表明某个事件是否发生,联想:全局变量flag。通常按位表示,每一个位表示一个事件(高8位不算)原创 2024-05-11 21:19:32 · 929 阅读 · 0 评论 -
二值信号量、计数型信号量与互斥量
信号量(Semaphore),是在多任务环境下使用的一种机制,是可以用来保证两个或多个关键代码段不被并发调用。信号量这个名字,我们可以把它拆分来看,信号可以起到通知信号的作用,然后我们的量还可以用来表示资源的数量,原创 2024-05-11 11:20:40 · 533 阅读 · 0 评论 -
FreeRTOS消息队列
队列又称消息队列,是一种常用于任务间通信的数据结构,队列可以在任务与任务间、中断和任务间传递信息。为什么不使用全局变量?如果使用全局变量,兔子(任务1)修改了变量a,等待树獭(任务3)处理,但树獭处理速度很慢,在处理数据的过程中,狐狸(任务2)有可能又修改了变量a,导致树獭有可能得到的不是正确的数据。在这种情况下,就可以使用队列。兔子和狐狸产生的数据放在流水线上,树獭可以慢慢一个个依次处理。关于队列的几个名词:原创 2024-05-09 00:53:31 · 512 阅读 · 0 评论 -
FreeRTOS任务详解
任务句柄是一个指向任务控制块(TCB)的指针,用于引用和管理任务。原创 2024-05-07 00:55:51 · 996 阅读 · 0 评论 -
FreeRTOS 初识
Q:什么是 FreeRTOS?A: Free即免费的,RTOS的全称是Real time operating system,中文就是实时操作系统。RTOS不是指某一个确定的系统而是指一类操作系统。比如:uc/OS,FreeRTOS,RTX, RT-Thread等这些都是RTOS类操作系统。原创 2024-05-01 22:48:28 · 841 阅读 · 0 评论