单片机中断嵌套数显控制程序如下,希望帮忙写个注释,越详细越好,因为这个学的我知其然但不知其所以然
#include<reg51.h>
#define uchar unsigned char
#define unit unsigned int
uchar code tab[10]= {0x3f,0x06,0x5b,0x4f,0x66,//字符0~4
0x6d,0x7d,0x07,0x7f,0x6f};//字符5~9
unit c1=0,c2=0;
bit q=1;
sbit P3_0=P3^0;
void doudelay(unit i)
{unit j;
while(i--);
for(j=0;j<120;j++);}
void display( )
{
P0=0xfe;
P1=tab[c1/10];
doudelay(12000);
P0=0xff;
doudelay(100);
P0=0xfd;
P1=tab[c1%10];
doudelay(12000);
P0=0xff;
doudelay(100);
if(c1==100)c1=0;
}
void main(){
P1=0x00;
IE=0X85;
PX1=1;PX0=0;
while(1){
}
}
void int0() interrupt 0{
q=1;
for(c1=0;c1<100;c1++){
display();
}
}
void int1() interrupt 2{
for(c2=0;c2<25;c2++){
q=!q;
P3_0=q;
display();
}
if(c2==25)c2=0;
}
|