这里写自定义目录标题
利用定时器实现000-999跑表
void main()
{
num=0;
sec=0;//整型65535最蠢的一个错误
TMOD=0x01;
TH0=(65535-10000)/256;
TL0=(65535-10000)%256;
EA=1;
ET0=1;
while(1)
{
display(bai,shi,ge);
TransfromData(sec);
if(key1==0)
{
delay(10);
if(key1==0)//make sure
{
TR0=0;
while(!key1)
{
TR0=1;
display(bai,shi,ge);
}
}
}
if(pulse==0)
{
delay(10);
TR0=0;
}
else if(start==0)
{
delay(10);
TR0=1;
}
else if(end==0)
{
sec=0;
display(bai,shi,ge);
TR0=1;
}
}
}
void TransfromData(uint s)
{
bai=s/100;
shi=s%100/10;
ge=s%100%10;
}
void timer0() interrupt 1
{
TH0=(65535-10000)/256;
TL0=(65535-10000)%256;
sec++;
if(sec==999)
{
sec=0;
}
}
void display(uchar bai,uchar shi,uchar ge)
{
dula=1;
P0=table[bai];
dula=0;
wela=1;
P0=0xfe;
wela=0;
delay(1);
dula=1;
P0=table[shi];
dula=0;
wela=1;
P0=0xfd;
wela=0;
delay(1);
dula=1;
P0=table[ge];
dula=0;
wela=1;
P0=0xfb;
wela=0;
delay(1);
}
void delay(int z)
{
int x,y;
for(x=z;x>0;x–)
for(y=110;y>0;y–);//zms
}