[应用相关] 抢占优先级和响应优先级

[复制链接]
1309|2
 楼主| 迪卡 发表于 2015-10-21 10:07 | 显示全部楼层 |阅读模式
STM32 的中断向量具有两个属性,一个为抢占属性,另一个为响应属性,其属性编号越小,表明它的优先级别越高。
抢占,是指打断其它中断的属性,即因为具有这个属性,会出现嵌套中断(在执行中断服务函数A 的过程中被中断B 打断,执行完中断服务函数B 再继续执行中断服务函数A),抢占属性由NVIC_IRQChannelPreemptionPriorit 的参数配置。
而响应属性则应用在抢占属性相同的情况下,当两个中断向量的抢占优先级相同时,如果两个中断同时到达,则先处理响应优先级高的中断,响应属性由NVIC_IRQChannelSubPriority 的参数配置。
例如,现在有三个中断向量:
中断向量 抢占优先级 响应优先级
     A            0              0
     B            1              0
     C            1              1
若内核正在执行C 的中断服务函数,则它能被抢占优先级更高的中断A 打
断,由于B 和C 的抢占优先级相同,所以C 不能被B 打断。但如果B 和C 中断
是同时到达的,内核就会首先响应响应优先级别更高的B 中断。
mmuuss586 发表于 2015-10-21 18:51 | 显示全部楼层
alex_li0824 发表于 2015-10-22 10:47 | 显示全部楼层
很通俗易懂哈!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

109

主题

650

帖子

1

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