摘要: 按怎样的顺序清理中断的PND位才安全? 下面是一款ARM芯片的一个中断控制器的寄存器图,涉及中断PND位的寄存器有“EINTPEND、SRCPND、INTPND”,另外外设控制器或外设芯片内也有PND相关的寄存器(这里称为:DevPND),既然有多级PND位,所以清理PND位的时候有个先后次序,而且这个顺序还不能搞错,搞错就会造成系统不稳定。 在程序里面,当中断服务程序处理完外设中断后,就需要清零PND,以便接收设备下一次中断,如下代码所示: //// 清除中断标志 rEINTPEND = (1<<4); // 清除第二级的中断标识 rSRCPND = (1<<4); 阅读全文
posted @ 2012-05-14 17:44 yfm1202 阅读(969) 评论(0) 推荐(0) 编辑