
void int0(void) interrupt 0
{
}
void main(void)
{
IT0=1
EX0=1
EA=1
while(1)
}
void External_Interrupt_0() interrupt 0{
Count_A = ~ Count_A
LED1 = ~ LED1
}
你用外部中断0,是否是想按住按键时就停在哪里,是就这样改一下!void External_Interrupt_0() interrupt 0
{
Count_A = ~ Count_A
LED1 = ~ LED1 while(!P32)
}
假如P32按下时下降沿或低电平触发,进入外部中断,执行完2条指令取反后,一直等待按键松开。
//sbit zd=P3^2//外部中断口//unsigned char avoid main(void)//主函数{TCON=0x01EX0=1//外部中断允许EA=1//开总中断while(1){//其他程序}}void int0(void) interrupt 0 //外部中断0 中断子程序{//这里面可以写中断子程序/*a++if(a==2) a=0while(!zd)if(a) TR0=1//开关计时器else TR0=0*/}由于对你的要求“按下INTO接的按键,使单片机执行间隔四灯轮流闪烁的中断子程序”不够理解,只能给你这样一个程序框架了进入中断要执行中断子程序,不同的中断源要进入不同的中断子程序。对于51的C编程,可以用中断标号,如‘interrupt 0’来使中断进入不同的中断。中断标号与它们的中断优先级一致,即外部中断0 interrupt 0定时器中断0 interrupt 1外部中断1 interrupt 2定时器中断1 interrupt3欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)