在uc/os中有以下几种情况可以进行任务间的切换:
1、每个任务都是超循环,但每个任务中存在函数OSTimeDly( )和OSTimeDlyHMSM( ),一旦遇到这两个函数中的一个,当前任务就会放弃CPU,保存现场,切换到下一个优先级更高的任务上;
2、在程序中用到了信号量,当前任务在信号量不满足的情况下会切换到下一个优先级更高的任务,知道信号量有效为止;
3、在任务执行中遇到中断,进入中断,中断执行完毕后重新进入新的优先级更高的任务;
ucos的任务切换
最新推荐文章于 2022-07-28 15:31:00 发布