FreeRTOS前缀释义:
u :代表unsigned。
s :代表short。
c :char。
所以类似uc,us类的变量就是unsigned char,unsigned short,分别对应uint8_t,uint16_t。
x :为用户自定义的数据类型,比如结构体,队列等。
常看到ux开头的函数,就是unsigned且用户自定义的类型。需要注意的是size_t变量前缀也是ux。
e :枚举变量
p :指针变量
类似(uint16_t *)变量前缀为pus。
prv :static函数
v: void函数
挂起:vTaskSuspend()
恢复:vTaskResume() 或 xTaskResumeFromISR()
- 一般函数中使用前者,中断中使用后者
- xTaskResumeFromISR有返回值,用于任务切换
举例:
// 比如在按键中断函数中
BaseType_t YieldRequired = xTaskResumeFromISR(Task3Task_Handler);
if(YieldRequired == pdTURE)
{
portYIELD_FROM_ISR(YieldRequired);
}
解释:
pdTURE说明恢复的任务的优先级等于或高于当前被打断的任务,所有中断完成的时候进行任务切换。