28335支持的全部中断系统如下:
1、CPU级别中断
由上图可知,对CPU内核而言,一共可以接受14个可屏蔽中断和1个不可屏蔽中断(NMI)。 对于可屏蔽中断而言,int1~int12用于了外设中断扩展(PIE)。 int13,int14一般用于定时器1和定时器2的中断。 对每一个中断(int1~int14,nmi),cpu都为其设定了硬件编码的固定中断向量存储位置,cpu接收到中断后,会访问中断向量存储位置,取得中断向量后,跳转到中断向量所指向的中断处理程序。 中断有自己的优先级,一般而言,reset中断的优先级最高(上图中没有),然后是NMI,然后依次是INT1到INT14 CPU中的和中断有关的寄存器有(1)中断标志寄存器(IFR)(2)中断使能寄存器(IER),如果哪个中断信号到来,就在自己对应的IFR位置1,而IER则决定CPU是否会忽略该中断信号。 2、PIE级别中断 PIE可以支持96个中断,如图所示:
对于PIE级别的中断,类似的同组中标号小的中断优先级高。
PIEIFR和PIEIER的作用和CPU级别中断系统类似。 对于每一个PIE组,有对应PIEACK中的1位来表示cpu是否可以相应该组中断,只有对应值为1时,该组中段才有效。 类似的,在每个外设中,都有自己对应的IE和IF寄存器,和上述功能类似。
|