基于单片机的电子万年历设计摘要:本文借助电路仿真软件Protues对基于AT89S52单片机的电子万年历的设计方法及仿真进行了全面的阐述。
该电子万年历在硬件方面主要采用AT89S52单片机作为主控核心,由DS1302时钟芯片提供时钟、12864LCD液晶显示屏显示。
在软件方面,主要包括日历程序、时间调整程序,显示程序等。
所有程序编写完成后,在Keil软件中进行调试,确定没有问题后,在Proteus软件中进行电路设计并仿真。
论文主要研究了液晶显示器LCD及时钟芯片DS1302,温度传感器DS18B20与单片机之间的硬件互联及通信,对数种硬件连接方案进行了详尽的比较,在软件方面对日历算法也进行了论述。
研究结果表明,由于万年历的应用相当普遍,所以其设计的核心在于硬件成本的节约软件算法的优化,力求做到物美价廉,才能拥有更广阔的市场前景。
关键词:单片机;DS1302;DS18B20;LCD12864The Design Of Electronic Calender Based On MCU Abstract:This paper mainly discuss the design of electronic calender based on AT89S52 with the help of Protues.On the hardware side, the electronic calendar using AT89S52 microcontroller as the main control center, clock provided by the DS1302 clock chip , 12864LCDdot matrix LCD display. In terms of software, including calendar program, time to adjust procedures, display procedures. All programming is complete, the Keil software debugging, make sure there is no problem, in the Proteus software embedded within the simulated MCU.This article focus on liquid crystal screen LCD12864 and clock chip DS1302,temperature sensor DS18B20 which connected and communicated with Microcontroller.Several solutions will also compared with each other.On software side,calender calculation will be discussed as well.The results are as follows:as electronic calender are widely used in our daily life.It should be chip and convenient so as to win more profit.Keywords:Microcontroller,DS1302;DS18B20;LCD12864目录1 引言 (1)1.1课题的背景、目的和意义 (1)1.2课题设计的主要内容 (2)2 课题设计方案 (2)2.1 系统的总体方案 (2)2.2温度传感器的选择 (3)2.2.1 温度传感器的介绍 (3)2.2.2 DS18B20简介 (4)2.2.3 DS18B20的工作原理 (5)2.3微控制器的选择 (6)2.3.1 AT89S52的简介 (6)2.3.2 AT89S52的引脚及性能 (7)2.4显示方式的选择 (8)2.4.1 12864液晶的简介 (8)2.4.2 12864液晶的结构及原理 (9)2.5时钟芯片的选择 (12)2.5.1 DS1302的介绍 (12)2.5.2 DS1302的工作原理及应用 (12)2.6蜂鸣器及键盘的选择 (16)3系统硬件电路的设计 (16)3.1 AT89S52单片机系统 (17)3.2 温度采集电路的设计 (18)3.3 DS1302实时时钟电路设计 (19)3.4 LCD126864液晶显示设计 (19)3.5键盘和蜂鸣器电路设计 (20)3.6系统原理图设计 (21)4 系统软件详细设计 (21)4.1 开发软件介绍 (21)4.2 主程序设计 (22)4.3 DS1302实时时间流程 (23)4.4温度采集子程序设计 (24)4.5 LCD12864显示子程序设计 (25)4.6键盘及蜂鸣器软件设计 (25)5 测试结果及分析 (26)5.1 硬件及软件综合调试 (26)5.2 调试工程中产生的问题及解决 (27)5.3 测试结果及分析 (27)6 结论 (29)参考文献 (30)附录 (31)致谢 (32)1 引言1.1课题的背景、目的和意义随着人们生活水平的提高和生活节奏的加快,对时间的要求越来越高,精准数字计时的消费需求也是越来越多。
二十一世纪的今天,最具代表性的计时产品就是电子时钟,它是近代世界钟表业界的第三次革命。
第一次是摆和摆轮游丝的发明,相对稳定的机械振荡频率源使钟表的走时差从分级缩小到秒级,代表性的产品就是带有摆或摆轮游丝的机械钟或表。
第二次革命是石英晶体振荡器的应用,发明了走时精度更高的石英电子钟表,使钟表的走时月差从分级缩小到秒级。
第三次革命就是单片机数码计时技术的应用,使计时产品的走时日差从分级缩小到1/600万秒,从原有传统指针计时的方式发展为人们日常更为熟悉的夜光数字显示方式,直观明了,并增加了全自动日期、星期的显示功能,它更符合消费者的生活需求!因此,电子时钟的出现带来了钟表计时业界跨跃性的进步。
我国生产的电子时钟有很多种,总体上来说以研究多功能电子时钟为主,使万年历除了原有的显示时间,日期等基本功能外,还具有闹铃,报警等功能。
商家生产的电子万年历更从质量,价格,实用上考虑,不断的改进电子时钟的设计,使其更加的具有市场。
由于在日常生活当中,人们喜欢按时间办事或一定要按时间办事,上班下班、上课下课、开会、乘车、轮船启航、飞机起飞等等,所以我们经常可以在一个家庭、学校、工厂、公司等等集体或单位看到时钟或者纸挂年历。
但是时钟只能显示具体某一时、分、秒信息,不能显示年、月、日、星期和农历信息;纸挂年历只能查看年、月、日、星期、和农历信息,而不能看具体时、分、秒信息。
且假如我们不知道现在具体是什么时间,单凭纸挂年历或时钟不能帮上我们的忙,然而,电子万年历这时就起了非常大的作用,因为电子万年历不仅能显示时、分、秒信息,也能显示、年、月、日、星期和农历信息,是集时钟和纸挂年历功能一体的产品,且人们查看起来极其方便,一目了然。
所以,如果我们开发出一款实用电子万年历产品,其经济前景将非常可观。
1.2课题设计的主要内容本文介绍了基于AT89S52单片机设计的电子时钟设计。
主要了解AT89S52单片机的硬件结构和本毕业设计所要外扩的12864LCD液晶显示及其驱动方法,以及对时钟芯片和温度传感器的控制,并在此基础上实现了DS1302时钟基本电路和DS18B20温度的采集基本电路的设计,以及键盘电路和蜂鸣器电路的设计;然后使用单片机C语言进行主程序和时钟程序的设计,以及相关外围器件的程序驱动设计,程序采用模块化结构,使得逻辑关系简单明了,维护方便。
本设计为软件,硬件相结合的一组设计。
除了对MCU及其驱动电路,相关芯片的实际电路的焊接外,还要进行软件的编译和对硬件电路的测试和调试,最终实现时间,温度,问候语,节日提醒等相关显示,及定时闹钟,掉电保护等功能。
2 课题设计方案2.1 系统的总体方案经过查阅资料,拟定系统总体方案如图1所示。
整体系统包括温度采集模块、键盘模块、AT89S52主控制模块、DS1302时钟模块、蜂鸣器发声模块和12864LCD显示模块。
其主要功能是采用单片机控制检测模块的温度采集和时钟信息、键盘输入信息,将温度信号和时钟信号传输给接受端单片机控制系统。
接受端单片机系统在接收端接受信号,并在LCD液晶上显示出来并在相应的时间,问候语,节日提醒,并定时闹钟发声。
图1. 系统的总体框图2.2温度传感器的选择2.2.1 温度传感器的介绍温度传感器就是讲检测道德温度转换成电压的有效途径。
当实际测量热源时,首先需要用温度传感器进行温度的采集。
通用的温度传感器有热电偶,热敏电阻,RTD(Resistance Temperature Detector)和集成电路传感器等,各种传感器分别有其不同的特点。
热电偶:自己供电、简单坚固、价格低、采用各种物理形式、温度范围广。
但是也有很多缺点:非线性、电压低、要求参考温度、稳定性差、敏感性差。
RTD:优点是稳定、准确度高、线性度也高于热电偶。
缺点是价格高、速度低、要求电流电源、电阻变化小、三线测量。
热敏电阻器:优点是输出高、速度快、两线欧姆测量。
缺点是非线性、温度范围有限、易碎、要求电流电源等。
数字温度传感器:由单片集成的数字温度传感器由于其外部电路结构简单,使用方便,开发成本低,开发周期端而得到广泛的应用。
以前的温度传感器大部分输出的是模拟信号,不能直接送人单片机等微处理器进行测量,而且要做多点测量十分麻烦,所以在多点测温的系统中得不到广泛的应用。
意法半导体公司(ST)开发的LM75数字温度传感器是二线串行可编程温度传感器,用户编程设置监控值、滞后值。
LM75通信时,通过与行业标准协议兼容的2线总线完成的,它允许读入当前温度,对设定值滞后编程,并配置器件。
美国Dallas公司开发的DS18B20单线数字温度传感器具有与一般模拟温度传感器相当的测量范围和精度,输出直接表示温度值的12位(二进制)数字。
由于DS18B20具有全球唯一的序列号,故一根总线可以挂任意多个DS18B20。
DS18B20有总线供电和外部电源供电两种供电方式,可以非常方便地构成单线多点温度测量系统。
所以本系统选择DS10B20数字温度传感器。
2.2.2 DS18B20简介DS18B20由美国Dallas公司开发的单总线数字温度传感器,外部电路连接非常的简单,开发非常方便。
外部引脚图及引脚详细说明如图2和表1所示【7】。
图2 DS18B20引脚图及引脚详细说明表1.DS18B20的引脚详细说明2.2.3 DS18B20的工作原理DS18B20的温度检测与数字数据输出全集成于一个芯片之上,从而抗干扰力更强。