单片机多功能时钟的设计_第1页
单片机多功能时钟的设计_第2页
单片机多功能时钟的设计_第3页
单片机多功能时钟的设计_第4页
单片机多功能时钟的设计_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、 题目:学生姓名:刘宁学号:070403228学院:机电工程学院班级:A07电信2指导教师:李良儿浙江海洋学院教务处2009年12月17日附2:浙江海洋学院课程设计任务书20072008学年第2学期学院机电工班级A07电信2专业电子信息工学生姓名(学号)刘宁070403228课程名称单片机多功能时钟的设计设计题目单片机多功能时钟的设计完成期限自2009年12月10日至2009年12月17日共1周设计依据已经学习了验室提供必要的设备,系列单片机系统及其应用课程的内容,实可以进行相关设计。设计要求及主要内容基本要求:(1)、能实现正常的时钟功能。分别由6个数码管显示实时的时、分、秒。时、分后面加小

2、数点区分。(2)、能实现秒表的功能。以0.01秒为计数单位,显示范围在到分秒。有秒表的开始、停止功能。(3)具有校时功能:能对时、分按实际时间进行手动校正。发挥部分:(1)被校时段,有闪烁功能。(2)开机能显示班级、学号等信息,并能滚屏显示。(3)其他发挥功能。参考资料系列单片机系统及其应用高等教育出版社指导教师签字日期单片机多功能时钟的设计刘宁电信班学号:系统功能的确定基本要求:(1)、能实现正常的时钟功能。分别由8个数码管显示实时的时、分、秒。时、分后面加-区分。(2)、能实现秒表的功能。以0.0秒1为计数单位,显示范围在0到99分99秒。有秒表的开始、停止功能。(3)具有校时功能:能对时

3、、分按实际时间进行手动校正。(4)被校时段,有闪烁功能。(5)开机能显示班级、学号等信息,并能滚屏显示。(6)其他发挥功能。方案论证1方案一为了实现显示器的数字显示,可以采用静态显示法和动态显示法,由于静态显示法需要数据锁存器等硬件,接口复杂一些,考虑时钟显示只有六位,且系统没有其它复杂的处理任务,所以决定采用动态扫描法实现的显示。2方案二硬件采用位数码管,定义三个按键(、)为时钟校时或秒表开始暂停键,为时钟校分或秒表清零键,为显示时钟或秒表按键。时钟正常走时不影响秒表计时。秒表不影响时钟采用动态显示法,显示程序采用查表法。在中开辟、为时钟的显示缓存区,、为秒表的显示缓存区。优点:按键简单、程

4、序设计可以简洁等,缺点:校时时只能加一不能减一操作,使用不方便,并且在校时的时候数码管不能闪烁。方案三硬件采用位数码管,定义三个按键(、)为时钟校时加一或秒表开始暂停键,为时钟校时减一或秒表清零键,为显示时钟或秒表或校时开始按键。时钟显示格式为“、-、”、,-调、整、分钟时,分为闪烁,调整时钟时,时钟为闪烁。秒表的显示格式为“、-、”。-因、为、时钟随时改变的特殊性,在内存中开辟、为时钟的显示缓存区,、为秒表的显示缓存区,显示程序采用查表法设计,这样在数码管上可以实时改变显示数据。考虑到秒表的准确性,秒表程序使用单片机的中断计时,定时,次为一秒并对显示缓存区数据加以修改。秒表则是使用了单片机的

5、定时器,因为秒表的精度为秒,所以定时器设置为中断一次,中断后对秒表的显示缓存区数据加以修改。显示程序设计思路如下:一个字节存放两个数,位数码管 对应显示缓冲区的一个字节。只需将显示缓存区的首地址写入既可显示显示缓存区后个字节里个数字字符。显示缓冲区必须对与其他子函数共用的变量进行堆栈。为了使设计的多功能电子钟更人性化,本次系统方案选择第三种方案系统硬件的设计1主控制器的设计和接口电路的设计(电路图及设计说明)秒表/时钟计时器的硬件电路如右图,采用AT89C52单片机最小化应用设计,采用共阳七段LED显示器,P0口输出段码数据,P3.0P3.7口作列扫描输出,Pl.O、Pl.l、P1.2口接三个

6、按钮开关用以调时及功能设置。由于所使用的P0端口内部无上拉电阻,输出的是虚高电位,所以利用74LS245使P0口能正常工作。在P3口连接了八个非门提高了单片机对数码管的驱动电流(单片机各输入端流入约为30mA,输出约为10mA)。为了提供共阳LED数码管的驱动电压,用三极管90l2作电源驱动输出(图中未画出)。采用11.0625MHz晶振可有系统软件的设计1设计思想:11D1总体功能:K1(P1.0),K2(P1.1),K3(P1.2)为校时进入校时状态,按K1(P1.0)为加一键,按应选择调分或调时。在秒表状态下,K1为秒表开始暂独立的T1定时器,所以时钟、秒表、校时互不影响本人此次采用的设

7、计思想为模块化思想。将本系1:211E:1:申1:41611;11:汨p(.=rF1:1=E畑13Ft.WI高秒=5:J.-j冲一如:TM*单。在时钟状态下长按K3(p1.2Ifn1-叫:二,在校时状态下按因为秒表计时使用)键K3(P1.2)可以:键为冊秒表清妙歸八八,显示计时模块。将这些事先划分好的模块用汇编语言编成不同的子程序从而达到系统的整体功能。其中显示程序贯穿整个系统软件的始终,其它的程序以一定的规律改变显示程序的显示内容为目的。滚屏程序由一个中断服务程序构成,当达到一定的中断时间后改变显示缓冲区的内容。块、滚屏模块、键盘模块、再将它们有机的结合起来+翌勞 2开机初始化及滚动显示班级

8、学号开机显示班级学号流程图如右图:显示缓冲区为0123显示子程序延时一段时间后,缓冲区数据整体左移,然后继续调用显示函数循环执行。源程序如下: # 主函数程序如下:秒表标志位整体左移、右2_m7Q40f3228=调用显示程序3主函数主函数框图如下图所示,在初始化完毕以后,一直循环调用显示子程序和键盘扫描子程序构成一闭环。若有键按下则程序会去检测是哪一个键按下,利用软件消抖确认确实有键按下后进入键盘处理子程序定时次定时时钟、秒表的中断服务程序中断服务程序:本多功能电子钟含时钟,秒表功能。所以设置了两个中断服务程序,时钟使用定时器,定时,循环次为一秒钟并对秒位进行加一操作。秒表则使用定时器,定时就

9、可达到精度为秒的标准。其源程序如下:增加一秒加一次自动进位。中断服务程序时间增加子函数,增加一秒加一次自动进位。秒*表*程序时,设置时间不进位CLRC;秒表中断服务程序时间增加MOV40H,#00SUBBA,#0CAH子函数,OK1:RET显示子程序显示程序如下:它将显示缓冲区4个字节数据依次读出,每一字节数据分两次分别对应显示到数码管上(读一字节显示两位,直到八个数码管显示完毕)。源程序如下:显示数据显示子程序缓冲区首地址送 函数键盘处理子程序主函数键盘处理子程序框图如右图。由于本电子钟功能多,按键设计较为人性化,所以主函数的键盘处理子程序较为复杂。其功能如下,键负责秒表计时的开始暂停键或者

10、时钟校时时的加一键。键负责秒表计时的清零和时钟校时时的减一键。键为功能键,作为选择秒表、时钟或者是校时功能按键。因为按键按下的一瞬间和松开的一瞬间在按键两端的电位产生抖动,必然会使单片机误判,所以检测键盘按键都必须经过软件延时消抖处理。其源程序如下:*键盘*扫*描进入校时程序,标志位校时子程序校时子程序键盘设计如下,键为功能选择键,按()为加一键,按为减一键。其源程序如下:校*时闪烁子程序设为标志位为时分闪烁,为时时闪烁系统调试及指标测试因为整个系统含有很多个子程序,所以调试时把各个子程序分别调试,成功后进行整体调试。在调试过程中发现了一些错误,加了修改。比如:1、在中断服务程序中必须将与主函数中共用的变量进行堆栈,如果不堆栈程序执行结果将无法想象。、在使用命令时总结出一定的规律:指令必须在指令之后,但是本时钟校时时候需要对单元减一操作所以采用语句实现减一功能。、应为程序长使用了多个检测标志位,对于标志位的判断和指令的区别,需小心检查。在软件模拟调试成功后,将编译生成的文件用烧写软件烧入中并在实验板上调试成功。时钟与秒表性能良好,比较准确。结论通过本次课程设计,设为加深了对

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论