1、中断处理过程
SUBSRCPND和SRCPND寄存器表明有哪些中断被触发了,正在等待处理(Pending);SUBMASK(INTSUBMSK寄存器)和MASK(INTMSK寄存器)用于屏蔽某些中断。
1) Request sources(without sub-register)中的中断源被触发后,SRCPND寄存器中相应位被置1,如果此中断没有被INTMSK寄存器屏蔽或者快速中断的话,它将被进一步处理。
2) Request sources(with sub-register)中的中断源被触发后,SUBSRCPND寄存器中相应位被置1,如果此中断没有被INTSUBMSK寄存器屏蔽的话,它在SRCPND中相应位也会被置1。
3) 如果被触发的中断中有快速中断的话,CPU会进入快速中断模式进行处理。
4) 对于一般的中断,可能同时有几个中断被触发,未被INTMSK寄存器屏蔽的中断经过比较后,选出优先级最高的中断,此中断在INTPND寄存器中的相应位被置1,然后CPU进入中断模式进行处理。中断服务程序可以通过读取INTPND寄存器或者INTOFFSET寄存器来确定中断源。
Priority表示中断的优先级判决,通过PRIORITY寄存器进行设置。 |