//---------------------------------------------------#include <reg52.h>//---------------------------------------------------//重定义I/0引脚名称sbit led1=P1^0;sbit led2=P1^1;sbit led3=P1^2;sbit led4=P1^3;
sbit P13=P1^3;//---------------------------------------------------//全局变量及位标志定义bit FINT0;bit FINT1;bit FT0;bit FT1;bit FT2;
unsigned char T0_10ms;unsigned char T0_50ms;unsigned char T0_100ms;//---------------------------------------------------//固定函数声明void int_0(); //外部中断0void int_1(); //外部中断1void timer_0(); //定时器中断1void timer_1(); //定时器中断2void serial_1(); //串行中断1void serial_2(); //串行中断2//---------------------------------------------------//用户函数声明void initial(); //初始化
//---------------------------------------------------void main(){ initial();
while(1){
P13=0; //为了使按'取消'、'确定'键能够产生INT0及INT1中断 //led4=0; //上一句等价于此句 if(FINT0){ //中断0来到要做什么事情 FINT0=0; led1=0; //INT0中断时点亮 led2=0; led3=0; led3=0; //可以在此设一个断点 } if(FINT1){ //中断1来到要做什么事情 FINT1=0; led1=1; //INT1中断时熄灭 led2=1; led3=1; } if(FT0){ FT0=0; if(++T0_10ms>30){ T0_10ms=0; //定时多少做什么事,未初始化里定时器尚未设置 } } }}//-------------------------------------------------------------------void initial(){ EA=1; // CPU所有中断开(IE最高位MSB)
EX0=1; // INT0中断开 IT0=0; // INT0低电平触发(为1则为下降沿触发)
EX1=1; // INT1中断开 IT1=0; // INT1低电平触发(为1则为下降沿触发)
return;}//-------------------------------------------------------------------//INT0中断 由P3.2引脚产生void int_0() interrupt 0 using 0{ FINT0=1;}//-------------------------------------------------------------------//INT1中断 由P3.3引脚产生void int_1() interrupt 2 using 1{ FINT1=1;}//-------------------------------------------------------------------//定时器0中断void timer_0() interrupt 1 using 2{ FT0=1;}//-------------------------------------------------------------------//定时器1中断void timer_1() interrupt 3 using 3{ FT1=1;}//-------------------------------------------------------------------//串行中断1void serial_1() interrupt 4{
}//-------------------------------------------------------------------//定时器2中断void timer_2() interrupt 5{ FT2=1;}//-------------------------------------------------------------------