1、本 科 毕 业 设 计能准确校时的万年历的设计所在学院 专业班级 电子与信息工程 学生姓名 学号 指导教师 职称 完成日期 年 月 II摘要电子万年历是一种应用广泛的日常计时工具,它可以对年、月、日、星期、时、分、秒进行计时,还具有闰年补偿,阴历等多种功能。本设计利用单片机 AT89C52 控制串行实时时钟芯片 DS1302,温度芯片DS18b20,Ampire12864LCD 显示芯片构成多功能万年历电路,实现实时时间,日期,温度显示。通过计算阴历和星期的算法把阳历的日期转变为阴历和相应的星期实现阴历和星期的显示。时钟芯片 DS1302 使用简单的三线接口,为单片机节省大量的接口资源,同时带
2、有后备电池,具备对后背电源进行涓细电流充电的能力,保证电路断电后仍保存时间和数据信息,这些优点解决了目前常用实时时钟占用单片机资源多以及计时不可靠以及掉电丢失等缺点。但是,由于 DS1302 易受环境影响,会使该电路出现时钟精度不高、时钟混乱等问题。所以本设计为通过按键来读取 GPS 数据从而实现电子万年历的精确校时。该电子万年历功能强大,性能优越,能为很多领域,特别是对时钟工作的精确性和可靠性有较高要求的场合。因为连接了 GPS 接收器,可以实时准确接受 GPS 卫星信号用以电子万年历的校时,从而保证了产品的精确性和可靠性。关键词:DS1302;DS18B20;Ampire12864;AT8
3、9C52;GPSIIIAbstractElectronic calendar is a very extensive daily timing tool, in modern society is more and more popular. It can be for year, month, day, week, hours, minutes and seconds for timing, but also has a leap year compensation, the lunar calendar and other functions, and the DS1302 is long
4、 service life and small error.This digital electronic calendar uses intuitive digital display, can also shows that year, month, day, Sunday, when, minutes and seconds and temperature information, but also has time calibration, and other functions. This circuit uses AT89S52 SCM as the core, it is low
5、 consumptionan can work in the low-pressure 3V, we can choose 3 5V voltage.This design uses singlechip AT89C52 to control serial real-time clock single chip DS1302, temperature chip DS18b20, display chip Ampire12864LCD to constitute a multi-function calendar circuit to realize real-time time, date,
6、temperature display. Through calculating the lunar and week algorithm for lunar calendar date change and the corresponding week realize the lunar and week show. DS1302 use simple clock chip microcontroller three-line interface for save a lot of interface resources and at the same time, have a backup
7、 battery to back power for the ability Juan fine current charging, ensure circuit after powrefailure still save time and data information, these advantages solved now commonly used real time clock occupy microcontroller more resources and timing unreliable and disadvantages such as power lost. Howev
8、er, because DS1302 is vulnerable to environmental impact,it will make this circuit appear clock precision, clock, etc. So this design through reading the GPS data so as to realize the precise school of electronic calendar.This calendar is powerful, has superior performance in many areas, especially,
9、 in occasion needs higher the accuracy and reliability of the clock . Because of connectting GPS receivers,it can real-time accurate accept GPS satellite signal to electronic calendar timing, so as to ensure the accuracy and reliability of the products.Keyword:DS1302;DS18B20;Ampire12864;AT89C52;GPSI
10、V目 录引言 .1第 1 章 设计要求及方案论证 .21.1 设计要求 .21.基本要求: .22.创新要求: .21.2 系统基本方案选择和论证 .21. 控制芯片的选择方案和论证: .22. 显示模块选择方案和论证: .33. 时钟芯片的选择方案和论证: .44. 温度传感器的选择方案与论证: .45. GPSOEM 板的选择方案与论证: .51.3 电路设计最终方案决定 .5第 2 章 系统的硬件设计与实现 .62.1 电路设计框图 .62.2 系统硬件概述 .62.3 主要电路的设计 .6第 3 章 主要芯片原理及说明 .93.1 时钟芯片 DS1302 .93.2 温度芯片 DS18
11、B20 .103.3 显示芯片 Ampire128*64 .123.5 AT89C52 单片机 .14第 4 章 系统软件设计及流程图 .164.1 总程序流程图 .164.2 日期显示程序设计 .164.3 DS18B20 程序设计 .174.4 阴历,星期转换程序设计 .194.5 GPS 接受与模拟发送程序设计 .244.6 按键程序设计 .25第 5 章 软件仿真及硬件调试 .26V5.1 软件仿真与调试 .265.2 硬件电路设计 .28小结 .29致谢 .30参考文献 .31附录 1:使用说明书 .32附录 2:部分源程序 .336引言随着信息化的发展和人们生活节奏的提高,为了提高
12、工作效率,大家越来越具有时间观念,一个人的成功与失败在很大程度上与这个人是否有时间观念相关。现在还有许多特殊的日子,如各种各样的节日,假日,纪念日,而全部记住这些特殊日子对我们来说是不可能的,幸好我们有一个好帮手来帮助我们记住这些日子,这就是日历。自从日历发明以后,由于其给生活带来许多方便,就逐渐地进入了不少在朝大官的家庭,经过一番变动,编制成自家的日历。再往后,随着日历向大众化,家庭化的发展,人们也就把历书上的干支月令,节气及黄道吉日都印在日历上,并留下供记事用的的大片空白,这是传统的日历。近一个世纪以来,日历又发展成挂历、台历等各种形式。尽管日历的品种增多、花样也不断翻新,但仍旧保持着古老
13、日历的格局。 随着电子技术的发展,又出现了日历的新形式电子万年历,它采用独立芯片控制内部数据运行,以 LED,LCD 显示日期、时间、星期、节气,以及温度等日常信息。人们对万年历的要求也越来越高,要求其不仅计时精度高,而且要具有可靠性好、成本低、功能全,外形美观等特点。目前单片机已经渗透到我们生活的各个领域,几乎很难找到哪个领域没有单片机的踪迹。本设计中还用到了时下的新兴技术GPS 技术, GPS 是具有全天候、精度高和自动测量特点的先进技术,作为新的测量手段和生产力,已经渐渐融入到经济建设和社会发展的各个应用领域。GPS 卫星由 24 颗卫星组成,分别分布在 6 个轨道面上,包括在轨卫星 2
14、7 颗。GPS 由美国国防部控制,可提供军民两种服务。军码定位精度 10 米,仅供美军及盟友使用;民码定位精度 20 米左右,平时向全球开放,战时能实施局部关闭。目前,由我国独立研发的北斗卫星导航系统是一种区域性有源三维卫星定位与通信系统,是除美国和俄罗斯之外第三个成熟的全球定位系统,由此可见我国日后将进入一段 GPS 应用技术迅速发展的阶段。而且 GPS 技术的利益空间巨大。据有关报道,在美国,单单是汽车 GPS 导航系统,2000 年后的市场就已经达到了 30 亿美元 20;在我国,2000 年 汽车导航系统销售收入占整个 GPS 销售收入的 354。而我国 GPS 汽车导航的发展则远远落
15、后,GPS 控制、定位、跟踪方面的应用尚处于导入期。目前应用的时钟芯片会受环境影响,从而使电路出现时钟精度不高、时钟混乱等问题,致使时间不准,这就需要人们不时进行校时工作,这无疑是一件麻烦的事情。本设计将时下将流行的 GPS 与传统 51 单片机结合,用 GPS 校时以达到准确显示时间,日期的目的,只要一个按键(或者通过定时)就可以进行校对,省去了复杂的调时过程。而且通过上面介绍,目前的车载 GPS 应用迅速发展,本设计就可以作为车载 GPS 产品的一部分,因此,具有较大的实际应用价值。7第 1 章 设计要求及方案论证1.1 设计要求本课题的设计的基本要求:完成具有准确校时功能的万年历的设计,
16、制作的实物能用于演示。1.基本要求:(1)具有年、月、日、星期、时、分、秒等功能;(2)阴、阳历能够自动关联;(3)具备年、月、日、星期、时、分、秒校准功能;2.创新要求:(1)具备 GPS 自动校时功能;(2)温度计功能。1.2 系统基本方案选择和论证1. 控制芯片的选择方案和论证:方法一:FPGA 作为主控器件基于 FPGA 的串行接口时钟电路的设计。电路结构(图 1.1) 。外部信息通过串行接口控制器与内部信息进行交换。其中内部传送为并行方式,外部为串行方式;晶振分频将外部输入的 32768Hz 的输入时钟分为 1Hz,便于时钟模块进行计数,采用格雷码计数可以大量减少逻辑门的翻转次数;时
17、钟模块对 1Hz 的时钟进行计数,得到年,月,日,周,时,分,秒等信息,这些信息可以被暂存在 RAM 中,也可以通过控制器对时钟进行置数,或者把置的数暂存在 RAM 中。通过这种方法设计的电路功耗较小,精确度高,但是相对的设计成本也较高 21 ,所以在本次设计中考虑到多方面因素没有采用这种设计方法。图 1.1 基于 FPGA 的串行接口时钟电路结构图方法二:AT89C51 单片机作为控制芯片8AT89C51 单片机芯片作为主控芯片时,该芯片采用 Flash ROM,内部具有 4KB ROM 的存储空间,能在 3V 超低压下正常工作,它与 MCS-51 系列单片机能够完全兼容,但是运用于电路设计
18、中时由于不具备 ISP 在线编程技术, 当在对电路进行调试时,由于程序的错误修改或对程序的新增功能需要烧入程序时,对芯片的多次拔插会对芯片造成一定的损坏。而且在程序较长,生成的 HEX 文件较大时,51 内部的 ROM 将无法满足需求,且通过外部扩展存储器的方法会对单片机的端口有额外要求,这对只有 4 端口的 51 系列单片机来说显然是不能接受的。方法三:AT89C52 单片机作为控制芯片AT89C52 作为单片机主控芯片时,其他参数和功能与 51 单片机相同,同时也与 51 单片机的引脚完全相同,且该芯片内部存储器为 8KB ROM 存储空间,由于本次编写的程序较长,所以需要较大的存储空间来
19、存放编译的 HEX 文件,该芯片的其他功能也正好可以满足此次变成的要求,所以选择 AT89C51 作为主控芯片。2. 显示模块选择方案和论证:方法一:LED 显示用单片机驱动 LED 数码管显示按显示方式分有:静态显示和动态显示。静态显示就是单片机将所要显示的数据送出去后,由于显示驱动电路具有输出锁存功能,数码管始终显示该数据,CPU 不需要控制 LED。等到需要显示新的数据时,再通过单片机传输新的数据。静态显示电路需要采用 1 个并行口接 1 个数码管,数码管的公共端由共阴极或共阳极数码管差别分别接地或接 VCC。由此可知,这种电路每个数码管都要单独占用一个并行 I/O 口,以便单片机传送字
20、形码到数码管控制数码管的显示。其缺点就是当显示位数多时,需要占用较多的 I/口 O。这对于在不扩展 I/O 口情况下只有 4 个并行口的 51 单片机显然是一种巨大的负担。动态扫描采用分时的方法,由单片机轮流控制数个 LED 数码管的片选端,使对应的 LED显示器轮流电亮。在轮流点亮过程中,每个 LED 的点亮时间非常短暂,但是由于人的视觉暂留及 LED 的余辉效应,给人的印象就是一组稳定的显示数据(图 1.2) 。图 1.2 LED 显示LED 显示中的动态显示可以满足设计的需求,但是由于本设计要求显示的信息较多,需要较多的 LED,电路复杂又不够美观。方法二:LCD 1602 显示LCD1
21、602 字符型液晶显示模块是一种专门用于显示字母、数字、符号等点阵式 LCD,目前常用 16*1,16*2,20*2 和 40*2 行等的模块,LCD 1602 16*2 显示如(图 1.3) 。9图 1.3 LCD1602 显示LCD1602 也可以用作显示,但是由于是字符型 LCD,所以不能显示汉字和图形,而本设计中将会需要显示阴历,星期,温度等,所以用汉字显示比较漂亮,LCD1602 无法做到。方案三:LCD Ampire 128*64Ampire128*64 是 ks0108 驱动的字模显示 LCD,它最多可以显示 32 个 16*16 的汉字,采用列式倒序排序显示,显示情况如(图 1
22、.4)。图 1.4 Ampire128*64 显示采用 Ampire128*64 字模液晶显示器,可以很完整地显示本次设计所要显示的数据,而且外部电路连线较少,单片机的端口占用也较少。3. 时钟芯片的选择方案和论证:方法一:单片机计数器直接采用单片机定时/计数器提供秒信号,使用程序实现年、月、日、星期、时、分、秒计数。采用此种方案虽然减少芯片的使用,节约成本,但是,实现的时间误差较大。方法二:DS12887DS12887 是另外一种较常用的时钟芯片,它采用 CMOS 工艺制作,且把时钟芯片所需的晶振和外部锂电池相关电路都集集成在时钟芯片内部,同时它与常用的时钟芯片 MC146818B 和DS1
23、287 管脚兼容,可直接替换。采用 DS12887 芯片设计的时钟电路勿需任何外围电路并具有良好的微机接口。DS12887 时钟芯片具有微电耗、外围电路简单、精度高、工作稳定可靠等优点 24,作为一种新的芯片,它正被广泛用于各需要较高精度的实时时钟领域。但是由于DS12887 是并行时钟芯片,至少需要单片机的一个口和几个其他引脚以正常工作,考虑到实际设计的主控芯片的可用口较少且要达到的功能较多,最终还是不选择 DS12887。方法三:DS1302采用 DS1302 时钟芯片实现时钟和日期的读写,DS1302 芯片是一种高性能的串行时钟芯10片,可自动对年,月,日,时,分,秒,闰年补偿的年进行计
24、数,而且精度较高,内部有 RAM做为数据暂存区,工作电压在 2.5V 到 5.5V 之间,2.5V 工作电压的耗电小于 300nA,同时可以装备后备电池,平时既有后备电池正常上电的情况下以正常电源供电,当断电时,电源降低到一定程度,后备电源取代正常电源为芯片提供电源,这种掉电情况下仍然能继续工作的能力为实现电子万年历的设计提供了保障,由于该芯片采用串行方式传输数据,只占据单片机的 3 跟引脚就能正常工作,所以该时钟芯片正好符合本设计的要求。4. 温度传感器的选择方案与论证:方法一:热敏电阻使用热敏电阻作为传感器,用热敏电阻与一个相应阻值的电阻串联进行分压,利用热敏电阻阻值随温度变化而变化的特性
25、,采集这两个电阻变化的分压值,并进行 A/D 转换。此设计方案需用 A/D 转换电路,从而增加硬件成本。而且市面上的热敏电阻的感温特性曲线并不是严格线性的,会产生较大的测量误差。方法二:DS18B20采用数字式温度传感器 DS18B20,此类传感器为数字式传感器而且仅需要一条数据线进行数据传输,易于与单片机连接,可以去除 A/D 模块,降低硬件成本,简化系统电路。另外,数字式温度传感器还具有测量精度高、测量范围广等优点。5. GPSOEM 板的选择方案与论证:方法一:GPS-MDGPS-MD 的驱动板是一个低功率的 GPS 接收器模块,在定位模式的状态其只消耗 30mA。内部包含一个强大的 32 位的 RISC 处理器和一个微小的射频接收机 IC 卡。GPS-MD 支持 6 个GPIO,可容易的定制。它无需添加另一个微处理器就可以应用开发。GPS-MD 的优点是低功率和高定制。适合各种定制的产品和低成本的校时应用。如(图 1.5)。图 1.5 GPS-MD 模块方法二:Lassen SQ GPS Lassen SQ GPS接收器是一个全功能的,超低的功耗小型接收器适合于各种手机和嵌入式应用。相对于 GPS-MD 来讲, Lassen SQ GPS 接收器体积小,功能强,工作状态稳定,适合小型设计。