#include<reg51.h>
#define uint unsigned int
#define uchar unsigned char
uchar temp1,temp2,temp3,aa;
uchar code tablewe[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};
uchar code tabledu[]={
0xc0,0xf9,0xa4,0xb0,
0x99,0x92,0x82,0xf8,
0x80,0x90,0xbf};
sbit p37=P3^7;
sbit p36=P3^6;
sbit p35=P3^5;
sbit p34=P3^4;
sbit p33=P3^3;
sbit p32=P3^2;
sbit p31=P3^1;
sbit p30=P3^0;
void delay(uint);
void main()
{
temp1=0;
temp2=0;
temp3=0;
TMOD=0x01;
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
EA=1;
ET0=1;
TR0=1;
while(1)
{
if(aa==20)
{ aa=0;
temp1++;
if(temp1==60)
{ temp1=0;
temp2++;
if(temp2==60)
{ temp2=0;
temp3++;
if(temp3==24)
{temp1=0;temp2=0;temp3=0;}
}
}
}
p37=0;
P0=tabledu[temp1%10];
delay(1);
p37=1;
p36=0;
P0=tabledu[temp1/10];
delay(1);
p36=1;
p35=0;
P0=tabledu[10];
delay(1);
p35=1;
p34=0;
P0=tabledu[temp2%10];
delay(1);
p34=1;
p33=0;
P0=tabledu[temp2/10];
delay(1);
p33=1;
p32=0;
P0=tabledu[10];
delay(1);
p32=1;
p31=0;
P0=tabledu[temp3%10];
delay(1);
p31=1;
p30=0;
P0=tabledu[temp3/10];
delay(1);
p30=1;
}
}
void delay(uint z)
{
uint x,y;
for(x=115;x>0;x--)
for(y=z;y>0;y--);
}
void timer0() interrupt 1
{
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
aa++;
}
现在还没有完全学会设置时间!先传上去,慢慢学着!
欢迎光临 (http://www.51hei.com/bbs/) | Powered by Discuz! X3.1 |