基于-单片机电子万年历设计
- 格式:doc
- 大小:1.93 MB
- 文档页数:44
毕业设计报告(论文) 基于单片机的电子万年历设计所属系电子工程系专业自动化学号01208435姓名柏亚林指导教师林起讫日期2012.3 --- 2012.5设计地点东南大学成贤学院东南大学成贤学院毕业设计报告(论文)诚信承诺本人承诺所呈交的毕业设计报告(论文)及取得的成果是在导师指导下完成,引用他人成果的部分均已列出参考文献。
如论文涉及任何知识产权纠纷,本人将承担一切责任。
学生签名:日期:摘要随着科技的快速发展,时间的流逝,至从观太阳、摆钟到现在电子钟,人类不断研究,不断创新纪录。
美国DALLAS公司推出的具有涓细电流充电能的低功耗实时时钟电路DS1302。
它可以对年、月、日、周日、时、分、秒进行计时,还具有闰年补偿等多种功能,而且DS1302的使用寿命长,误差小。
对于数字电子万年历采用直观的数字显示,可以同时显示年、月、日、周日、时、分、秒和温度等信息,还具有时间校准等功能。
该电路采用AT89S52单片机作为核心,功耗小,能在3V的低压工作,电压可选用3~5V电压供电。
综上所述此万年历具有读取方便、显示直观、功能多样、电路简洁、成本低廉等诸多优点,符合电子仪器仪表的发展趋势,具有广阔的市场前景。
本电路为实现电子万年历的功能,采用单片机AT89S52,辅助以必要的外围电路,用C语言编写程序,并进行模块化设计而成的电子万年历系统.它通过LCD能正确显示阴阳历星期和时分秒,具有功能稳定,精确度高和可调的特点。
关键词:单片机AT89S52;DS1302;LCD;AbstractAlong with the rapid development of technology, the passage of time, to view the sun, from the pendulum clocks are now electric clock, human continuously research, innovation record. The United States out Juan DALLAS has fine current charge of low power consumption can real time clock circuit DS1302. It can be to year, month, day, Sunday, when, minutes and seconds for the time, also has a leap year compensation and other functions, and the DS1302 long service life and small error. For digital electronic calendar using intuitive digital display, can also shows that year, month, day, Sunday, when, minutes and seconds and temperature, information, but also has time calibration etc. Function. This circuit AT89S52 SCM as the core, power consumption is small, can be in 3 V of low-pressure work, voltage can choose 3 ~ 5 V voltage power supply.To sum up the calendar has read the convenient, direct display, functional diversity, simple circuit, low cost, and many other advantages, conform to the trend of the development of electronic instruments, and has a broad market prospect.This circuit to realize the function of electronic calendar, USES the monolithic integrated circuit AT89S52, aided by the necessary peripheral circuit, with the C language program, and the modular design and into electronic calendar system. It through the LCD can display correct YinYangLi week and determined when, with function stability, high precision and adjustable characteristics.Keywords: monolithic integrated circuit AT89S52; DS1302; LCD;目录摘要IAbstractII第一章绪论11.1 设计目的与意义11.2 方案选择与DIY电子万年历的研究情况1 1.2.1时钟芯片选择11.2.2键盘选择21.2.3显示模块选择31.2.4 DIY万年历的研究情况4第二章主要硬件描述42.1 89C52模块42.2 显示模块LCM1286452.2.1液晶模块概述52.2.2液晶模块特点52.3 芯片DS1302简介52.4 芯片DS18B20简介6第三章硬件设计与实现63.1单片机最小系统的设计73.2时钟电路的设计73.3温度采集模块的设计83.4人机交互模块设计8第四章系统软件设计与实现104.1主要算法流程图描述104.2 LCM16824子程序的实现154.3 DS1302子程序的实现164.4 DS18B20子程序的实现174.5键盘子程序的实现184.6主程序的实现19第五章测试结果分析与结果205.1测试结果分析205.2测试总结20结束语21致22参考文献24附录一作品实物图25 附录二原理图26附录三部分程序27第一章绪论1.1 设计目的与意义随着电子技术的高速发展,对电子方面人才的要求越来越高,不仅要求其具备相关的专业理论知识,还要求其具有较强的设计、制作等实践动手能力.此次学校举行的电子设计无疑是对从事电子相关专业的人的一次很好的锻炼和考验,是培养信息人才的一次良好的机会,为其提供了一个理论知识与实践相结合的平台。
通过本次课程设计,引导学生结合所学的电路理论和程序设计的知识,思考设计方案,以小组合作方式,分工完成各个部分,从而掌握相关的硬件结合软件显示电路的设计和调试技术,一方面提高了学生的实践动手和协作能力,另一方面培养了学生综合运用所学理论知识进行工程设计的能力。
1.2 方案选择与DIY电子万年历的研究情况1.2.1时钟芯片选择方案一:不使用芯片,采用单片机的定时计数器这种方法原理是利用单片机芯片的定时器来产生固定的时间,模拟时钟的时, 分,秒。
如:利用AT80C52芯片,定时器用工作方式1,每50ms产生一个中断,循环20次,即1s周期。
每一个周期加1,那么1min为60个周期,1h就是60*60=3600个周期,一天就是3600*24=86400个周期。
此方法优点是可以省去一些外围的芯片,但这种方法只能适用于一些要求不是十分精确,不做长期保留的场合。
方案二:并行接口时钟芯片DS12887特点:采用单片机应用系统并行总线(三总线)扩展的接口电路,采用这种接口电路具有操作速度快,编程方便的优点。
但是对于80C52单片机来说,低位地址线要通过锁存器输出,还要地址译码器,而且并行口芯片的体积相对较大,DS12887管脚图如图1所示。
图1 DS12887管脚图方案三:串行接口时钟芯片DS1302芯片主特性:(1)实时时钟具有能计算2100年之前的秒分时日日期星期月年的能力,还有闰年调整的能力(2)8位暂存数据存储RAM�(3)串行I/O 口使得管脚数量最少�(4)工作电压围2.0 ~5.5V�(5)工作电流2.0V 时,小于300nA�(5)读/写时钟或RAM 数据时有两种传送方式单字节传送和多字节传送字符组方式�(6)8脚DIP 封装或可选的8 脚SOIC 封装根据表面装配�(7)简单3 线接口�(8)与TTL 兼容Vcc=5V�(9)可选工业级温度围-40 +85优点:串行接口的日历时钟芯片,使用简单,接口容易,与微型计算机连线较少等特点,在单片机系统尤其是手持式信息设备中己得到了广泛的应用。
所以,最终选择串行时钟芯片DS1302,DS1302的管脚图如图2所示。
图2 DS1302管脚图1.2.2键盘选择方案一:矩阵式键盘矩阵式键盘电路图如图3所示。
图3 矩阵式键盘行列式键盘的原理就是每一行线与每一列线的交叉地方不相通,而是接上一个按键,通过按键来接通。
特点: 以省出不少的I/O 口资源,程序编写相对复杂点,适用于键数比较多的情况。
方案二:独立式键盘独立式键盘电路图如图4所示。
图4 独立式键盘独立式键盘是指各个按键相互独立地连接到各自的单片机的I/O 口,I/O口只需要做输入口就能读到所有的按键。
特点: 电路简单,程序容易写,适用于按键数较少的情况。
所以我们选择独立式键盘。
1.2.3显示模块选择方案一:LED数码管显示数码管显示比较常用的是采用CD4511和74LS138实现数码转换,数码显示分动态显示和静态显示,静态显示具有锁存功能,可以使数据显示得很清楚,但浪费了一些资源。
目前单片机数码管普通采用动态显示。
编程简单,但只能显示数字,不能显示中文。
方案二:LCD1602能够显示英文和数字。
1602液晶模块部的字符发生存储器(CGROM)已经存储了160个不同的点阵字符图形,这些字符有:阿拉伯数字、英文字母的大小写、常用的符号。
方案三:LCD12864作为一种输出方式,液晶显示最大的特点就是能够实现友好的人机界面,它己经广泛应用于现代工业控制和智能化仪器仪表等领域,它己经成为单片机就用开发领域典型模块之一。
能够方便的显示文字和数字。
所以最终选择LCD12864。
1.2.4 DIY万年历的研究情况目前电子爱好者,所设计的万年历大部分都采用LCD1602或数码管显示,只能显示阳历,不能显示阴历,而且没有阴历相对应的的天干地支和生肖年,没有达到多功能的效果。
我们采用LCD12864显示,通过算法实现,能正确显示阴历,具有良好的界面,为了追求时间的准确,我们采用芯片DS1302,通过单片机控制,读出时间显示在LCD上。