|
#include <reg52.h>
//#include <instrins.h>
#define uchar unsigned char
#define uint unsigned int
#define z 5
uchar code table[] = {0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
uchar bai,shi,ge,num1,num2/*,temp*/;
void delays(uchar XS);
void display(uchar bai,uchar shi,uchar ge );
void init();
//void waterLight();
void main()
{
init();
while(1)
{
display(bai,shi,ge);
}
}
void init()
{
TMOD = 0x01;
TH0 = (65536-50000)/256;
TL0 = (65536-50000)%256;
EA = 1;
ET0 = 1;
TR0 = 1;
}
void time0() interrupt 1
{
TH0 = (65536-50000)/256;
TL0 = (65536-50000)%256;
num1++;
if(num1 == 20)
{
num1 = 0;
num2++;
ge = num2 % 10;
shi = num2 / 10 % 10;
bai = num2 / 100;
if(num2 == 999)
num2 = 0;
}
}
void display(uchar bai,uchar shi,uchar ge)
{
P1 = 0xf2;
P0 = table[ge];
delays(z);
//P0 = 0X00;
P1 = 0xf4;
P0 = table[shi];
delays(z);
//P0 = 0x00;
P1 = 0xf8;
P0 = table[bai];
delays(z);
//P0 = 0x00;
}
void delays(uchar XS)
{
uchar i,j;
for(i = 0;i < XS;i++)
for(j = 0; j < 110; j++);
}
/*(void waterLight()
{
temp = 0xfe;
P2 = temp;
while(1)
{
temp = _crol_(temp,1);
P2 = temp;
delays(500);
}
} */
|
|