




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、、实验内容:设计一个数字时钟,显示范围为00:00:0023:59:59。通过5个开关进行控制,其中开关K1用于切换时间设置(调节时钟)和时钟运行(正常运行)状态;开关K2用于切换修改时、分、秒数值;开关K3用于使相应数值加1调节;开关K4用于减1调节;开关K5用于设定闹钟,闹钟同样可以设定初值,并且设定好后到时间通过实验箱音频放出一段乐曲作为闹铃。选做增加项目:还可增加秒表功能(精确到0.01s)或年月日设定功能。电路:(只连粗实线部分)二、实验电路及功能说明数码LED显示器电路(不需接线)电子音响电路按键说明:按键键名功能说明切换键校分后切换到校时K1校时后切换到时钟状态闹钟设定分值后切换
2、到设定时值闹钟设定时值后切换到时钟状态K2校时进入校时状态K3加1键校分或校时的时候使其加1递增K4减1键校分或校时的时候使其减1递减K5闹钟设定键进入闹钟设定状态、实验程序流程图:本实验设计了基于单片机的多功能数字钟的总体方案,对装置软、硬件的设计作了详细研究,并进行了相应的软件和硬件调试。该数字钟采用AT89C51单片机作为核心控制芯片,完成整点报时、显示、定时功能。整个系统分为几个小的电路,分别实现各自的功能。晶振电路,12MHZ晶振和两个30pF电容构成并连谐振接到X1和X2口。复位电路,在RST复位输入引脚上接一10uF电容至VCC端,下接一个51K电阻到地。控制电路,4个按键控制,
3、进行调时,定时,复位操作。显示电路,用6位7段数码管进行时,分,秒的显示。装置中软件设计部分包括一个主程序、四个模块程序和二个子程序,各自执行自己的功能,完成定时,调时等设操作。本文从整体到部分详细介绍了数字钟的设计,在比较重要的部分进行了详细的论述,并且给出了程序框图及说明。软件程序整个流程图如下:四、实验结果分析定时程序设计:单片机的定时功能也是通过计数器的计数来实现的,此时的计数脉冲来自单片机的内部,即每个机器周期产生一个计数脉冲,也就是每经过1个机器周期的时间,计数器加1。如果MCS-51采用的12MHz晶体,则计数频率为1MHz,即每过lus的时间计数器加1。这样可以根据计数值计算出
4、定时时间,也可以根据定时时间的要求计算出计数器的初值。MCS-51单片机的定时器/计数器具有4种工作方式,其控制字均在相应的特殊功能寄存器中,通过对特殊功能寄存器的编程,可以方便的选择定时器/计数器两种工作模式和4种工作方式。定时器/计数器工作在方式0时,为13位的计数器,由TLX(X=O、1)的低5位和THX的高8位所构成。TLX低5位溢出则向THX进位,THX计数溢出则置位TCON中的溢出标志位TFX.当定时器/计数器工作于方式1,为16位的计数器。本设计师单片机多功能定时器,所以MCS-51内部的定时器/计数器被选定为定时器工作模式,计数输入信号是内部时钟脉冲,每个机器周期产生一个脉冲使
5、计数器增1。实时时钟实现的基本方法:时钟的最小计时单位是秒,但使用定时器的方式1,最大的定时时间也只能达到131ms。我们可把定时器的定时时间定为50ms。这样,计数溢出20次即可得到时钟的最小计时单位:秒。而计数20次可以用软件实现。秒计时是采用中断方式进行溢出次数的累积,计满20次,即得到秒计时。从秒到分,从分到时是通过软件累加并进行比较的方法来实现的。要求每满1秒,则“秒”单元中的内容加1;“秒”单元满60,则“分”单元中的内容加1;“分”单元满60,则“时”单元中的内容加1;“时”单元满24,则将时、分、秒的内容全部清零。实时时钟程序设计步骤:选择工作方式,计算初值;采用中断方式进行溢
6、出次数累计;从秒分时的计时是通过累加和数值比较实现的;时钟显示缓冲区:时钟时间在方位数码管上进行显示,为此在内部RAM中要设置显示缓冲区,共6个地址单元。显示缓冲区从左到右依次存放时、分、秒数值;主程序:主要进行定时器/计数器的初始化编程,然后反复调用显示子程序的方法等待中断的到来;中断服务程序:进行计时操作;加1子程序:用于完成对时、分、秒的加操作,中断服务程序在秒、分、时加1时共有三种条调用加1子程序,包括三项内容:合字、加1并进行十进制调整、分字。程序说明:在整个系统中,在单片机的30H、31H和32H中存储当前时间的小时、分钟和秒。由于要用数码管显示当前的时间,必须用到分字和合字,因此
7、在33H、34H、35H、36H、37H和38H中存储当前时间的时十位、时个位、分十位、分个位、秒十位和秒个位,方便显示。本设计有由四个轻触按键组成的小键盘,这些按键可以任意改变当前的状态。按功能移位键一次,表示当前要校对小时的十位;按第二次,表示当前校对的是小时的个位;按第三次,则表示校对的是分钟的十位;第四次,表示的校对的是分钟的个位。按下数字“+”键和数字“-”键可在当前校对的数字上相应加上1或者减去1。本设计采用查表方式,在程序里预先存储两个表格,即日常作息时间表和考试时间表,可以通过手动按键来选择所要执行的时间表。并且用红、绿发光二极管来区别当前所执行的时间表。系统开机后,按功能移位
8、键就可以调整当前的时间,整个系统操作简单,功能明确。显示数据时,先把要显示的数据送到数据缓冲区SBUF中,再从SBUF中显示。串行口缓冲寄存器SBUF器是可直接寻址的专用寄存器。在物理上,它对应着两个寄存器,一个发送寄存器,一个接收intcount=0;/定时器计数,以记到IS寄存器。CPU写SBUF,就是修改发送寄存器;读SBUF,就是读接收寄存器。接收器是双缓冲的,以避免在接收下一帧数据之前,CPU未能及时响应接收器的中断,没有把上一帧数据读走,而产生两帧数据重叠的问题。对于发送器,为了保持最大的传输速率,一般不需要双缓冲,因为发送时CPU是主动的,不会产生写重叠的问题。五、心得体会通过本
9、次多功能数字钟设计实验,真正的感受到了理论联系实际的重要性,以及这之间莫大区别,到最后看着自己的结果心里还是感到很欣慰的。首先摆在我们面前的是要先弄懂所要设计实验的原理,于是最开始我在网上查找了大量的相关的资料,再结合课本的内容以及充分利用了网络资源和在图书馆借了相关的书籍资料,在仔细分析了本次实验所要达到的目的之后,我初步确定了思路。接下来的是进一步的分析其原理,最后则编写出本次实验的程序。在这次多功能数字钟设计实验过程中,我留下了很深的印象。由于以前都没有接触过,开始编写程序时很费力,但到后来就好了。在每次的实验中,遇到问题,最好的办法就是问别人,因为每个人掌握情况不一样,不可能做到处处都
10、懂,发挥群众的力量,复杂的事情就会变得很简单。这一点我深有体会,在很多时候,我遇到的困难或许别人之前就已遇到,向他们请教远比自己在那冥思苦想来得快。经过这些天的学习我深刻的体会到实际与理论有很大的区别。在我们学习的过程中不仅考验了我们对知识的吸收和掌握,而且也考验了我们的细心和耐心。特别是在编写程序过程中,我深有体会。所以,这次的实验不仅仅学习了程序的编写,还掌握了Proteus的一些功能,同时还提高了我们的专业素质。总之,进过两次的实验心得体会,我总结了以下几条:首先,多动手写程序、调试,只有自己亲自动手编写了,才会让你印象深刻,收益更大。其次,善于向别人学习,在你解决一个问题后,你可能会发
11、现别人有更简便的方法解决,这时就是你向别人学习的时候。六、程序清单#includereg51.h/晶振为6MHZ#includeabsacc.h#defineucharunsignedchar#defineuintunsignedint#defineDATAXBYTE0XFFDC/段选#defineSELXBYTE0XFFDD/位选sbitPl_0=P0;sbitP1_1=Pl;sbitP1_2=P2;sbitSpeak=P3;codeuchartable213=0 xc0,0 xf9,0 xa4,0 xb0,0 x99,0 x92,0 x82,0 xf8,0 x80,0 x90,0 xff,
12、0 xbf,0 xf7,0 x40,0 x79,0 x24,0 x30,0 x19,0 x12,0 x02,0 x78,0 x00,0 x10,0 xff,0 xbf,0 xf7;ucharsec=0;/秒ucharhou=0;/小时ucharmin=0;/分ucharflag=0;/显示时间还是闹钟时间,为0时显示时间ucharal_clk1=11;/显示闹钟小时ucharal_clk2=11;/显示闹钟分ucharal_clk3=0;/显示闹钟秒uchardisp1;/显示时间或者闹钟时间uchardisp2;if(!P1_1)uchardisp3;uchardot_sel=0;/小数点选
13、择Delay_1ms(25);标准位if(!P1_1)uchardot_hou;/小时的小数点显示dot_sel=dotuchardot_min;/分钟的小数if(dot_sel)点显示ucharclk_f=0;/闹钟标志位dot_hou=1;sel;dot_min=0;elsevoidinit()dot_hou=0;dot_min=1;TMOD=0 x02;/定时器0,方式2自动重装TH0=0 x06;TL0=0 x06;EA=1;ET0=1;TR0=1;IT0=1;/外部中断0边沿触发voidal_clk_seting()EX0=1;/外部中断0允许IT1=1;/外部中断1边沿触发if(c
14、lk_f)EX1=1;/外部中断1允许/闹钟设定voidDelay_lms(uinti)/延时n*msucharx,j;for(j=0;ji;j+)for(x=0;x=148;x+);if(al_clk1=hou)&(al_clk2=min)Speak=Speak;Delay_1ms(38);voiddot_choice()/选择小数点显示的位置voiddisplay()if(!P1_0)/显示程序Delay_1ms(19);/闹钟和时间切换if(!P1_0)flag=flag;if(flag)/显示时间或者闹钟时间disp1=al_clk1;disp2=al_clk2;disp3=al_cl
15、k3;elsedisp1=hou;disp2=min;disp3=sec;Delay_1ms(1);DATA=table010;SEL=0 x10;DATA=table0disp2/10;Delay_1ms(1);DATA=table010;SEL=0 x08;DATA=tabledot_mindisp2%10Delay_1ms(1);DATA=table010;SEL=0 x04;/显示-DATA=table011;Delay_1ms(1);DATA=table010;if(!P1_2)Delay_1ms(25);if(!P1_2)dot_hou=0;dot_min=0;clk_f=!clk
16、_f;/clk_f为1是闹钟为设定状态。SEL=0 x02;DATA=table0disp3/10Delay_1ms(1);DATA=table010;dot_choice();/选择小数点显示的位SEL=0 x80;DATA=table0disp1/10Delay_1ms(1);DATA=table010;SEL=0 x40;DATA=tabledot_houdisp1%10Delay_1ms(1);DATA=table010;SEL=0 x01;DATA=tableclk_fdisp3%10;/clk_f为1是闹钟设定最后一位小数点显示Delay_1ms(1);DATA=table010;
17、voidtime()/时间计数部分if(sec=60)min+;sec=0;if(min=60)hou+;min=0;if(hou=24)hou=0;SEL=0 x20;/显示-DATA=table011;0;voidmain()/主函数init();while(1)display();/显示time();/时钟al_clk_seting();/闹钟设定voidtimer_0()interrupt10时钟计数单元count+;if(count=2000)/定时器sec+;count=0;voidinter_ex_1()interrupt2/外部中断1进行闹钟或者时间的减1if(flag&dot_sel)if(al_clk1=0)al_clk1=24;al_clk1-;if(flag&(dot_sel)if(al_clk2=0)al_clk2=60;al_clk2-;if(flag)&(dot_sel)if(m
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025-2030中国1,2烷二醇行业产销需求及投资潜力评估研究报告
- 2025-2030LNG装卸系统行业市场现状供需分析及投资评估规划分析研究报告
- 2025-20302恶唑烷酮行业市场现状供需分析及投资评估规划分析研究报告
- 航空航天行业月个人工作计划
- 快乐运动的幼儿园活动计划
- 夜总会安全管理的技巧计划
- 产品质量提升的关键措施探讨计划
- 污水处理厂运行效率提升方案计划
- 深化客户洞察的工作总结计划
- 同舟共济社团塑造团队精神计划
- 2024年成都香城投资集团有限公司招聘笔试冲刺题(带答案解析)
- 大隐静脉射频消融手术
- 督查工作总结督查报告
- HGT 20714-2023 管道及仪表流程图(P ID)安全审查规范 (正式版)
- 2024年湖南财经工业职业技术学院高职单招(英语/数学/语文)笔试历年参考题库含答案解析
- 把课堂还给学生:如何构建理想课堂
- 2024年LED手电筒行业技术趋势分析
- 销货清单-模板
- 工艺美术专业实训室建设项目
- 刑法学(上册总论)(第二版)普通高等教育教材网
- 研发项目的风险预警与应对措施
评论
0/150
提交评论