电子时钟的设计与实现.doc_第1页
电子时钟的设计与实现.doc_第2页
电子时钟的设计与实现.doc_第3页
电子时钟的设计与实现.doc_第4页
电子时钟的设计与实现.doc_第5页
免费预览已结束,剩余8页可下载查看

下载本文档

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

文档简介

单片机课程设计电子时钟的设计与实现 学 院:机电学院专业班级:电气工程及其自动化063班学 号:20060344317姓 名:王涛2009年6月25日摘要: 电子钟已成为人们日常生活中的必需品,广泛应用于家庭、车站、码头、剧院、办公室等场所。本系统采用本系统以AT89S52为主控芯片,实现电子时钟的设计,并考虑节约系统的硬件,能用软件实现的功能尽量都用软件实现。而且达到时钟功能为24小时的计时方式,显示时、分;具有快速校准时、分的功能;根据键盘输入调用相应键处理子程序,实现时间的调整;然后输出到4位的LED显示器显示出来。关键词 AT89S52 定时器 按键 数码管目录1 设计任务42 设计方案与实现5硬件设计5软件设计73 总结.84 附录.9元件清单.10程序清单105 参考文献146 致谢.141设计任务:1) 题目 4位LED数字时钟的设计2) 技术指标及设计要求(1)显示小时、分钟时间(2)实现秒的量化显示(3)具有调整时间功能(4)开机复位显示及手动复位显示功能3) 给定条件及器件(1)单片机及相关外围器件(2)直流稳压电源5V(3)万用电路板(4)4联共阳数码管2 设计方案及实现 1) 硬件设计(1)相关器件介绍(a) 4联LED数码显示器笔段(b) 4联LED数码显示器引线图3 四位LED数码显示器abcdefghCOM2bfaabcdefghabcdefghabcdefghgCOM1hdCOM4eCOM3c abcdefghabfghcdeCOM(a) LED数码显示器笔段(b) LED数码显示器引线 图1 一位LED数码显示器abcdefghCOM(c) 共阳极结构9012E B C图2 9012和LED引线排列1 23 4图4 按键引线排列1234or_ +数码管介绍:数码管按段数分为七段数码管和八段数码管,八段数码管比七段数码管多一个发光二极管单元(多一个小数点显示);按能显示多少个“8”可分为1位、2位、4位等等数码管;按发光二极管单元连接方式分为共阳极数码管和共阴极数码管。共阳数码管是指将所有发光二极管的阳极接到一起形成公共阳极(COM)的数码管。共阳数码管在应用时应将公共极COM接到+5V,当某一字段发光二极管的阴极为低电平时,相应字段就点亮。当某一字段的阴极为高电平时,相应字段就不亮。共阴数码管是指将所有发光二极管的阴极接到一起形成公共阴极(COM)的数码管。共阴数码管在应用时应将公共极COM接到地线GND上,当某一字段发光二极管的阳极为高电平时,相应字段就点亮。当某一字段的阳极为低电平时,相应字段就不亮。本设计采用共4联共阳数码管数码管的驱动方式数码管要正常显示,就要用驱动电路来驱动数码管的各个段码,从而显示出我们要的数字,因此根据数码管的驱动方式的不同,可以分为静态式和动态式两类。 静态显示驱动:静态驱动也称直流驱动。静态驱动是指每个数码管的每一个段码都由一个单片机的I/O端口进行驱动,或者使用如BCD码二-十进制译码器译码进行驱动。静态驱动的优点是编程简单,显示亮度高,缺点是占用I/O端口多,如驱动5个数码管静态显示则需要5840根I/O端口来驱动,要知道一个89S52单片机可用的I/O端口才32个呢:),实际应用时必须增加译码驱动器进行驱动,增加了硬件电路的复杂性。 动态显示驱动:数码管动态显示接口是单片机中应用最为广泛的一种显示方式之一,动态驱动是将所有数码管的8个显示笔划a,b,c,d,e,f,g,dp的同名端连在一起,另外为每个数码管的公共极COM增加位选通控制电路,位选通由各自独立的I/O线控制,当单片机输出字形码时,所有数码管都接收到相同的字形码,但究竟是那个数码管会显示出字形,取决于单片机对位选通COM端电路的控制,所以我们只要将需要显示的数码管的选通控制打开,该位就显示出字形,没有选通的数码管就不会亮。通过分时轮流控制各个数码管的的COM端,就使各个数码管轮流受控显示,这就是动态驱动。在轮流显示过程中,每位数码管的点亮时间为12ms,由于人的视觉暂留现象及发光二极管的余辉效应,尽管实际上各位数码管并非同时点亮,但只要扫描的速度足够快,给人的印象就是一组稳定的显示数据,不会有闪烁感,动态显示的效果和静态显示是一样的,能够节省大量的I/O端口,而且功耗更低。本设计采用动态扫描的方式进行显示单片机(AT89S52)介绍:主要性能 与MCS-51单片机产品兼容 、8K字节在系统可编程Flash存储器、 1000次擦写周期、 全静态操作:0Hz33Hz 、 三级加密程序存储器 、 32个可编程I/O口线 、三个16位定时器/计数器 八个中断源 、全双工UART串行通道、 低功耗空闲和掉电模式 、掉电后中断可唤醒 、 看门狗定时器 、双数据指针 、掉电标识符 。功能特性描述 At89s52 是一种低功耗、高性能CMOS8位微控制器,具有 8K 在系统可编程Flash 存储器。使用Atmel 公司高密度非易失性存储器技术制造,与工业80C51 产品指令和引脚完全兼容。片上Flash允许程序存储器在系统可编程,亦适于常规编程器。在单芯片上,拥有灵巧的8 位CPU 和在系统可编程Flash,使得AT89S52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。 AT89S52具有以下标准功能: 8k字节Flash,256字节RAM, 32 位I/O 口线,看门狗定时器,2 个数据指针,三个16 位 定时器/计数器,一个6向量2级中断结构,全双工串行口, 片内晶振及时钟电路。另外,AT89S52 可降至0Hz 静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU 停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结, 单片机一切工作停止,直到下一个中断或硬件复位为止电路设计电路原理图如下所示,单片机采用内部有8kb的flash ROM与80C51完全兼容的AT89S52单片机,扩展4位共阳极LED数码显示器,采用动态显示方式,显示段码由P0口提供,位码由P2.42.7提供,扩展2个独立式按键用于时间的设定及调整。电源插座图6 时钟电路C1C2RSTX1X2VCCVSSP0.6P0.5P0.7P0.3P0.4P0.0P0.1AT89S52P2.7C312MHZ30P30PR16.8k10R6R13R2R5 6.8k4R2R490129012时十位abcdfghR3R5P2.490125V9012P2.6P2.5EACOM4COM3COM2COM1P0.2e+_10C4S2S1P3.0P3.1时个位分个位分十位+R6R13 4708S0 软件设计:(1) 软件设计基本思想:由单片机的定时器T0产生0.05s的时间基准,通过计数得到时钟的秒、分、时信号,由显示子程序送数码管显示器显示,键盘工作在扫描方式,当有键按下时,通过键处理程序完成时间的调整。(2) 程序流程图如下:调试通过烧录器将软件烧录到单片机后数码管显示不正常,经检查是硬件电路的复位按键接错,导致系统总是复位无法正常工作,经修改后显示正常。总结: 经过了一个多星期的学习和工作,我终于完成了单片机时钟课程设计。从开始接到论文要求到时钟的实现,再到论文文章的完成,每走一步对我来说都是新的尝试与挑战,这也是我在大学期间独立完成的最大的项目。在这段时间里,我学到了很多知识也有很多感受,我开始了独立的学习和试验,查看相关的资料和书籍,让自己头脑中模糊的概念逐渐清晰,使自己非常稚嫩作品一步步完善起来,每一次改进都是我学习的收获,每一次试验的成功都会让我兴奋好一段时间。 当看着自己的程序,自己成天相伴的系统能够健康的运行,真是莫大的幸福和欣慰。我相信其中的酸甜苦辣最终都会化为甜美的甘泉。 这次论文的经历也会使我终身受益,我感受到做论文是要用心去做的一件事情,是真正的自己学习的过程和研究的过程,没有学习就不可能有研究的能力,没有自己的研究,就不会有所突破。通过本次毕业设计,我在苏老师的精心指导和严格要求下,获得了丰富的理论知识,极大地提高了实践能力,单片机领域这对我今后进一步学习计算机方面的知识有极大的帮助。在此,忠心感谢苏老师以及许多同学的指导和支持。附录:(1)元器件清单:(2)程序清单 ;=;预定义部分:;=BUF EQU 6EHSBF EQU 6FHMBF EQU 70HHBF EQU 71HFGW EQU 76HFSW EQU 77HSGW EQU 78HSSW EQU 79HB05 BIT 00H ;0.5s标志 SS2 BIT P3.1SS1 BIT P3.0;=;初始化及主程序 ;= ORG 0000HLJMP MAINORG 000BHLJMP TOCLOCK ; 0.05s中断服务程序ORG 0100HMAIN: MOV IE,#00H MOV SP,#30H ; 堆栈指针MOV 20H,#00H ;清标志CLR A ;A =00HMOV BUF,A ;BUF清0MOV SBF,A ;SBF清0MOV MBF,A ;MBF清0MOV HBF,#0CH ;初始时钟显示12:00MOV TMOD,#01H ;定时器T0工作在方式1MOV TH0,#3CH ;T0用于时钟定时,0.05s定时初值MOV TL0,#0B0HSETB PT0 ;T0高级优先ACALL PUTD_PRG ;调用向显示缓冲区放数子程序ACALL DISP_PRG ;调用显示子程序LCALL YS20MSSETB EA ;开中断SETB ET0SETB TR0 ;启动定时NOPNOPLOO_1: ACALL PUTD_PRG ;调用向显示缓冲区放数子程序 ACALL DISP_PRG ;调用显示子程序 ACALL JPCL_PRG ;调用键盘扫描处理子程序 SJMP LOO_1;=;T0中断服务程序 ;= TOCLOCK: MOV TH0,#3CH MOV TL0,#0B7H PUSH PSW PUSH ACC INC BUF ;BUF+1 MOV A,BUF CJNE A,#10,CLOCK_1 SETB B05 ;置位0.5s标志CLOCK_1:CJNE A,#20,DK13 ;累计20次为1s CLR B05 ;清除0.5s标志 MOV BUF,#00H MOV A,SBF ;修改秒计数单元 INC A MOV SBF,A ; CJNE A,#60,DK13 ;不到60,返回 MOV SBF,#00H ;等于60,计数单元清0 MOV A,MBF ;修改分计数单元 INC A MOV MBF,A CJNE A,#60,DK13 MOV MBF,#00H MOV A,HBF ;修改时计数单元 INC A MOV HBF,A CJNE A,#24,DK13 MOV HBF,#00H SJMP DK13DK13:POP ACC POP PSW RETI;=;向显示缓冲区放数子程序;=PUTD_PRG:PUSH PSW ;保护现场,(RS1,RS0) PUSH B PUSH ACCPUTD2: MOV A,MBF;MBF中内容送入A ACALL CHU10 ;调用除10 程序 MOV FGW,B ;分个位送显缓76H MOV FSW,A ;分十位送显缓77HPUTD5:MOV A,HBF ;HBF中内容送入A ACALL CHU10 ;调用除10 程序 MOV SSW,A ;时十位送显缓79H PUTD10:MOV SGW,B ;时个位送显缓78H PUTD9:POP ACC POP B ;恢复现场 POP PSW ;恢复(RS1,RS0) RET ;子程序返回 ;= ;除10子程序 ;=CHU10:MOV B,#0AH DIV AB RET ;= ;显示子程序(须将显缓中十进制数转换成七段码,再送数码显示器) ;= DISP_PRG:PUSH PSW SETB RS0 ;转工作寄存器组1 CLR RS1 PUSH ACC ;保护现场 MOV A,P2 ORL A,#0F0H ;高4位置1 MOV P2,A ;关闭显示 MOV R0,#FGW MOV DPTR,#TABD MOV A,R0 MOVC A,A+DPTR MOV P0,A CLR P2.4 ;点亮1位 LCALL YS20MS INC R0 MOV DPTR,#TABD MOV A,R0 MOVC A,A+DPTR MOV P0,A SETB P2.4 CLR P2.5 ;点亮2位 LCALL YS20MS INC R0 MOV DPTR,#TABD MOV A,R0 MOVC A,A+DPTR JNB B05,DISP_1 ANL A,#7FH ;点亮小数点DISP_1:MOV P0,A SETB P2.5 CLR P2.6 ;点亮3位 LCALL YS20MS INC R0 MOV DPTR,#TABD MOV A,R0 CJNE A,#00H,DISP_2 MOV A,#0AH ;最高位为0,显示灭DISP_2:MOVC A,A+DPTR MOV P0,A SETB P2.6 CLR P2.7 ;点亮4位LCALL YS20MS SETB P2.7 POP ACC ;恢复现场 POP PSW ;返回工作寄存器组 RET ;子程序返回TABD:DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H,0FFH ;= ;键扫描处理子程序 ;=JPCL_PRG:JB SS1,JP_1;S1未按下转查S2 ACALL DELY10 ;延

温馨提示

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

评论

0/150

提交评论