单片机中 IT0=1是负跳变触发 ,IT0=0 据说是低电压触发,问题是如果一个低电平的脉冲宽度较大,那么 算触

2024-12-13 01:52:31
推荐回答(1个)
回答1:

如果你的IT0 = 0,即低电平触发,那么,究竟触发多少次,要看你的程序,如果你的外中断0的中断服务程序在最后一句没有加上while(P3_2 == 0);这句话,那么,具体触发了多少次,不好说,要看你的脉冲长度和中断服务程序的长度。
如果你加上while(P3_2 == 0);那就触发了一次。

void ISR_Exint0(void) interrupt 0
{
//......中断处理函数
while(P3_2 == 0); //---如果没有这句话,且外中断又是低电平触发,那么,刚跳出中断,就又会进入中断。所以,一般情况,我都用边沿触发。

}