DSP2812共有3级中断:外设级、PIE级、CPU级。对于某一个具体的外设中断请求,任意一级的不许可,CPU最终都不会执行该外设中断。
外设级中断总结:(1)外设中断的屏蔽,需要将与该中断相关的外设寄存器的中断使能位置1:EvaRegs.EVAIMRA.bit.T1PINT=1;//外设中断未屏蔽 (2)外设中断标志位的清除:EvaRegs.EVAIFRA.bit.T1PINT=1;
PIE级中断:(1)PIE中断的使能,就是将其相应组的使能寄存器PIEIERx的相应位进行置位:PieCtrlRegs.PIEIER2.all=M_INT4;//M_INT4=0x0008 (2)PIE应答寄存器(PIEACK)相关位的清除:PieCtrl.PIEACK.bit.ACK2=1,以使得CPU能够响应同组的其它中断。
CPU级中断: 当外设的中断请求发送到CPU时,CPU级中与INTx相关的中断标志位就会被置位,若IER中的相关位被使能,并且INTM的值为0,则中断就会被CPU使能。