#include<reg52.h>
#define uint unsigned int
#define uchar unsigned char
void delayms(uint x);
uchar num,temp1=0,temp2=0,temp3=0,temp4=0,temp5=0,temp6=0;
uchar code table[]={
0x3f,0x06,0x5b,0x4f,
0x66,0x6d,0x7d,0x07,
0x7f,0x6f,0x77,0x7c,
0x39,0x5e,0x79,0x71,0x40};
uchar code tablewe[]={
0xfe,0xfd,0xfb,0xf7,
0xef,0xdf,0xbf,0x7f};
void main()
{
TMOD=0x01;
TH0=(65536-45872)/256;
TL0=(65536-45872)%256;
EA=1;
ET0=1;
TR0=1;
while (1)
{
if (num==20)
{
num=0;
temp1++;
}
if (temp1==10)
{
temp1=0;
temp2++;
if (temp2==6)
{
temp2=0;
temp3++;
if (temp3==10)
{
temp3=0;
temp4++;
if (temp4==6)
{
temp4=0;
temp5++;
if (temp5==10)
{
temp5=0;
temp6++;
}
}
}
}
}
P2=tablewe[0];
P0=table[temp1];
delayms(1);
P2=tablewe[1];
P0=table[temp2];
delayms(1);
P2=tablewe[2];
P0=table[16];
delayms(1);
P2=tablewe[3];
P0=table[temp3];
delayms(1);
P2=tablewe[4];
P0=table[temp4];
delayms(1);
P2=tablewe[5];
P0=table[16];
delayms(1);
P2=tablewe[6];
P0=table[temp5];
delayms(1);
P2=tablewe[7];
P0=table[temp6];
delayms(1);
}
}
void TO_time()interrupt 1
{
TH0=(65536-45872)/256;
TL0=(65536-45872)%256;
num++;
}
void delayms(uint x)
{
uint i,j;
for (i=x;i>0;i--)
for (j=110;j>0;j--);
}
|