#include <REGX51.H>
#define uchar unsigned char
#define uint unsigned int
uchar code led[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};
//uchar code led[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
void delay();
uint msec,sec,fen,shi;
void int_0() interrupt 1
{
TH0=6;
TL0=6;
msec++;
if(msec==4000)
{
msec=0;
sec++;
if(sec==60)
{
sec=0;
fen++;
if(fen==60){
fen=0;
shi++;
if(shi==24)
{
shi=0;
}
}
}
}
}
void main()
{
TMOD=0x02;
TH0=6;
TL0=6;
EA=1;
ET0=1;
TR0=1;
while(1)
{
P0=0x20;
P1=led[shi/10];
delay();
P0=0x10;
P1=led[shi%10];
delay();
P0=0x08;
P1=led[fen/10];
delay();
P0=0x04;
P1=led[fen%10];
delay();
P0=0x01;
P1=led[sec%10];
delay();
P0=0x02;
P1=led[sec/10];
delay();
}
}
void delay()
{ uchar m;
for(m=0;m<230;m++);
}