【51单片机2个外部中断控制流水方向与引脚电平】2022-5-4
缘由利用at89c51引用外部中断INT0,INT1用按键S1,S2 已实现正反向流,不能实现双闪-编程语言-CSDN问答
#include "REG52.h"
bit k0=0,k1=0;
void main()
{unsigned char jz=1;unsigned int Ys=47474;EA=1; //全局中断开关IT1 = 1;//下降沿触发EX1 = 1;//开外部中断IT0 = 1;//下降沿触发EX0 = 1;//开外部中断while(1){P1=k1|jz;while(--Ys);Ys=47474;if(k0){jz=jz>>1;if(jz==0)jz=128;}else{jz=jz<<1;if(jz==0)jz=1;}}
}
void WaiBuZhongDuan1() interrupt 2//外部中断0=0,1=2,引脚P3.3,INT1
{k0=!k0;
}
void WaiBuZhongDuan0() interrupt 0//外部中断0=0,1=2,引脚P3.2,INT0
{k1=~k1;
}