




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
数字钟的设计1.设计目的学习AT89C51内部定时/计数器的原理及应用。了解使用单片机处理复杂逻辑的方法。掌握多位数码管动态显示的方法。2.设计任务用AT89C51单片机的定时/计数器T0产生一秒的定时时间,作为秒计数时间,当一秒产生时,秒计数加1。开机时显示00-00-00的时间,开始计时:P1.0控制“秒“的调整,每按一次加1秒;P1.1控制“分“的调整,每按一次加1分;P1.2控制”时“的调整,没按一次加1小时。计时满23-59-59时,返回00-00-00重新计时。P1.3用做复位键,在计时过程中如果按下复位键,则返回00-00-00重新计时。基本要求用AT89C51单片机的定时/计数器T0产生一秒的定时时间,作为秒计数时间。当一秒产生时,秒计数加1。开机时,显示00-00-00,并开始连续计时。计时满23-59-59时,返回00-00-00重新开始计时。高级要求在以上设计基础上,在单片机的P1.0-P1.3口分别接入4个按键:P1.0控制“秒”的调整,每按一次加1秒。P1.1控制“分”的调整,每按一次加1分。P1.2控制“时”的调整,每按一次加1时。P1.3用作复位键,在计时过程中如果按下复位键,则返回00-00-00重新计数。3.设计原理图4.数字钟程序流程图开始开始显示初始化,设置定时器,定时5毫秒显示初始化,设置定时器,定时5毫秒根据计数值显示时间根据计数值显示时间否否时键按下?分键按下?秒键按下?否否时键按下?分键按下?秒键按下?是是是是是是秒计数加1秒计数加1否60秒?否60秒?是是分计数加1分计数加1否60分?否60分?是是时加1时加1否24小时?否24小时?是是所有计数值清0所有计数值清0附录(程序)时钟程序:#include<reg51.h>#defineucharunsignedchar#defineuintunsignedintucharcodes7_table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x40};uchardisplay[]={0,0,10,0,0,10,0,0};sbitkey1=P1^0;sbitkey2=P1^1;sbitkey3=P1^2;sbitkey4=P1^3;uinthour;uintmin;uintsec;ucharn,k;voiddelay(){uchari,j; for(i=2;i>0;i--) for(j=110;j>0;j--); }voiddelay1(){ucharq,w;for(q=250;q>0;q--) for(w=250;w>0;w--); }voidkey(){if(key1==0){delay1();if(key1==0) sec++;P0=0; if(sec==60) sec=0;}if(key2==0){delay1();if(key2==0) min++;P0=0; if(min==60) min=0;}if(key3==0){delay1();if(key3==0) hour++;P0=0; if(hour==24) hour=0;}if(key4==0){delay1();if(key4==0) {hour=0; min=0; sec=0;} }}voidmain(){ TMOD=0x01; TH0=(65536-10000)/256; TL0=(65536-10000)%256; ET0=1; EA=1; TR0=1;while(1){uchari; for(i=0;i<8;i++) { display[0]=hour/10;display[1]=hour%10;display[3]=min/10;display[4]=min%10;display[6]=sec/10;display[7]=sec%10; P3=~(0x01<<i); P0=s7_table[display[i]]; delay(); P0=0; } }}voidint0_isr()interrupt1{TH0=(65536-10000)/256; TL0=(65536-10000)%256; n++; key(); if(n==100) { n=0; sec++; if(sec==60) { sec=0; min++; if(min==60) { min=0; hour++; if(hour==24) { hour=0; } }}}}万年历程序:#include<reg51.h>#defineucharunsignedchar#defineuintunsignedintucharcodes7_table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x40};sbitkey1=P1^0;sbitkey2=P1^1;sbitkey3=P1^2;sbitkey4=P1^3;sbitkey5=P1^4;uintyearuintmonthuintdayuinthour;uintmin;uintsec;uchars,k;voiddelay(){uchari,j;for(i=0;i<20;i++)for(j=0;j<20;j++);}voiddelay1(){ucharm,n;for(m=0;m<200;m++)for(n=0;n<200;n++);}voidkey(){if(key1==0){ delay1(); if(key1==0) { hour++; if(hour==24) { hour=0; } } } if(key2==0) { delay1(); if(key2==0) { min++; if(min==60) { min=0; } } } if(key3==0) { delay1(); if(key3==0) { sec=0; min=0; hour=0; } } }voidkeyx(){if(key4==0) { delay1(); if(key4==0) { for(k=0;k<248;k++) {P3=0xbf; P0=s7_table[day/10]; delay(); P3=0x7f; P0=s7_table[day%10]; delay(); P3=0xef; P0=s7_table[month/10]; delay(); P3=0xdf; P0=s7_table[month%10]; delay(); P3=0xfe; P0=s7_table[year/1000]; delay(); P3=0xfd; P0=s7_table[(year%1000)/100]; delay(); P3=0xfb; P0=s7_table[(year%100)/10]; delay(); P3=0xf7; P0=s7_table[year%10]; delay();}}}} voidmain(){TMOD=0x01;TH0=(65536-10000)/256;TL0=(65536-10000)%256;EA=1;ET0=1;TR0=1;year=2011;month=6;day=10;while(1){key(); keyx(); P3=0xbf; P0=s7_table[sec/10]; delay(); P3=0x7f; P0=s7_table[sec%10]; delay(); P3=0xdf; P0=0x40; delay(); P3=0xf7; P0=s7_table[min/10]; delay(); P3=0xef; P0=s7_table[min%10]; delay(); P3=0xfb; P0=0x40;delay(); P3=0xfe; P0=s7_table[hour/10]; delay(); P3=0xfd; P0=s7_table[hour%10]; delay(); } }voidtime()interrupt1{ TH0=(65536-10000)/256; TL0=(65536-10000)%256; s++; if(s==100) { s=0; sec++; if(sec==60) { sec=0; min++; if(min==60) { min=0; hour++; if(hour==24) { hour=0; day++; if(((year%4==0&&year%100||year%400==0)&&day>29)&&(month==2)) day=1; elseif(month==2&&day>28) day=1; elseif((month==4||month==6||month==9||month==11)&&day==31) day=1;elseif(day==32) day=1;
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 江苏省南通市启东市长江中学2024-2025学年度八年级3月月考历史试题(含答案)
- 2025雨水收集与利用土建合同
- 门窗售后保障合同协议
- 预缴水电费协议合同书
- 门面店买卖合同协议
- 陕西农民工合同协议
- 露营租赁转让合同协议
- 食品公司销售合同协议
- 餐厅保洁合同协议书模板
- 项目终止合同协议书范本
- 2025年福建省福州市电子信息集团有限公司招聘30人笔试参考题库附带答案详解
- 校园景观场所解读课件
- 北师版九年级数学上册-第1章-特殊平行四边形中的旋转、最值、动点问题-专题训练-(含答案)
- 2023山东能源集团建工集团有限公司机关部分岗位公开招聘8人笔试参考题库附带答案详解
- 2024年汉中市中医医院招聘笔试真题
- 超低排放改造管理制度
- 近视的防控课件
- 智能调度算法设计-全面剖析
- 超星尔雅学习通《工科中的设计思维(广东技术师范大学)》2025章节测试附答案
- 储能电站安全教育培训
- 景区游客中心培训课件
评论
0/150
提交评论