STM32中断优先级

1、ISPR[8]:全称是: Interrupt Set-Pending Registers,是一个中断挂起控制寄存器组。每个位
对应的中断和 ISER 是一样的。通过置 1,可以将正在进行的中断挂起,而执行同级或更高级别
的中断。写 0 是无效的。

2、而 STM32 只用到
了其中的前 60 个。 IP[59]~IP[0]分别对应中断 59~0。 而每个可屏蔽中断占用的 8bit 并没有全部
使用,而是 只用了高 4 位。这 4 位,又分为抢占优先级和子优先级。抢占优先级在前,子优先
级在后。

3、抢占优先级的级别高于响应优先级。而数值越小所代表的优先级就越高。

4、第一,如果两个中断的抢占优先级和响应优先级都是一样的话,则看
哪个中断先发生就先执行;第二,高优先级的抢占优先级是可以打断正在进行的低抢占优先级
中断的。而抢占优先级相同的中断,高优先级的响应优先级不可以打断低响应优先级的中断。

像USART、TIMER中断,出现中断嵌套时,尤其注意各个中断的抢占优先级、响应优先级。

posted on 2018-01-11 14:42  马勇123  阅读(383)  评论(0编辑  收藏  举报

导航