Cortex M3 - NVIC(中断向量控制器)

发布时间 2024-01-07 12:41:20作者: Icer_Newer

NVIC-概述

  • nested vector interrupt control - 内嵌向量中断控制器
  • 传统ARM中断控制在Core的外部,软件接收到中断之后,需要查中断的编号,然后启动相应的中断处理程序,在Core内部设置NVIC,当中断进入之后,通过硬件根据中断的级别直接找到中断处理程序,提高效率
  • 紧急的事务可以使用不可屏蔽中断

中断的Enable与Clear

  • 每个中断对应Enable和Clear对应两个寄存器
  • 分开的优点:进行多线程操作的时候,就不需要进行线程之间的通信
  • Enable和Clear按照写1清0的方式完成使能和清除
  • 异常号16+n - 前面的16 bit,是给硬件的异常使用的
  • 00-1C - 1C对应十进制是28, (28/4 + 1)*32 = 256bit

中断优先级

中断Pending与Depending