[STM32F1] 问下大家STM32 软件中的一些问题

[复制链接]
2692|5
 楼主| 菜鸟同学 发表于 2014-9-10 10:16 | 显示全部楼层 |阅读模式
本人最近看UCOS中的任务切换由 软中断实现,但是软中断的优先级又很低。这个是什么目的?求解。
mmuuss586 发表于 2014-9-10 12:16 | 显示全部楼层

这个不清楚,你设高点应该也可以;
中断程序不要太长;
搞IT的 发表于 2014-9-10 23:30 | 显示全部楼层
优先级不是可以设置的吗??
dongranmengming 发表于 2014-9-11 15:01 来自手机 | 显示全部楼层
如果任务切换高中断,比如正在进行串口中断,切函数里面有影响任务切换的操作,还未等串口中断退出,就切换了任务,当串口中断退出的时候栈,可能会出错。
再者,也会影响其他中断任务响应
个人理解。
tianli1980 发表于 2014-9-11 15:34 | 显示全部楼层
可以在不同的任务之间设置任务优先级这样……
john_lee 发表于 2014-9-11 16:20 | 显示全部楼层
目的就是为了提高效率。
每一个调用了post的中断,都可能导致ready的最高优先级发生变化,如果都去切换任务,那么当发生了嵌套中断或 tail-chain 中断时,就会进行多次任务切换,而实际上只有最后一次切换是有效的,前面的切换完全是浪费时间。为了保证切换只在最后一个中断完成后进行,就应该使用 pendsv 中断来操作切换,并且要设置 pendsv 中断为最低优先级。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

35

主题

707

帖子

9

粉丝
快速回复 在线客服 返回列表 返回顶部
0