GPIO口的中断触发电平 我设置为下降沿触发, 而且我用示波器量测过波形,波形中杂波在我加上电容之后是很小的,最高的电平也就才1.1V左右。
目前我没有跑系统的,就是裸机在测试。 结果就发现了这个问题,
现在还发现一个问题就是, 在第一次进入 中断服务程序的时候
执行完 clearpengding()这个函数之后, INTPND = 0X0020 ,SRCPND = 0X2420,
然后在第二次进入之后, ClearPending() 之后 INTPND = 0X0000,SRCPND = 0X2400,
我想问一下,为什么在第一次进入 clearpending之后, INTPND 和SRCPND的值不会被清掉呢?
__inline void ClearPending(int bit)
{
register i;
rSRCPND = rSRCPND & (~bit)|bit;//SRCPND 源未決寄存器,通過對相應的中斷源寫1來清除SRCPND寄存器中的相應中斷請求
rINTPND = rINTPND & (~bit)|bit;//INTPND 中斷未決寄存器,通過對相應位寫1來清除INTPND寄存器中的相應中斷請求
i = rINTPND;
}
还请版主帮忙看看,谢谢