任务通知
freeRTOS从v8.2.0版本开始提供任务通知这个功能,每个任务都有一个32位的通知值,在大多数情况下,任务通知可以替代二值信号量,计数信号量,事件组,也可以替代长度为1的队列(可以保存一个32位整数或指针值)。
configUSE_TASK_NOTIFICATIONS设置为1。
任务控制块
常用任务通知API函数
发送通知函数 xTaskGenericNotify()
参数1:被通知的任务句柄,参数2:通知值,参数3:通知方式,参数4:返回值
xTaskNotifyGive()和vTaskNotifyGiveFromISR()
xTaskNotify()发送事件:
eAction的取值及含义:
获取任务通知
等待任务通知xTaskNotifyWait()
任务通知可以代替事件组