中断
1 概述
ARM® Cortex®-M0+ 内核的嵌套向量中断控制器 (NVIC),用于管理中断和异常。NVIC 和处理器内核紧密相连,可
以实现低延迟的异常和中断处理。
处理器支持最多 32 个中断请求 (IRQ) 输入,支持多个内部异常。
本章节只介绍了处理器的 32 个外部中断请求(IRQ0 ~ IRQ31),处理器内部异常的具体情况请参考“ARM®
Cortex®-M0+Technical Reference Manual”与“ARM® v6-M Architecture Reference Manual”。
2 主要特性
• 16 个内部异常
• 32 个可屏蔽外部中断
• 4 个可编程的优先级
• 低延时的异常和中断处理
• 支持中断嵌套
• 中断向量表重映射
3 中断优先级
外部中断可设置 4 级优先级,最高优先级为“0”,最低优先级为“3”,默认值为“0”。
当处理器正在执行一个中断处理程序时,如果出现一个更高优先级的中断,那么这个中断就被抢占。如果出现的
中断的优先级和正在处理的中断的优先级相同或更低,这个中断就不会被抢占,但是新中断的状态就变为挂起。
如果多个挂起的中断具有相同的优先级,中断编号越小的挂起中断优先处理。例如,如果 IRQ[0]和 IRQ[1]均挂起时,
并且两者的优先级相同,那么先处理 IRQ[0]。
|