一、中断
1、中断全过程
中断发生
当CPU在处理某一事件A时,发生了另一事件B,请求CPU迅速去处理
中断处理
CPU暂停当前的工作,转去处理事件B
中断返回
当CPU将事件B处理完毕后,再回到事件A中被暂停的地方继续处理事件A
示意图
2、中断优先级
NVIC中有一个8位中断优先级寄存器NVIC_IPR,理论上可以配置0~255共256级中断。STM32只使用了其中的高4位,并分成抢占优先级和子优先级两组。多个中断同时提出中断申请时:先比较抢占优先级,抢占优先级高的中断先执行。如果抢占优先级相同,则比较子优先级。二者都相同时,比较中断编号。编号越小,优先级越高。
3、HAL库外部中断处理流程
中断跳转
跳转到该中断所对应的中断服务程序
执行中断服务程序
执行在stm32f4xx_it.c中对应的中断服务程序
外部中断通用处理函数<