freeRTOS学习二

Posted ustc-anmin

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了freeRTOS学习二相关的知识,希望对你有一定的参考价值。

临界段,用一句话概括就是一段在执行时不能被中断的代码段。

临界段被打断的情况,一个是系统调度,还有一个就是外部中断。

对临界段的保护就是对中断的开和关。


空闲任务与阻塞延时

技术图片

 

 xTicksToDelay是任务控制块的一个成员,用于记录任务需要延时的时间,单位为SysTick的中断周期。


 多优先级

FreeRTOS中,数字优先级越小,逻辑优先级也越小。

空闲任务的优先级最低,为0。空闲任务一直处于就绪状态。

就绪列表是一个数组,里面存储的是就绪任务的TCB中的xStateListItem节点。

创建任务时,会根据任务的优先级将任务插入到就绪列表不同的位置。相同的优先级会插入就绪列表的同一链表中。


 任务延时列表

当任务需要延时时,则先将任务挂起,即先将任务从就绪列表中删除,然后插入任务延时列表,同时更新下一个任务的解锁时刻变量xNextTaskUnblockTime的值,xNextTaskUnblockTime = xTickCount (系统时基计数器)+ xTicksToDelay。


 

动态创建任务

技术图片

 

以上是关于freeRTOS学习二的主要内容,如果未能解决你的问题,请参考以下文章

FreeRTOS学习笔记 ——二值信号量

FreeRTOS学习笔记 ——二值信号量

FreeRTOS学习笔记 ——二值信号量

STM32G0学习手册——FreeRTOS信号量

STM32G0学习手册——FreeRTOS信号量

STM32G0学习手册——FreeRTOS信号量