要用AT89S51单片机的定时器实现电子时钟或闹钟,用4位数码管显示,用点的闪烁表示秒,做好有电路原理图等

三个按键啊~带流水灯。邮箱893934900@qq.com急啊

第1个回答  2011-07-24
一般的7段数码管没有点 。你说这个数码管的PROTUES代码 我帮你试试。
第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
相似回答