4.NVIC中断控制器 步骤1-3说明了一个最基本的中断过程。然而还有一个重要的概念没有讲到,NVIC中断控制器。 STM32支持中断嵌套,为了更好的更强大的实现中断嵌套,ST给出了一个NVIC中断控制器来专门管理中断。我们都知道高优先级的中断能打断低优先级的中断优先执行,等高优先级中断执行完之后在返回去执行被打断的中断,这就是中断嵌套。那么如果同时有两个同样优先级的中断出现呢? 于是STM32所有中断都有两个优先级:抢占优先级和副优先级。(英文是 preempition priority和sub priority) 判断中断的优先级,先看抢占优先级,抢占优先级高的中断优先级别高。抢占优先级相同的情况下,先执行副优先高的的。抢占优先级和响应优先级相同的情况下,根据中断向量表确定。 在Cube中配置NVIC如下图 上图所示,使能EXIT line[15:10]中断,抢占优先级是0,副优先级也是0。
|