华芯微特全系列 MCU 的中断优先级均采用 ARM Cortex-M 内核的 NVIC 外设进行管理,中断优先级设置函数 NVIC_SetPriority(IRQn_Type IRQn, u int32_t priority)。 中断优先级分为抢占优先级与响应(子)优先级,抢占优先级的级别高于响应优先级,而数值越小所代表的优先级就越高。高抢占优先级的中断可以打断正在进行的低抢占优先级的中断,形成中断嵌套,而低抢占优先级的中断不能打断高抢占优先级的中断的执行。如果两个中断的抢占优先级和响应优先级都是一样,则看哪个中断先发生就先执行,如果有两个中断优先级一样且同时触发, 则按中断号来进行处理。中断号参照下图中 SWMxxx.h 文件中的中断号排列。
|