| 
 
| 在看2440--datasheet的中断的时候注意到、必须在清除INTPND之前必须先将SRCPND清除掉, 
 因为是SRCPND经过仲裁之后导致INTPND的相应位置1.那时并没注意到SUBSRCPND。
 
 今天消耗了一天了解到、SUBSRCPND导致SRCPND中的相应位置1,
 
 所以在清除SRCPND之前必须先将SUBSRCPND清除掉,如果用到子中断的话。
 
 
 
 即、中断标志的清除顺序 : SUBSRCPND-->SRCPND-->INTPND。
 
 否则中断源倒是清除了、但是中断标志INTPND并没有被清除,就会被中断锁死。
 
 
 
 比如使用ADC中断时、清除顺序 :
 
 rSUBSRCPND = BIT_SUB_ADC_S;
 
 rSRCPND = BIT_ADC;
 
 rINTPND = rINTPND;
 
 
 
 在AXD中看到异常向量表中的内容正确(特别注意IRQ)、
 
 又看到IRQ中断向量表中的内容正确、
 
 最后看到ADC中断向量空间中的地址也是中断处理函数的入口地址,
 
 当然进中断就没问题啦。
 
 却不料是出不了中断。
 | 
 |