基于51单片机的4位数码管电子钟

上传人:油条 文档编号:114827339 上传时间:2019-11-12 格式:DOCX 页数:5 大小:14.83KB
返回 下载 相关 举报
基于51单片机的4位数码管电子钟_第1页
第1页 / 共5页
基于51单片机的4位数码管电子钟_第2页
第2页 / 共5页
基于51单片机的4位数码管电子钟_第3页
第3页 / 共5页
基于51单片机的4位数码管电子钟_第4页
第4页 / 共5页
基于51单片机的4位数码管电子钟_第5页
第5页 / 共5页
亲,该文档总共5页,全部预览完了,如果喜欢就下载吧!
资源描述

《基于51单片机的4位数码管电子钟》由会员分享,可在线阅读,更多相关《基于51单片机的4位数码管电子钟(5页珍藏版)》请在金锄头文库上搜索。

1、附:源程序/*标题:定时器中断 24小时时钟程序效果:数码管显示24小时制时钟(具有调时功能)说明:使用12M晶振,key1=P37; key2=P36; key3=P35; key4=P34;数码管位选P1.0P1.3,段选P0*/#include#define uchar unsigned char;#define uint unsigned int;uchar position; uchar tt; uchar second; uchar minute;uchar hour; uchar code table=0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8

2、,0x80,0x90;/0-9sbit smg_q = P10; /数码管千位引脚sbit smg_b = P11;sbit smg_s = P12;sbit smg_g = P13;sbit key1=P37; /按键定义sbit key2=P36;sbit key3=P35;sbit key4=P34;void keyscan(); /函数声明void display(unsigned char hour,unsigned char minute);void delay(unsigned int timer); void init();/*主函数*/void main()init();wh

3、ile(1)if(tt=20)tt=0;second+;if(second=60)second=0;minute+;if(minute=60)minute=0;hour+;if(hour=24)hour=0;keyscan();display(hour,minute);delay(1);/*调时*/void keyscan()if(key1=0) /小时加1TR0=0;hour+;if(hour=24)hour=0;delay(200);TR0=1;if(key2=0)/ 小时减TR0=0;hour-;if(hour0)hour=23;delay(200);TR0=1;if(key3=0) /

4、分钟加TR0=0;minute+;if(minute=60)minute=0;delay(200);TR0=1;if(key4=0) /分钟减TR0=0;minute-;if(minute=10)P0&=0x7f;/小数点以半秒的时间闪烁break;case 2:smg_b=1;smg_s=0;P0=tableminute/10;break;case 3:smg_s=1;smg_g=0;P0=tableminute%10;break;position+;if(position3)position=0;/* 延时*/void delay(unsigned int time)unsigned int x,y;for(x=time;x0;x-)for(y=110;y0;y-);

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 中学教育 > 其它中学文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号