第2个回答 2011-07-24
#include<reg52.h>
sbit P10=P1^0; //第0位数码管
sbit P11=P1^1;
sbit P12=P1^2;
sbit P13=P1^3;
#define THCO 0xee
#define THLO 0x00
unsigned char miao=0,fen=0,shi=0;
unsigned char code duan[]=;
main(void)
{
TMOD=0x11;
TH0=THCO;
TL0=THLO;
EA=1;
ET0=1;
TR0=1;
while(1);
}
void timw0() interrupt 1
{
static unsigned char c=0,k=0;
TH0=THCO;
TL0=THLO;
P1|=0xff;
c++;
if(c>200) {
miao++;
if(miao>=60)
if(fen>=60)
c=0;
}
if(k>3)
k++;
switch(k-1)
{
case(0):P10=0;P0=duan[shi/10];break;
case(1):P11=0;P0=duan[shi%10];break;
case(2):P12=0;P0=duan[fen/10];break;
case(3):P13=0;P0=duan[fen%10];break;
}
}
这是时钟程序,可以运行,无小数点,显示时分,
小数点断码是0x80,其余的只有靠你自己了。
有问题的话,qq :1499648096