电子时钟加日历显示文档格式.docx
- 文档编号:15760467
- 上传时间:2022-11-15
- 格式:DOCX
- 页数:21
- 大小:340.57KB
电子时钟加日历显示文档格式.docx
《电子时钟加日历显示文档格式.docx》由会员分享,可在线阅读,更多相关《电子时钟加日历显示文档格式.docx(21页珍藏版)》请在冰豆网上搜索。
3.3键盘电路
键盘是是与数码管的位选相连,通过二极管使它们具有单向性,同时将开头最终通过三极管接单片机的P3.4,只要有按键按下,P3.4就一定会发生变化,通过这个变化在去扫描位就可以得出是哪个按键了。
附电路图:
四、系统程序设计
系统和程序主要包括:
显示程序,键盘扫描程序,自动加秒,分,时,日,月,年,
附程序:
/***************************************************************************
从左至右键盘依次为key1——key5;
key1:
预制键
key2:
加1
key3:
减1
key4:
确认
key5:
时间和年月日相互切换
段码备注:
位码备注:
(从右往左)
a...........P0.5一位...........P1.2
b...........P0.7二位..........P1.1
c...........p0.2三位...........P1.4
d...........p0.1四位...........P1.3
e...........p0.4五位..........P1.6
f...........p0.3六位...........P1.5
g...........p0.8七位..........P1.8
按键........P3.4八位...........P1.7
******************************************************************************/
#include"
c8051f310.h"
#defineucharunsignedchar
#defineuncharunsignedchar
ucharcodeduan[10]={0xa0,0xbd,0x26,0x2c,0x39,0x68,0x60,0xad,0x20,0x28};
//段码表0123456789
ucharcodewei[8]={0x02,0x01,0x08,0x04,0x20,0x10,0x80,0x40};
//位码表
ucharcodeweek1[7]={0xbd,0x26,0x2c,0x39,0x68,0x60,0xad};
//星期一到星期日
uchardataa,sec,min,hour,ymd,year,year1=9,year2=20,month=8,day=22,week=6;
//初始值是7-00:
00:
00,日期是2009-08-22;
ucharn,cnt,sw1=0,sw2,sw3,cnt1,sw5;
ucharkey1,key2,key3,key4=0,key5=0;
sbitP3_4=P3^4;
voidscan_key(void);
voiddelay(ms);
/****************************开中断子函数***********************************************************************/
voidinit(void)
{
IE=0x8A;
TCON=0x50;
TMOD=0x11;
IP=0x0A;
TH0=(65536-1270)/256;
TL0=(65536-1270)%256;
TH1=(65536-500)/256;
TL1=(65536-500)%256;
}
voidtime0(void)interrupt1
dataa++;
if(sw1!
=0&
&
key4==0)//第一个按键按下,且第四个没有按下
if(++cnt1==40)
cnt=0;
if(sw5==0&
sw1==1)
for(n=0;
n<
20;
n++)
P1=0x00;
P1=P1&
0xf3;
//闪烁程序
P0=duan[sec%10];
P1=wei[0];
delay(8);
P0=duan[sec/10];
P1=wei[1];
P0=duan[hour%10];
P1=wei[4];
P0=duan[hour/10];
P1=wei[5];
P1=0x00;
P0=0x7f;
P1=wei[6];
P0=week1[week];
P1=wei[7];
}
scan_key();
sw1==2)
0xcf;
P0=duan[min%10];
P1=wei[2];
P0=duan[min/10];
P1=wei[3];
sw1==3)
0x7f;
P0=duan[hour%10];
P1=wei[4];
if(sw5==1&
sw1==9)
0x3f;
P0=duan[month%10];
P0=duan[month/10];
P0=duan[year1%10];
P0=duan[year1/10];
P0=duan[year2%10];
P0=duan[year2/10];
sw1==8)
P0=duan[day%10];
P0=duan[day/10];
sw1==7)
0xc3;
sw1==6)
P0=
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 电子 时钟 日历 显示