51单片机制作的数字钟

51单片机制作的数字钟

ID:5552173

大小:39.50 KB

页数:6页

时间:2017-12-18

51单片机制作的数字钟_第1页
51单片机制作的数字钟_第2页
51单片机制作的数字钟_第3页
51单片机制作的数字钟_第4页
51单片机制作的数字钟_第5页
资源描述:

《51单片机制作的数字钟》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、/*程序作用:数控数字钟,键盘设置显示时间,由1602LCD液晶显示硬件电路:AT89C52,LCD1602,三个按键程序作者:辽宁工业大学电子LINBO时间:2012年7月28日地点:5#403*/#include#defineuint8unsignedchar#defineuint16unsignedint//位声明sbitRS=P1^0;//lcd控制端sbitRW=P1^1;sbitEN=P1^5;sbitBUSY=P0^7;sbitk1=P2^4;//按键控制端sbitk2=P2^5;sbitk3=P2^6;sbitko=P2^3;uint8codet[]="201

2、2-7-28sat";//初始显示uint8codet1[]="00:00:00";uint8j;uint16cout;charshi,fen,miao;voiddelay(uint8z)//延时函数{uint8x,y;for(x=z;x>0;x--)for(y=110;y>0;y--);}voidwait(void)//等待液晶繁忙函数{P0=0xFF;do{RS=0;RW=1;EN=0;EN=1;}while(BUSY==1);EN=0;}voidsendcom(uint8com)//LCD命令发送函数{wait();RS=0;RW=0;EN=0;P0=com;EN=1;EN=0;}voi

3、dsenddate(uint8date)//LCD数据发送函数{wait();RS=1;RW=0;EN=0;P0=date;EN=1;EN=0;}voidinit()//初始化函数,LCD,KEY,TIMER,ZHONGDUAN{uint8i;sendcom(0x38);sendcom(0x0C);sendcom(0x06);sendcom(0x01);sendcom(0x80);EN=0;for(i=0;i<15;i++){senddate(t[i]);delay(5);}sendcom(0x80+0x40);for(i=0;i<12;i++){senddate(t1[i]);delay(5

4、);}TMOD

5、=0x10;TMOD&=0xdf;TH1=0xFC;TL1=0x67;TR1=1;EA=1;ET1=1;}voidxiesfm(uint8add,uint8date)//位置指针以及数据发送{uint8shi,ge;shi=date/10;ge=date%10;sendcom(0x80+0x40+add);senddate(0x30+shi);senddate(ge+0x30);}voidshanmiao()//按键扫描{ko=0;if(k1==0){delay(5);if(k1==0){j++;while(!k1);if(j==1){TR1=0;sendcom(0x80+0x

6、40+10);sendcom(0x0f);}}if(j==2){sendcom(0x80+0x40+7);}if(j==3){sendcom(0x80+0x40+4);}if(j==4){j=0;sendcom(0x0c);TR1=1;}}if(j!=0){if(k2==0){delay(5);if(k2==0){while(!k2);if(j==1){miao++;if(miao==60){miao=0;}xiesfm(10,miao);sendcom(0x80+0x40+10);}if(j==2){fen++;if(fen==60){fen=0;}xiesfm(7,fen);sendcom

7、(0x80+0x40+7);}if(j==3){shi++;if(shi==24){shi=0;}xiesfm(4,shi);sendcom(0x80+0x40+4);}}}if(k3==0){delay(5);if(k3==0){while(k3==0);if(j==1){miao--;if(miao==-1){miao=59;}xiesfm(10,miao);sendcom(0x80+0x40+10);}if(j==2){fen--;if(fen==-1){fen=59;}xiesfm(7,fen);sendcom(0x80+0x40+7);}if(j==3){shi--;if(shi==

8、-1){shi=23;}xiesfm(4,shi);sendcom(0x80+0x40+4);}}}}}voidmain()//主程序函数{init();while(1){shanmiao();}}voidtimer_1()interrupt3//中断服务函数{TH1=0xFC;TL1=0x67;cout++;if(cout==1000){cout=0;miao++;if(miao==60){mi

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。