基于单片机的万年历时钟设计【毕业设计】.doc

上传人:一*** 文档编号:62096 上传时间:2018-06-03 格式:DOC 页数:39 大小:378.27KB
下载 相关 举报
基于单片机的万年历时钟设计【毕业设计】.doc_第1页
第1页 / 共39页
基于单片机的万年历时钟设计【毕业设计】.doc_第2页
第2页 / 共39页
基于单片机的万年历时钟设计【毕业设计】.doc_第3页
第3页 / 共39页
基于单片机的万年历时钟设计【毕业设计】.doc_第4页
第4页 / 共39页
基于单片机的万年历时钟设计【毕业设计】.doc_第5页
第5页 / 共39页
点击查看更多>>
资源描述

1、 ( 20_ _届) 本科毕业 设计 基于单片机的万年历时钟设计 所在学院 专业班级 测控技术与仪器 学生姓名 学号 指导教师 职称 完成日期 年 月 I 摘 要 电子万年历是一种非常广泛日常计时工具,对现代社会越来越流行。它可以对年、月、日、时、分、秒进行计时,还具有闰年补偿等多种功 能。对于数字电子万年历采用直观的数字显示,可以同时显示年、月、日、时、分、秒等信息,还具有时间校准等功能。 电子万年历的设计可以通过单片机制作来完成,其功能的实现主要通过软件编程来完成,这样可以降低电路的复杂性,降低成本。 本文通过对一个基于单片机的 通过汇编语言编写软件来 实现万年历功能电子时钟的设计,从而达

2、到学习、了解单片机相关指令在各方面的应用。系统由主控制器 AT89C51、时钟电路 DS1302、显示电路、按键电路、和复位电路等部分构成,能实现时钟日历显示的功能,能进行时、分、秒的显示。 AT89C51 单片 机作为核心,功耗小,能在 3V的低压工作,电压可选用 35V电压供电。而且 DS1302的使用寿命长,误差小。再通过八位数码管动态扫描方式来显示年、月、日、时、分、秒等信息。 因此,采用单片机 AT89C51原理制作的电子万年历,不仅仅在原理上能够成功的实现计时等功能,更符合我们实际生活的需要。 综上所述,本文设计的万年历具有读取方便、显示直观、电路简洁、成本低廉等优点,符合设计目的

3、与要求。 关键词: 数字显示,汇编语言, AT89C51单片机, DS1302时钟芯片,动态扫描 II Calendar Clock Design Based On Single Chip Abstract E-calendar day time is a very wide range of tools, increasingly popular in modern society. It can be year, month, day, hours, minutes, seconds for time, but also has leap year compensation to a va

4、riety of functions. For the digital electronic calendar using an intuitive digital display can simultaneously display year, month, day, hours, minutes, seconds and other information, but also a time-calibration and other functions. The design of electronic calendar produced by MCU to complete the im

5、plementation of its functions mainly through software programming to complete, this can reduce the circuit complexity and reduce costs. Through the adoption of a microcontroller-based software written in assembly language to implement the design of electronic clock calendar function to achieve the l

6、earning, understanding all aspects of SCM-related instruction in the application. By main control AT89C51, clock circuit DS1302, display circuit, keystroke circuit and restore circuit component, to achieve clock calendar display function can be carried out, hours seconds of the show and real-time te

7、mperature display. AT89C51 microcontroller as the core, power consumption, low-voltage work in 3v, the voltage can choose 3 5v voltage supply. And the DS1302s long life, small error. Then scan through the eight digital dynamic way to show year, month, day, hour, minute, second, and more. Therefore,

8、the principle of making use of SCM AT89C51 electronic calendar, not just in principle to the successful realization of timing and other functions, more in line with the needs of our real life. In summary, the paper design of the calendar with easy to read, intuitive display, circuit simplicity, low

9、cost, etc., meet the design objectives and requirements. Keywords: Digital Display, Assembly Language, AT89C51 Microcontroller, DS1302 Clock Chip, Dynamic Scanning III 目录 摘 要 . I Abstract . II 1 绪论 . 1 1.1课题 的背景与意义 . 1 1.2万年历发展动态 . 2 2设计要求与方案论证 . 4 2.1 设计要求与功能 . 4 2.2设计的方案论证与确定 . 4 2.2.1显示模块的论证 . 4

10、2.2.2时钟芯片的论证 . 5 2.3最终方案的确定 . 5 3系统硬件设计 . 6 3.1单片机系统 . 6 3.2 AT89C51单片机 . 7 3.2.1 AT89C51 描述 . 7 3.2.2 AT89C51 引脚图及介绍 . 7 3.2.3 AT89C51 功能特性 . 9 3.2.4复位电路 . 9 3.3 DS1302时钟芯片 . 10 3.3.1 DS1302 引脚功能及结构 . 10 3.3.2 DS1302 的控制字 . 11 3.3.3数据输入输出 . 11 3.3.4 DS1302 的寄存器 . 11 3.3.5 DS1302 实时时间流程 . 11 3.4显示和键

11、盘模块 . 12 3.4.1阳历算法 . 12 3.4.2按键消抖 . 13 4软件设计 . 14 4.1程序流程框图 . 14 4.2阳历计算流程图 . 15 4.3时间调整流程图 . 16 4.3.1日期调整 . 16 4.3.2时间调整 . 17 5 测试结果 . 18 IV 6结论 . 20 7参考文献 . 21 8致谢 . 错误 !未定义书签。 附录 . 22 附录 1 原理图 . 22 附录 2 程序 . 23 基于单片机的万年历时钟设计 1 1 绪论 1.1 课题的背景与意义 在当代繁忙的工作与生活中,时间与我们每一个人都有非常密切的关系,每个人都受到时间的影响。为了更好的利用我

12、们自己的时间, 需要一款灵活、稳定而又功能强大的自动定时控制系统,以规范本单位的作息时间或定时控制一些设备。目前,市面上出现的一些时控设备或功能单一,或使用烦琐,或价格昂贵,总有一些不尽如人意的地方 1。 我们必须对时间有一个度量,因此产生了钟表。钟表的发展是非常迅速的, 17 世纪中叶 , 由荷兰人 C. Huygens 来发明的第一个钟摆与以前任何计时装置相比 , 摆钟的精确度提高了上百倍 ,而他随后发明的螺旋平衡弹簧 ,又进一步提高精度、减小体积 , 导致了怀表的出现。然而再好的摆钟 ,其精度也只能达到每年误差不超过一秒 2。 1939 年出现了利用石英晶体振动计时的石英钟 , 每天误差

13、只有千分之二秒 , 到二次大战后精度提高到 30 年才差一秒。很快 , 测年的技术又推进到原子层面 , 1948 年出现第一台原子钟 , 1955 年又发明了铯原子钟 , 利用 Cs133 原子的共振频率计时 ,现在精度已经高达每 天只差十亿分之一秒 2。 从刚开始的机械式钟表到现在普遍用到的数字式钟表,即使现在钟表千奇百怪,但是它们都只是完成一种功能 计时功能,只是工作原理不同而已,在人们的使用过程中,逐渐发现了钟表的功能太单一, 无法 更大程度上的满足人们的需求。发展到现在人们广泛使用的万年历。 万年历在家庭居室、学校、车站和广场使用越来越广泛,给人们的生活、学习、工作带来极大的方便 3。

14、电子万年历具有信息量大、直观清晰、经济实用等优点,正成为家庭、商场、公共场所等新的消费热点,具有重要的开发价值 4。随着科技的不断发展,家用电 子产品不但种类日益丰富,而且变得更加经济实用,功能也越来越齐全,除了公历年月、日、时分秒、星期显示及闹铃外,又增加了农历、温度、 24节气及 l2生肖等显示。甚至还有语音报时等独特功能。再加上造型新颖别致,附带立体动感画面,配合鬻潺流水、悦耳鸟呜的背景音乐,确实是现代家庭、办公室、工厂、车站等查看时问或馈赠亲朋的理想用品,满足了当前人们追求个性化生活的需要。 万年历 是 我国古代传说中最古老的一部太阳历。为纪念历法编撰者万年功绩,便将这部历法命名为 “

15、 万年历 ” 5。而现在所使用的万年历,实际上就是记录一定时间范围 内(比如 100 年或更多)的具体阳历或阴历的日期的年历,方便有需要的人查询使用,与原始历法并无直接联系。 随着电子技术的发展,基于单片机的万年历时钟设计 2 我们用于计时的工具也在不断地发展,而单片机技术的出现使得万年历有了的心得发展方向。单片机具有体积小、功能全、性价比高等优点,在工业控制、家用电器、通信、信息处理、尖端武器等各类控制领域中发挥极大地作用。单片机技术已然成为现在电子信息、电气、通信、自动化、机电一体化等行业的技术人员必须掌握的技术 6。用最少的芯片就能实现强大的功能,这是将来电子产品的主流方向,它将一步步取

16、代替他同类产品。 二十一世纪的今天,最具代表性的计时产品就是电子万年历 。 近代世界钟表业界 有 三次革命 : 1.摆和摆轮游丝的发明,相对稳定的机械振荡频率源使钟表的走时差从分级缩小到秒级,代表性的产品就是带有摆或摆轮游丝的机械钟或表。 2.是 石英晶体振荡器 的应用,发明了走时精度更高的石英电子钟表,使钟表的走时月差从分级缩小到秒级。 3.万年历的发明 使计时产品的走时日差从分级缩小到 1/600 万秒,从原有传统指针计时的方式发展为人们日常更为熟悉的夜光数字显示方式,直观明了,并增加了全自动日期、星期、温度以及其他日常附属信息的显示功能,它更 符合消费者的生活需求!因此,电子万年历的出现

17、带来了钟表计时业界跨跃性的进步。 1.2 万年历发展动态 测时的原理是运用时间上稳定的周期性过程 , 其实物理学上周期性过程的时间范围极大 , 短到普朗克时间的 10-43s, 长到天文上的 1017 1018s, 为测时提供了广阔的空间 7。 但是话又得说回来 , 尽管有精确物理定义的“秒” ,我们日常使用仍然是天文计时 , 仍然是按昼夜作息、按年度预算。因为天文周期实际上也是人类生活环境的周期 ,其精度一般讲也足够我们日常使用。即使有了原子钟 ,仍然需要有历法的天文计时 8。 归纳起来 ,人类计时有两种系统 : 一种是天文计时 ,一种是物理计时。前面说到 , 计时是从天文方法开始的 ,然而

18、天文上的周期性并不像我们外行人想象的那样规则。以太阳为标准的天文“日”长度并不相等 ,现在一年之中就可以差 51 秒 ; 更不用说根据珊瑚化石生长纹判断 , 四亿年前一年有四百多天 , 在地质尺度上来讲地球自转速度是在减慢的。如此看来 , 用独立的物理方法计时 ,避免天文计时中的不稳定因素 ,是极为重要的 9。 随着科技的不断发展,万年历的出现解决了我们的这些问题。 对手表稍有了解的人, 都应该听说过手表三大复杂技术之 一的万年历。它的英文“ Perpetual calendar” 应直译为“ 永久日历”。但事实上, 无论是万年还是永久都言过其实了。我们所见到的力年历表, 除了正常的上弦和校对

19、时间外, 基本上每一基于单片机的万年历时钟设计 3 百年就需要更正一次日期, 所以称为一百年厉表才比较准确。在它的基础上进一步改造, 增加数组齿轮和拨杆, 理论上可以制造出四百年历表。只有突破了四百年大关才是真正的万年历表。 通过技术上的发展,电子电路对于万年历的发展祈祷了重大作用。 电子电路的设计可以被划分为两个不同的领域 :第一个领域将涉及如何设计一个可以完成所指定功 能的电路,有时,这些功能的实现需要基于特定的实验室条件;而第二个领域则涉及如何设计同样的电路,以保证它的每个产品模块能完成所规定的功能,而不附加任何其他不期望和未指定的功能,在这个领域中,对产品的可靠性要求总是要高于对产品的

20、寿命要求 10。 将模拟设计和数字设计划分为两个完全独立的学科,是一种令人不安的倾向,而且这样的做法也不利于形成好的教学效果。数字电路实际上只是模拟电路的一个极端产物,任何透彻了解模拟电路原理的人,都能很好地分析逻辑设备中非常难以掌握的运行机理 10。电子控制电路不仅在日常生活中有大 量应用,而且广泛地应用于科学研究中 11,特别是以单片机为主的设计发展的尤为迅速: 单片机发展极为迅速,当前世界上各大芯片制造公司郝推出了自己的单片机,从 8 位、 16 位到 32 位等,但它们各具特色,互成互补,为单片机的应用提供广阔的天地 12。 基于单片机的万年历时钟设计 4 2 设计要求与方案论证 2.

21、1 设计要求与功能 通过利用 AT89C51 单片机来设计一个能够显示年、月、日、时、分、秒的电子万年历。再通过 LED 或者 LCD 显示设备显示。能够达到任意调整年、月、日、时、分、秒。 (1)显示年、月、日、时、分、秒等信息 (2)具有调整日期 和时间等功能 其设计方向如下 : (1)万年历可以采用专用的时钟芯片来产生,由芯片产生稳定的时间,单片机读取,处理,然后显示出来。 (2)用键盘实现数据的输入,和显示模式的选择。 大致归纳为把 AT89C51 单片机作为主控系统,将专用的时钟芯片,显示模块,键盘模块连接一起,形成一个万年历的系统。时钟芯片作为万年历的产生装置,通过单片机的读取传输

22、到显示模块,数字化直观的显示出结果。同时还可以通过键盘模块设置任意你想要设置的是今年与日期。 2.2 设计的方案论证与确定 2.2.1 显示模块的论证 方案 1:采用 LCD 液晶 显示屏,液晶显示屏轻巧、节省空间、无几何失真、可视面积大、画面稳定,屏幕调节方便,使用数字接口无需调节,即使模拟接口也可以 auto键自动调整。但是价格昂贵,有拖影问题,非标准分辨率下显示效果差,维修费用也相当昂贵。 方案 2:采用 LED 静态显示,单片机只要把要显示的字形代码发送到接口电路就可以了,直到要显示新的数据时,再发送新的代码,使用这种方法 CPU的开销小,控制程序简单,但占用较多的硬件资源,每个显示器

23、都要占用单独的具有锁存功能的 I/O 接口用于笔划段字形代码 13。 方案 3:采用动态扫描显示,其接口电路 是把所有显示器的 8个笔划段 da-dp同名端连在一起,而每一个显示器的公共极 com各自独立地收 I/O线控制。 CPU向字段输出口送出字形码时,所有显示器接收到相同的字形码,但究竟是哪个显示器亮,取决于 com 端,而这一端是有 I/O 控制的,因此就可以自行决定合适显示哪一位。采用分时的方法,轮流控制各个显示器的 com 端,使各个显示器轮流点亮。此过程中,每位显示器的点亮时间是极为短暂的 (约 1ms),但由基于单片机的万年历时钟设计 5 于人的视觉暂留现象及发光二极管的余辉效

24、应,只要扫描的速度足够快,给人的感觉就是一组稳定的显示数据,不会有闪烁感 13。 2.2.2 时钟芯片的论证 方案 1:直接采用单片机定时计数器提供秒信号,使用程序实现年、月、日、时、分、秒计数。采用此种方案虽然减少芯片的使用,节约成本,但是,实现的时间误差较大。 方案 2:采用 DS1302 时钟芯片实现时钟, DS1302芯片是一种高性能、低功耗的实时时钟芯片,附加 31字节的静态 RAM,采用 SPI三线接口与 CPU进行同步通信,并可采用突发方式一次传送多个字节的时钟信号和 RAM 数据。实时时钟可以提供秒、分、时、日、月、年、,一个月小于 31 天时可以自动调整,且具有闰年补偿功能。工作电压 2.5V 5.5V。采用双电源供电,可设置备用电源充电方式,提供了对后背电源进行涓细电流充电的能力。 2.3 最终方案的确定 综上所述,本设计采用 AT89C51单片机作为住控制系统, DS1302 时钟芯片作为时钟模块,显示模块采用 LED 动态扫描方式,再通过键盘模块的控制来实现电子万年历的功能。其原理图如下: 图 2-1 原理框图 AT89C51单片机 键盘模块 LED 动态显示模块 DS1302 时钟模块

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

当前位置:首页 > 学术论文资料库 > 毕业论文

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。