打脸了 ,本来打字主意搞非实业的,结果还是有个小项目要做。
遇到的问题是,我想A任务发消息给B任务,但不引导任务切换。原来用ucos没有遇到这个问题(里面有这个参数可以决定是否任务切换)。但在freertos好像不行,如果B任务优先级比A高,就一定要切换。
求指点:
消息发送函数为:xQueueGenericSend( QueueHandle_t xQueue, const void * const pvItemToQueue, TickType_t xTicksToWait, const BaseType_t xCopyPosition )
我所能想到的方法唯一就是改写这个原代码了。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
就是队列消息,要引起任务切换
// 暂停任务切换操作
vTaskSuspendAll();
这个操作是危险的,因为在这种会引起任务切换的函数前要禁止暂停切换操作和恢复操作。
一周热门 更多>