单片机原理及应用课程设计电子日历

上传人:博****1 文档编号:431212395 上传时间:2024-01-02 格式:DOC 页数:51 大小:505.50KB
返回 下载 相关 举报
单片机原理及应用课程设计电子日历_第1页
第1页 / 共51页
单片机原理及应用课程设计电子日历_第2页
第2页 / 共51页
单片机原理及应用课程设计电子日历_第3页
第3页 / 共51页
单片机原理及应用课程设计电子日历_第4页
第4页 / 共51页
单片机原理及应用课程设计电子日历_第5页
第5页 / 共51页
点击查看更多>>
资源描述

《单片机原理及应用课程设计电子日历》由会员分享,可在线阅读,更多相关《单片机原理及应用课程设计电子日历(51页珍藏版)》请在金锄头文库上搜索。

1、湖南人文科技学院课程设计报告课程名称:单片机原理及应用课程设计本设计是利用单片机的强大的功能,基于AT89C52单片机控制,对时钟芯片DS1302进行初始化和读写,并对数据进行处理,再通过外加六位8段LED数码管显示时间和日期。而本设计采用共阳极驱动LED灯,利用延时程序实现时间和日期的滚动显示,LED数码管时钟电路采用24h计时方式,时、分、秒用6位8段数码管显示,由单片机控制显示,以完成设计要求:1、能计时:秒、分、时、天、周、月、年;2、时间、月、日实现从左至右的滚动显示。关键词:DS1302、单片机、8255、LED数码管目 录设计要求11 方案论证与对比11.1 方案一11.2 方案

2、二11. 方案对比与选择22 单元电路设计与计算22.1 放大电路的设计22.2 整形电路的设计22.3 分频电路的设计32.4 分频控制电路设计33 系统软件工作流程图43.1 多周期同步测量原理及误差分析43.2 系统工作流程44 系统功能测试与整体指标55 详细仪器清单56 总结与思考及致谢6参考文献7附录一:放大整形分频控制电路PCB板8附录二:74HC390分频电路PCB板图9附录三:程序10电子日历设计要求本课题以单片机为核心,设计并制作出智能LED电子钟,具有以下功能: (1)能计时:秒、分、时、天、周、月、年;(2)时间、月、日实现从左至右的滚动显示; 1 方案论证与对比1.1

3、 方案一基于AT89C52单片机的LCD液晶显示模块1602显示的智能LED电子钟。主要是以单片机来控制,用按键来设定时间和日期的初值,用按键来进行时间和日期的调整,LCD1602液晶作为显示模块来滚动显示时间和日期。优点:硬件电路简单,编程比较复杂,能清晰的显示数据。缺点:费用较高,且在编写程序实现所要求的功能时较难。1.2方案二 基于AT89C52单片机的数码管显示模块显示的智能LED电子钟。主要是以单片机来控制,对时钟芯片DS1302进行初始化和读写,并对数据进行处理,再通过矩阵按键来进行时间和日期的调整。再通过外加六位8段LED数码管显示时间和日期。此电路对于智能LED电子钟中的LED

4、数码管示器来说,采用以软件为主的接口方法,即不使用专门的硬件译码器,而采用软件程序使时间和日期滚动显示。优点:显示模块是是比较熟悉的数码管,编写程序是相对容易,且电路造价不高。缺点:显示模式比较单一。综上所述,经过对比与分析,决定采用方案二。2 硬件单元电路设计与参数计算根据电子日历设计要求,能计时,时间、月、日实现从左至右的滚动显示,要想实现上述功能,就必须将硬件系统和软件系统有机的结合在一起。硬件系统主要由AT89C52单片机为控制核心,具有在线编程功能,低功耗。时钟电路由DS1302提供,它是一种高性能、低功耗、带RAM的实时时钟电路,它可以对年、月、日、星期、时、分、秒进行计时,具有闰

5、年补偿功能,工作电压为2.55.5V。采用三线接口与CPU进行同步通信,并可采用突发方式一次传送多个字节的时钟信号或RAM数据。DS1302内部有一个用于临时性存放数据的RAM寄存器,可产生年、月、日、周、时、分、秒,具有使用寿命长,精度高和低功耗等特点,同时具有掉电自动保存功能。AT89C52的输入输出口很有限,而又要完成比较复杂的变换时间显示方式,调时,设置日期等功能,因此功能键的设置很重要。我们选用三个功能按键,根据三个键之间的切换以及按键次数来完成各种功能。显示部分为6位8段的LED数码管,通过动态扫描进行滚动显示。电路设计框图如下: 2.1复位电路复位是单片机的初始化操作,只需给AT

6、89C52的复位引脚RST加上大于2个机器周期(即24个时钟振荡周期)的高电平就可得单片机复位,复位时,PC初始化为0000H,使单片机从OUT单元开始执行程序。除了进入系统的正常初始化之外由于程序运行出错或操作错误而使系统处于死锁状态,为摆脱死锁状态,也需按复位键使得RST脚为高电平,使单片机重新启动。在系统中,有时会出现显示不正常,也为了调试方便,我们需要设计一个复位电路,AT89S52单片机复位电路共有上电复位、按键电平复位和按键脉冲复位。本系统是的复位电路主要完成系统的上电复位和系统在运行时用户的按键复位功能。复位电路可由简单的RC电路构成,也可使用其它的相对复杂,但功能更完善的电路。

7、本系统采用的电路如图2所示。工作原理是:上电瞬间,RC电路充电,RESET引脚端出现正脉冲,只要RESET保持10ms以上高电平,就能使单片机有效的复位。当时钟频率选用12MHz时,C取10uF,R取10K。上电自动复位电路由上电瞬间C与R构成充电电路,RESET端的电位与电源Vcc相同,随着充电电流的减少,RESET的电位逐渐下降。图中RC时间常数越大,上电时RESET端保持高电平的时间越长,图中这组参数足以保证复位操作。若复位电路失效,加电后CPU从一个随机的状态开始工作,系统就不能正常运行。图中的按键S17的功能是按键复位,按下S17键时RST为高电平,只要保持10ms以上的高电平,就可

8、以时单片机复位。按键复位用在系统运行时的复位,使系统重新运行。其复位电路原理图如下所示: 2.2 DS1302时钟模块2.2.1 DS1302简介 DS1302具有时钟计数功能,可以对秒、分钟、小时、月、星期、年的计数。年计数可达到2100 年,有31*8 位的额外数据暂存寄存器,最少I/O 引脚传输,通过三引脚控制,工作电压:2.0-5.5V, 工作电流小于320 纳安(2.0V),读写时钟寄存器或内部RAM(31*8 位的额外数据暂存寄存)可以采用单字节模式和突发模式。2.2.2 DS1302引脚DS1302引脚图如下: 晶体振荡器的选择:一个32.768KHz的晶振可以直接接在DS130

9、2的2、3管脚之间,可以设定规定载荷电容位6pf。电源控制:Vcc1可提供单电源控制也可以用来作为备用电源,Vcc2为主电源。在主电源关闭的情况下,也可以保持时钟的连续运行。DS1302由Vcc1或Vcc2两者中的较大者供电。当Vcc2大于Vcc1+0.2V时,Vcc2给DS1302供电;当Vcc2小与Vcc1时,DS1302由Vcc1供电。2.2.3 DS1302功能 DS1302包括时钟/日历寄存器和31字节(8 位)的数据暂存寄存器,数据通信仅通过一条串行输入输出口。实时时钟/日历提供包括秒、分、时、日期、月份、年份和星期几的信息。闰年可自行调整,可选择12小时制和24小时制,可以设置A

10、M、PM。只通过三根线(SPI总线)进行数据的控制和传递:RST、I/O、SCLK。2.2.4 时钟电路 时钟电路如下图所示: 单片机必须在时钟的驱动下才能工作。在单片机内部有一个时钟振荡电路,只要外界一个振荡源就能产生一定的时钟信号送到单片机内部的各个单元,决定单片机的工作速度。本系统使用的是内部时钟方式。 一般选用石英晶体振荡器。此电路在加电大约延迟10ms后振荡器起振,在XTAL2引脚产生幅度为3V左右的正弦波时钟信号,其振荡频率主要由石英晶振的频率确定。电路中两个电容C1、C2的作用有两个:一是帮助振荡器起振;二是对振荡器的频率进行微调。本系统的C1、C2的值为30pf。 2.3 晶振

11、电路模块 单片机必须在时钟的驱动下才能工作。在单片机内部有一个时钟振荡电路,只要外界一个振荡源就能产生一定的时钟信号送到单片机内部的各个单元,决定单片机的工作速度。本系统使用的是内部时钟方式。一般选用石英晶体振荡器。此电路在加电大约延迟10ms后振荡器起振,在XTAL2引脚产生幅度为3V左右的正弦波时钟信号,其振荡频率主要由石英晶振的频率确定。电路中两个电容C1、C2的作用有两个:一是帮助振荡器起振;二是对振荡器的频率进行微调。本系统的C1、C2的值为30pf。其电路图如下所示: 2.4 8255可编程并行口芯片模块8255A芯片是通用可编程并行接口电路,广泛用于单片机扩展并行I/O接口。它具

12、有3个8位并行口PA、PB、PC。8255A芯片的引脚功能说明如下:(1) D0-D7:双向三态数据总线,通常与CPU总线相连;(2) PA、PB、PC:3个8位I/O接口。PC口还可分为高4位和低4位,其中,高4位可与PA口组成A组,低4位可与PB口组成B组。PC口可按位置位/复位。(3) CS:片选信号输入端,低电平有效。(4) RD:读选通输入端,低电平有效。(5) WR:写选通输入端,低电平有效。(6) RESET:复位输入引脚,高电平有效,复位后,PA、PB、PC口均为输入。(7) A0、A1:端口地址输入线,通过地址组合选择8255A内部寄存器。(8) Vcc、GND:电源+5V、

13、接地。8255A芯片的内部逻辑结构及引脚如下图所示: 2.6 矩阵键盘模块本系统用到的是4*4矩阵键盘,行线由8255A芯片PC端口的低四位控制,而列线是由PC端口的高四位来控制的,键盘的扫描是动态的低电平扫描,当有个键按下时,相应的行线为高电平,扫描的结果由PC口送回8255A.在此系统中矩阵键盘的作用是调整电子日历的时间和日期,通过软件设计几个键的功能。本系统是利用S4来实现时间调整的切换,按第一下是实现时间秒的调整,其后没按下一次是切换到分、时、周、日、月、年的调整,再按下则是滚动显示日历。软件设定S6键是实现时间调整中的“+”,S7键是实现时间调整中的“-”。按键电路图如下所示: 2.

14、5 LED数码管显示电路我们使用的是8段数码管显示(包含小数点),通常在显示上我们采用的方法一般包括两种:一种是静态显示,另一种是动态显示。其中静态显示的特点是显示稳定不闪烁,程序编写简单,但占用端口资源多,所耗得电能较大。动态显示的特点是显示稳定性没静态好,程序编写复杂,但是相对静态显示而言占用端口资源少。在本设计中,为了减少端口资源,降低电能消耗,采用的是动态显示方法。考虑到数码管的段和位比较多,本系统用8255A作为扩展端口芯片。数码管有段选和位选控制,在此电路中有6个位选,8个段选(每一个数码管的段选进行并联)。分别用8255芯片的PA口和PB口进行四位数码管的控制,而用单片机的PB口

15、来控制段。电路中用了六个PNP来控制数码管的位选的开关,PNP在这起开关的作用。电路如下图所示。 3系统软件设计3.1主程序流程图本设计中主程序主要实现显示的初始化和调用各子程序工作的功能,读取时间的子程序主要实现初始化,时间调整设置信息的采集和显示的位与段码的存取。分别对各个器件的功能进行编程设计,根据主程序流程图(如下)进行全面的分析。时间调整主要是通过矩阵键盘按键来完成,当有按键按下时,转入相应的功能程序,再由数码管进行动态显示。其主程序执行流程图如下图: 3.2键盘扫描程序本设计采用动态扫描法,动态扫描法不仅扫描键阵,也可以实现显示,是目前应用十分广泛的一种方法。动态扫描法是采用输出“移动”信号,轮流对各行按键进行检测来实

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 医学/心理学 > 基础医学

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号