#include<reg52.h>
sbit duan=P2^2;
sbit wei=P2^3;
unsigned char code d[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f}; //duan
unsigned char code w[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};
char tt[8];
void delay(unsigned int a)//晶振11.996345 100个125约1毫秒
{
int i,j;
for(j=0;j<a;j++)
for(i=0;i<125;i++);
}
void main()
{
int sz1,sz2,mz1,i,mz2,fz1,fz2,num,Num,flag;
sz1=2; //改这些数可以使初始值改变sz:时钟 fz:分钟 mz:秒钟
sz2=0;
fz1=2;
fz2=0;
Num=1;
flag=Num;
while(1)
{
for(i=0;i<8;i++)
{
num++;
if(num%800==0) //想让秒钟转快一点,把这数字变小!
Num++;
if(num>=50000)
num=0;
if(Num!=flag)
{ flag=Num;
if(Num>59)
Num=0;
mz1=Num/10;
mz2=Num%10;
if(mz1==0&&mz2==0)
fz2++;
if(fz2>9)
{
fz2=0;fz1++;
}
if(fz1>5)
{
fz1=0;
sz2++;
}
// if(fz1==0&&fz2==0&&mz1==0&&mz2==0)
// sz2++;
if(sz2>9)
{
sz1++;
sz2=0;
}
if(sz1==2&&sz2==4)
sz1=sz2=0;
}
tt[0]=d[sz1];
tt[1]=d[sz2];
tt[2]=0x40;
tt[3]=d[fz1];
tt[4]=d[fz2];
tt[5]=0x40;
tt[6]=d[mz1];
tt[7]=d[mz2];
P0=w[i];
wei=1;
wei=0;
P0=tt[i];
duan=1 ;
duan=0;
delay(2);
}
}
}
sbit duan=P2^2;
sbit wei=P2^3;
unsigned char code d[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f}; //duan
unsigned char code w[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};
char tt[8];
void delay(unsigned int a)//晶振11.996345 100个125约1毫秒
{
int i,j;
for(j=0;j<a;j++)
for(i=0;i<125;i++);
}
void main()
{
int sz1,sz2,mz1,i,mz2,fz1,fz2,num,Num,flag;
sz1=2; //改这些数可以使初始值改变sz:时钟 fz:分钟 mz:秒钟
sz2=0;
fz1=2;
fz2=0;
Num=1;
flag=Num;
while(1)
{
for(i=0;i<8;i++)
{
num++;
if(num%800==0) //想让秒钟转快一点,把这数字变小!
Num++;
if(num>=50000)
num=0;
if(Num!=flag)
{ flag=Num;
if(Num>59)
Num=0;
mz1=Num/10;
mz2=Num%10;
if(mz1==0&&mz2==0)
fz2++;
if(fz2>9)
{
fz2=0;fz1++;
}
if(fz1>5)
{
fz1=0;
sz2++;
}
// if(fz1==0&&fz2==0&&mz1==0&&mz2==0)
// sz2++;
if(sz2>9)
{
sz1++;
sz2=0;
}
if(sz1==2&&sz2==4)
sz1=sz2=0;
}
tt[0]=d[sz1];
tt[1]=d[sz2];
tt[2]=0x40;
tt[3]=d[fz1];
tt[4]=d[fz2];
tt[5]=0x40;
tt[6]=d[mz1];
tt[7]=d[mz2];
P0=w[i];
wei=1;
wei=0;
P0=tt[i];
duan=1 ;
duan=0;
delay(2);
}
}
}