资源描述:
《单片机电子钟课程设计》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、《单片机原理与应用》课程设计报告书系别:机械与电子工程学院专业:自动化班级:10206201姓名:冷木龙指导教师:朱兆优1512.6.25目录一、实验任务…………………………………………………3二、编程思路…………………………………………………3三、程序流程图………………………………………………4四、使用资源分配……………………………………………5五、实验调试与结果分析……………………………………5六、实验总结…………………………………………………5七、实验程序清单(加注解)………………………………6八、实验电路图………………………………………………1415设计题目多功能电子钟1、
2、实验任务用8051单片机设计扩展6位数码管的静态或动态显示电路,再连接几个按键和一个蜂鸣器报警电路,设计出一个多功能电子钟,实现以下功能:(1)走时(能实现时分秒,年月日的计时)(2)显示(分屏切换显示时分秒和年月日,修改时能定位闪烁显示)(3)校时(能用按键修改和校准时钟)(4)定时报警(能定点报时)2、编程思路(1)选择工作方式,计算初值;(2)采用中断方式进行溢出次数累计;(3)从秒-分-时和年-月-日的计时是通过累加和数值比较实现的;(4)时钟显示缓冲区:时钟时间在方位数码管上进行显示,为此在内部RAM中要设置显示缓冲区,共6个地址单元。显示缓冲区从左到右依次存放时、分、秒
3、、年、月、日数值。(5)主程序:主要进行定时器/计数器的初始化编程,然后反复调用显示子程序的方法等待中断的到来。(6)中断服务程序:进行计时操作。15保护现场T1中断秒加11秒到?1分到?1小时?分加11天?时加11个月?天加11年?年加1月加1恢复现场返回YYYYYYNNNNNN3、程序流程图15中断走时流程图4、使用的资源分配把单片机系统区域中的P0.0-P0.7端口用线连接到动态数码显示区域中的A-H端口上;把单片机系统区域中的P3.0-P3.7端口用线连接到动态数码显示区域中的S1-S7端口上;把单片机系统区域中的P3.0-P3.5端口用导线连接到6个数码管的公共端。5、实
4、验调试与结果分析实验调试1.实验程序的调试在TKStudio软件中,反复运行,发现错误并改正。2.实验电路的调试把调试好的程序载入单片机中,在运行看是否有错误。结果分析本次设计的单片机时钟系统中,其误差主要来源包括晶体频率误差,定时器溢出误差,延迟误差。晶体频率产生这震荡,容易产生走时误差;定时器溢出的时间误差,本应这一秒溢出,但却在这一秒溢出,造成走时误差;延时时间过长或过短,都会造成与基准时间产生偏差,造成走时误差。6、实验总结经过将近一周的努力,在指导老师和同学的帮助下,终于完成了多功能电子时钟的课程设计。刚开始拿到实验题目的时候,一头雾水,不知该从何看起,单通过对程序的模块
5、化分解,各个问题也就明了了。在此次的多功能电子15钟设计过程中,更进一步地熟悉了芯片的结构及掌握了各芯片的工作原理和其具体的使用方法。此次的多功能电子钟设计重在于仿真和编程,虽然能把电路原理图接出来,并能正常显示,但对于电路本身的原理并不是十分熟悉.总的来说,通过这次的设计实验更进一步地增强了实验的动手能力。这次的课程设计终于完成了,在此次课程设计中我们获益非浅,其过程中遇到了很多编程问题和操作问题,但最终还是在老师的指导下迎刃而解。7、实验程序清单(加注解)ORG0000AJMPMAINORG001BHLJMPTIMEORG0100HMAIN:MOV20H,#10H;中断次数MO
6、V32H,#18H;赋初值MOV31H,#28HMOV30H,#00HMOV40H,#23HMOV41H,#12HMOV42H,#12HMOVR7,#00HMOVTMOD,#10H;选择定时器/计数器工作方式1MOVTL1,#0B0H;定时器/计数器赋初值MOVTH1,#3CHSETBTR1;启动定时器/计数器1MOVIE,#88H;允许定时器/计数器中断DUSP:MOVR2,#3;显示年月日主程序MOVR0,#30HMOVDPTR,#TABMOVP3,#0DFHLOOP:MOVA,@R0ANLA,#0FH;取秒的低位MOVCA,@A+DPTR;查表MOVP0,A;把日的低位送到P
7、0口LCALLYSH2S;延时MOVA,P3RRAMOVP3,AMOVA,@R0ANLA,#0F0H;取日的高位SWAPA15MOVCA,@A+DPTR;查表MOVP0,ALCALLYSH2S;延时MOVA,P3RRAMOVP3,AINCR0DJNZR2,LOOP循环3次,分别显示时分秒JNBP1.7,KEY17;查询键17有没有按下JNBP1.6,KEY16;查询键16有没有按下JNBP1.5,KEY15;查询键15有没有按下JNBP1.4,KEY14;查询键14有