51单片机数码管显示时钟程序Word格式.docx
- 文档编号:21835755
- 上传时间:2023-02-01
- 格式:DOCX
- 页数:10
- 大小:37.40KB
51单片机数码管显示时钟程序Word格式.docx
《51单片机数码管显示时钟程序Word格式.docx》由会员分享,可在线阅读,更多相关《51单片机数码管显示时钟程序Word格式.docx(10页珍藏版)》请在冰豆网上搜索。
0x3f,0x06,0x5b,0x4f,
0x66,0x6d,0x7d,0x07,
0x7f,0x6f,0x77,0x7c,
0x39,0x5e,0x79,0x71
};
ucharnum1,num2,s,s1,m,m1,f,f1,num,numf,nums,dingshi;
ucharns,ns1,nf,nf1,numns,numnf;
voiddelay(uintz);
voidkeyscan();
display(m,m1,f,f1,s,s1);
alram();
}
else
{
keyscan1();
display0(nf,nf1,ns,ns1);
voidkeyscan()
{
if(key1==0)
{
delay(10);
nums++;
if(nums==24)
nums=0;
while(!
key1);
if(key2==0)
if(key2==0)
numf++;
if(numf==60)
numf=0;
key2);
if(key3==0)
dingshi=~dingshi;
key3)
/*if(key4==0)
if(key4==0)
flag=1;
key4);
}*/
}
voidkeyscan1()
if(key1==0)
numns++;
if(numns==24)
numns=0;
while(!
//display(nf,nf1,ns,ns1);
numnf++;
if(numnf==60)
numnf=0;
//display(nf,nf1,ns,ns1);
dingshi=0;
key3);
//display(m,m1,f,f1,s,s1);
voidalram()
if((numnf==numf)&
&
(numns==nums))
beep=0;
if(((numnf+1==numf)&
(numns==nums))&
(dingshi==0))//一分钟报时提示
beep=1;
}
voiddisplay0(ucharnf,ucharnf1,ucharns,ucharns1)//闹钟显示函数
nf=numnf%10;
nf1=numnf/10;
ns=numns%10;
ns1=numns/10;
/*wela=1;
P0=0xc0;
//送位选数据
wela=0;
P0=0xff;
*/
dula=1;
P0=table[ns1];
dula=0;
wela=1;
P0=0xfe;
delay
(1);
P0=table[ns]|0x80;
P0=0xfd;
P0=table[nf1];
P0=0xfb;
P0=table[nf];
P0=0xf7;
voiddisplay(ucharm,ucharm1,ucharf,ucharf1,uchars,uchars1)//时间显示
P0=table[m1];
//秒位第1位
P0=0xef;
P0=table[m];
//秒位第2位
P0=0xdf;
P0=table[s1];
//时位第一位
P0=table[s]|0x80;
P0=table[f1];
//分位第一位
P0=table[f]|0x80;
}
voidT0_timer()interrupt1
TH0=(65536-46080)/256;
TL0=(65536-46080)%256;
num2++;
if(num2==20)
num++;
num2=0;
m=num%10;
m1=num/10;
f=numf%10;
f1=numf/10;
s=nums%10;
s1=nums/10;
if(num==59)
num=0;
numf++;
if(numf==59)
{
numf=0;
nums++;
}
if(nums==24)
nums=0;
voiddelay(uintz)
uintx,y;
for(x=110;
x>
0;
x--)
for(y=z;
y>
y--);
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 51 单片机 数码管 显示 时钟 程序