毕业设计—51基于单片机的电子万年历设计

上传人:ss****gk 文档编号:233084950 上传时间:2022-01-01 格式:DOCX 页数:30 大小:327.59KB
返回 下载 相关 举报
毕业设计—51基于单片机的电子万年历设计_第1页
第1页 / 共30页
毕业设计—51基于单片机的电子万年历设计_第2页
第2页 / 共30页
毕业设计—51基于单片机的电子万年历设计_第3页
第3页 / 共30页
毕业设计—51基于单片机的电子万年历设计_第4页
第4页 / 共30页
毕业设计—51基于单片机的电子万年历设计_第5页
第5页 / 共30页
点击查看更多>>
资源描述

《毕业设计—51基于单片机的电子万年历设计》由会员分享,可在线阅读,更多相关《毕业设计—51基于单片机的电子万年历设计(30页珍藏版)》请在金锄头文库上搜索。

1、单片机课程设计报告电子万年历设计摘要随着科技的快速发展,时间的流逝,至从观太阳、摆钟到现在电子钟,人类 不断研究,不断创新纪录。美国DALLAS公司推出的具有涓细电流充电能的低功 耗实时时钟电路DS1302o它可以对年、月、日、周日、时、分、秒进行计时, 还具有闰年补偿等多种功能,而且DS1302的使用寿命长,误差小。对于数字电 子万年历采用直观的数字显示,可以同时显示年、月、日、周日、时、分、秒和 温度等信息,还具有时间校准等功能。该电路采用AT89S52单片机作为核心,功 耗小,能在3V的低压工作,电压可选用:T5V电压供电。综上所述此万年历具有读取方便、显示直观、功能多样、电路简洁、成本

2、 低廉等诸多优点,符合电子仪器仪表的发展趋势,具有广阔的市场前景。本设计是基于51系列的单片机进行的电子万年历设计,可以显示年月日时 分秒及周信息,具有可调整日期和时间功能。在设计的同时对单片机的理论基础 和外围扩展知识进行了比较全面准备。在硬件与软件设计时,没有良好的基础知 识和实践经验会受到很大限制,每项功能实现时需要那种硬件,程序该如何编写, 算法如何实现等,没有一定的基础就不可能很好的实现。具体实现功能:(1)显示年月日时分秒及星期信息(2)具有可调整日期和时间功能(3)与即时时间同步目录1方案论证1. 1单片机芯片的选择方案和论证31. 2显示模块选择方案和论证31. 3时钟芯片的选

3、择方案和论证41. 4电路设计最终方案决定42系统的硬件设计与实现52.1电路设计框图52. 2系统硬件概述52. 3主要单元电路的设计52. 3. 1单片机主控制模块的设计52. 3.2时钟电路模块的设计62. 3.3电路原理及说明72. 3. 4显示模块的设计83系统的软件设计93. 1程序流程框图94测试与结果分析114. 1硬件测试124. 2软件测试124. 3测试结果分析与结论124. 3. 1测试结果分析124. 3. 2测试结论125prodeus软件仿真错误!未定义书签。5. IProteus ISIS 简介125. 2Proteus 运行流程135. 3Proteus 功能

4、仿真136课程设计总结与体会错误!未定义书签。参考文献错误!未定义书签。附录一:系统电路图18附录二:系统程序错误!未定义书签。1方案论证1.1单片机芯片的选择方案和论证方案一:采用89C51芯片作为硬件核心,采用Flash ROM,内部具有4KB ROM存储空 间,能于3V的超低压工作,而且与MCS-51系列单片机完全兼容,但是运用于电路 设计中时由于不具备ISP在线编程技术,当在对电路进行调试时,由于程序的错 误修改或对程序的新增功能需要烧入程序时,对芯片的多次拔插会对芯片造成一 定的损坏。方案二:采用AT89S52,片内ROM全都采用Flash ROM;能以3V的超底压工作;同时 也与M

5、CS-51系列单片机完全该芯片内部存储器为8KB ROM存储空间,同样具有 89C51的功能,且具有在线编程可擦除技术,当在对电路进行调试时,由于程序 的错误修改或对程序的新增功能需要烧入程序时,不需要对芯片多次拔插,所以 不会对芯片造成损坏,所以选择采用AT89S52作为主控制系统。1. 2显示模块选择方案和论证方案一:采用LED数码管动态扫描,LED数码管价格适中,对于显示数字合适,采用动 态扫描法与单片机连接时,虽然占用的单片机口线少,但连线还需要花费一点时 间,所以也不用此种作为显示。方案二:采用点阵式数码管显示,点阵式数码管是由八行八列的发光二极管组成,对 于显示文字比较适合,如采用

6、在显示数字显得太浪费,且价格也相对较高,所以也 不用此种作为显示。方案三:采用LCD液晶显示屏,液晶显示屏的显示功能强大,可显示大量文字,图形, 显示多样,清晰可见,并且我做的最小系统上带一个TS1620-1,和AT89S52已经接 好,省了很多麻烦,所以在此设计中采用LCD液晶显示屏。1. 3时钟芯片的选择方案和论证方案一:直接采用单片机定时计数器提供秒信号,使用程序实现年、月、日、星期、 时、分、秒计数。采用此种方案虽然减少芯片的使用,节约成本,但是,实现的 时间误斧较大,所以不采用此方案。方案二:采用DS1302时钟芯片实现时钟,DS1302芯片是一种高性能的时钟芯片,可 自动对秒、分、

7、时、日、周、月、年进行计数,而且精度高,位的RAM做为数据 暂存区,工作电压2. 5V5. 5V范围内,2. 5V时耗电小于300nAo1.4电路设计最终方案决定综上各方案所述,对此次作品的方案选定:采用AT89S52作为主控制系统; DS1302提供时钟;LCD液晶显示屏作为显示。2系统的硬件设计与实现LCD液晶显示屏显 示模块AT89S52主控制模键盘模块块2.1电路设计框图DS1302时钟模块卜图1系统原理图2. 2系统硬件概述本电路是由AT89S52单片机为控制核心,具有在线编程功能,低功耗,能在 3V超低压工作;时钟电路由DS1302提供,它是一种高性能、低功耗、带RAM的 实时时钟

8、电路,它可以对年、月、日、周日、时、分、秒进行计时,具有闰年补 偿功能,工作电压为2. 5V5. 5V。采用三线接口与CPU进行同步通信,并可采 用突发方式一次传送多个字节的时钟信号或RAM数据。DS1302内部有一个31*8 的用于临时性存放数据的RAM寄存器。可产生年、月、日、周日、时、分、秒, 具有使用寿命长,精度高和低功耗等特点,同时具有掉电自动保存功能;温度的 采集由DS18B20构成;显示部份由LCD液晶显示屏显示。2.3主要单元电路的设计2. 3. 1单片机主控制模块的设计AT89S52单片机为40引脚双列直插芯片,有四个I/O 口 P0, Pl, P2, P3, MCS-51

9、单片机共有4个8位的I/O 口(P0、Pl、P2、P3),每一条I/O线都能独立地作 输出或输入。单片机的最小系统如下图所示,18引脚和19引脚接时钟电路,XTAL1接外部 晶振和微调电容的一端,在片内它是振荡器倒相放大器的输入,XTAL2接外部晶 振和微调电容的另一端,在片内它是振荡器倒相放大器的输出。第9引脚为复位 输入端,接上电容,电阻及开关后够上电复位电路,20引脚为接地端,40引脚为电 源端。如图2所示:图2主控制系统2. 3.2时钟电路模块的设计图.3示出DS1302的引脚排列,其中Vccl为后备电源,Vcc2为主电源。在 主电源关闭的情况下,也能保持时钟的连续运行。DS1302由

10、Vccl或Vcc2两者 中的较大者供电。当Vcc2大于Vccl+O. 2V吋,Vcc2给DS1302供电。当Vcc2小 于Vccl时,DS1302由Vccl供电。XI和X2是振荡源,外接32. 7 6 8 KHz晶振。 RST是复位/片选线,通过把RST输入驱动置高电平来启动所有的数据传送。RST 输入有两种功能:首先,RST接通控制逻辑,允许地址/命令序列送入移位寄存 器;其次,RST提供终止单字节或多字节数据的传送手段。当RST为高电平时, 所有的数据传送被初始化,允许对DS1302进行操作。如果在传送过程中RSTS 置为低电平,则会终止此次数据传送,I/O引脚变为高阻态。上电动行时,在V

11、cc 大于等于2. 5V之前,RST必须保持低电平。中有在SCLK为低电平时,才能将 RST置为高电平,I/O为串行数据输入端(双向)。SCLK始终是输入端。图3 DS1302的引脚图2. 3.3电路原理及说明(1)时钟芯片DS1302的工作原理:DS1302在每次进行读、写程序前都必须初始化,先把SCLK端置“0”,接 着把RST端置“1”,最后才给予SCLK脉冲;读/写时序如下图4所示。DS1302 的控制字的位7必须置1,若为0则不能把对DS1302进行读写数据。对于位6, 若对程序进行读/写时RAM=1,对时间进行读/写时,CK=0,位1至位5指操作单 元的地址。位0是读/写操作位,进

12、行读操作时,该位为1;该位为0则表示进 行的是写操作。控制字节总是从最低位开始输入/输出的。表.2为DS1302的日 历、时间寄存器内容:“CH”是时钟暂停标志位,当该位为1时,时钟振荡器停 止,DS1302处于低功耗状态;当该位为0时,时钟开始运行。“WP”是写保护位, 在任何的对时钟和RAM的写操作之前,WP必须为0o当“WP”为1时,写保护位 防止对任一寄存器的写操作。(2)DS1302的控制字节:DS1302控制字节的高有效位(位7)必须是逻辑1,如果它为0,则不能把 数据写入DS1302中,位6如果0,则表示存取日历时钟数据,为1表示存取RAM 数据;位5至位1指示操作单元的地址;最

13、低有效位(位0)如为0表示要进行 写操作,为1表示进行读操作,控制字节总是从最低位开始输出(3)数据输入输出(I/O)在控制指令字输入后的下一个SCLK时钟的上升沿时,数据被写入DS1302, 数据输入从低位即位0开始。同样,在紧跟8位的控制指令字后的下一个SCLK 脉冲的下降沿读出DS1302的数据,读出数据时从低位0位到高位7。(4)DS1302的寄存器DS1302有12个寄存器,其中有7个寄存器与日历、时钟相关,存放的数据 位为BCD码形式。此外,DS1302还有年份寄存器、控制寄存器、充电寄存器、时钟突发寄存 器及与RAM相关的寄存器等。时钟突发寄存器可一次性顺序读写除充电寄存器外 的

14、所有寄存器内容。DS1302与RAM相关的寄存器分为两类:一类是单个RAM单 元,共31个,每个单元组态为一个8位的字节,其命令控制字为C0H-FDH,其 中奇数为读操作,偶数为写操作;另一类为突发方式下的RAM寄存器,此方式下 可一次性读写所有的RAM的31个字节,命令控制字为FEH(写)、FFH(读)。2. 3. 4显示模块的设计如图.4为LCD显示模块,和最小系统上的连线一样,无需修改。59Q s 寸Q s s 5 OQ山山AQQGos457X.9.+ 寸L1TF1l9F图4 LCD液晶显示屏显示模块3. 1程序流程框图3系统的软件设计初始化读II期、时间写日期、时间显不了程序开关控制子

15、程序11期修改子程序时间修改了程序显示结果返回图5主程序流程图图6时间调整程序流程图4测试与结果分析4. 1硬件测试电子万年历的电路系统较大,对于焊接方面更是不可轻视,庞大的电路系统 中只要出于一处的错误,则会对检测造成很大的不便,而且电路的交线较多,对 于各种锋利的引脚要注意处理,否则会刺被带有包皮的导线,则会对电路造成短 路现象。在本成电子万年历的设计调试中遇到了很多的问题。回想这些问题只要认真 多思考都是可以避免的,以下为主要的问题:(1) LCD液晶显示屏显示部分已经连在最小系统上,节省了不少时间和精力。(2) 对万年历修改时间或日期时,有时LCD液晶显示屏被屏蔽掉,造成不亮现 象。解决:

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 其它办公文档

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