UCOSIII中如何放弃任务的执行?
比如有两个任务,一个任务高优先级,负责接收数据;另一个任务低优先级,负责启动设备。启动设备需要用高优先级任务接收到的数据作为参数,参数不同,启动后的效果也不同。如果此时启动设备的任务被激活运行了,同时,高优先级的接收数据任务也被激活了,这时,先不论这些数据是两个任务公用的还是分开的(是否用的同一段RAM地址),设备按理来说应该是停止启动,因为启动参数(数据)不同了,如何才能做到呢? 事件标志,邮箱这些东西不就行了么,pend起任务等消息就行了 这需求和UCOS并没有太大的关系, 常见的做法是设置一个全局flag,启动流程每执行一个步骤检查一下flag,如果发现flag改变,就跳转到退出启动流程。并不推荐使用类似OSTaskDel来强制删除。
页:
[1]