1、 谢 辉 完成时间: 2009 年 12 月 28日摘要 .1第一章 引言. 21.1 设计目的.21.2 设计任务.21.3 设计思路.2第二章 方案选择.32.1 单片机型号选择.32.2 cpu选择42.3 显示模块选择.42.4 最终方案和系统组成5第三章主要硬件说明及设计.73.1 AT89C51的介绍说明73.2 显示部件的设计93.3 驱动部件设计93.4 电源电路93.5 时钟电路93.6 复位电路9第四章 软件系统的设计.74.1 电子钟的主程序74.2 电子钟的显示子程序94.3参考程序与解释9第五章 系统调试.75.1 软件调试75.2 硬件调试9第六章 设计心得总结.7
2、第五章 附录.13附录1 硬件电路原理图和连接图.13附录2 电子钟程序清单14附录3 元器件清单17附录4实训产品照片.18 参考文献.18 摘要本次实训是基于AT89C51单片机电子钟的设计,对时、分、秒的显示的控制,时、分、秒用六位数码管显示LED数码管时钟电路采用24小时计时方式。该电路采用AT89C51单片机,使用5V电池供电,只使用一个按键进行复位状态的控制以及正常显示等状态。LED显示采用静态扫描方式实现,采用6M晶振。最常见的电子钟通常使用单片机模块控制,一种用单片机原理实现时、分、秒计时的装置,与机械式时钟相比具有更高的准确性和直观性,且无机械装置,具有硬件成本低、计时准确、
3、更长的使用寿命特点,因此得到了广泛的使用。本次设计通过用单片机为主控制,通过电路仿真而实现。首先使用Proteus Professional软件进行绘制硬件电路图,用keil软件进行编程与调试,最终生成hex文件,传入单片机内部,从而实现仿真效果。关键词:电子钟、仿真、单片机第一章 引言1.1 设计目的1、掌握单片机的结构、指令系统、单片机扩展方法和接口技术;2、提高综合运用所学的理论知识独立分析和解决实际问题的能力;3、掌握汇编语言程序设计及调试方法;4、掌握单片机应用系统的设计思想。二、课程设计内容 1.2 设计任务以AT89C51单片机控制的时钟,在LCD显示器上显示当前时间。要求:1)
4、使用文字型LCD显示器显示当前时间。2)显示格式为“时时:分分:秒秒”。3)用4个功能键操作来设置当前的时间。(1)K1进入设置现在的时间。(2)K2设置小时。(3)K3设置分钟。(4)K4确认完成设置。4)程序执行后工作指示灯LED闪动,表示程序开始执行,LCD显示“00:00:00”,然后开始计时。1.3 设计思路电子钟的计时器的硬件电路如图所示,采用AT89C51单片机,最小化应用设计;此次设计,我们采用静态显示的方案来完成电子钟的设计。采用共阳八段LED显示器,用74LS164来驱动 LED数码管,采用6M晶振,有利于提高计时的精确性。主要功能:设计一个时钟系统,时钟时间在六位数码管上
5、进行显示,从左到右依次为“时:分:秒”。一上电,数码管显示起始时间为0时0分0秒,即数码管显示00.00.00,以后每秒钟时钟系统加1,最大显示值为23.59.59。本次设计中,我们只用到了一个按键,此按键是用来控制电路复位的,我们将设计好的复位电路直接接在单片机的复位引脚(RST)上,这样程序在运行过程中就会自动查询该引脚上的电平,当该引脚电平为高电平时,则电路恢复初始状态,反之,则程序正常运行。电子钟的硬件电路框图如下:第二章 方案选择2.1单片机型号选择通过对多种单片机性能的分析,最终认为89C51是最理想的电子时钟开发芯片。89C51是一种带4K字节闪烁可编程可擦除只读存储器的低电压,
6、高性能CMOS8位微处理器,器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的89C51是一种高效微控制器,而且它与MCS-51兼容,且具有4K字节可编程闪烁存储器和1000写/擦循环,数据保留时间为10年等特点,是最好的选择。2.2 cpu的型号选择单片机芯片作为控制系统的核心部件,它除了具备微机CPU的数值计算功能外,还具有灵活强大的控制功能,以便实时检测系统的输入量、控制系统的输出量,实现自动控制。在本次设计中采用单片机技术来实现数字钟的功能。方案的设计可以从以下几个方面来确定
7、。微处理器的选择,AT89S51、52是2003年ATMEL推出的新型品种,除了完全兼容8051外,还多了ISP编程和看门狗功能。虽然AT89S52的存储器容量比AT89S51的大。但在本次设计中采用AT89S51单片机因为AT89C51足以满足我们设计的需要;显示电路的设计,随着科技的发展,液晶显示的使用越来越方便,已被普遍的使用。但由于液晶显示比较昂贵,另外其驱动也集成在一起,因此使用起来很方便。在这里采用数码管显示;校时电路的设计;实时控制电路是时钟电路的一个重要组成部分,采用的是一个时钟芯片,单片机从中读取数据送到显示器上显示,从而实现数字钟的功能;还有一些其他控制电路如复位电路、时钟
8、电路等。通过这些控制电路的连接构成了完整的电路。2.3 显示模块选择采用LCD,电路比较简单,且在软件设计上也相对简单,具有低功耗功能,能够满足设计最优的要求。因此,在设计中我采用的显示模块是LCD显示。2.3 最终方案和系统组成对此次数字时钟的方案选定为: 采用AT89C52作为主控制系统; 并由其定时计数器提供时钟; LCD作为显示电路,来实现功能。 系统由AT89C51、LED 数码管、按键、74LS245等部分构成,能实现时间的调整、定时时间的设定,输出等功能。系统的按键有K1、K2、K3,K1对秒校对,K2对分校对,K3对时校对。3.1 AT89C51介绍说明AT89C51是美国In
9、tel公司生产的低电压,高性能CHMOS8位单片机,片内含4k bytes的可反复擦写的只读程序存储器(PEROM)和蔼可亲128 bytes的随机存取数据存储器(RAM),器件采用Intel公司的高密度、非易失性存储技术生产,片内置通用4位中央处理器(CPU)和Flash存储单元,功能强大AT89C51单片机适合于许多较为复杂控制应用场合。AT89C51引脚图3.1.1 引脚功能Vcc(40):电源电压 GND(20):接地P3.0 RXD(串行输入口) P3.1 TXD(串行输出口)RST(9):复位信号输入端。当振荡器工作时,RST引脚出现两个机器周期以上高电平将使单片机复位。/EA/V
10、PP:当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。 XTAL1(18):振荡器反相放大器的及内部时钟发生器的输入端。XTAL2(19):振荡器反相放大器的输出端。通过XTAL1、XTAL2外接晶振后,即可构成自激振荡器,驱动内部时钟发生器向主机提供时钟信号。3.2 显示部件设计如图所示由8个共阴极的数码管组成时、分、秒和分隔符的显示。P0 口的8 条数据线P0.0 至P0. 7 分别与
11、74LS245的A口对应相接,增大AT89C51的带负载能力;P3口对应接八个数码管的公共端,通过程序控制数码管的亮与灭,这样通过P0 口送出一个存储单元的高位、低位BCD显示代码,通过P3 口送出扫描选通代码轮流点亮LED1 至LED8,就会将要显示的数据在数码管中显示出来。从P0 口输出的代码是BCD 码,从P3口输出的就是位选码。这是扫描显示原理。3.3 驱动部件设计本设计的驱动电路采用74LS164,74LS164是最常见的移位寄存器,移位寄存器是暂时记忆数据的“寄存器”,其特征是具有将数据向左或向右移动的功能。移位寄存器有各种形式。按存数据的位数有4位、8位等,按“输入/输出数据”形式有“串
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1