基于单片机的电子万年历带计算器.docx
- 文档编号:3296395
- 上传时间:2022-11-21
- 格式:DOCX
- 页数:31
- 大小:203.23KB
基于单片机的电子万年历带计算器.docx
《基于单片机的电子万年历带计算器.docx》由会员分享,可在线阅读,更多相关《基于单片机的电子万年历带计算器.docx(31页珍藏版)》请在冰豆网上搜索。
基于单片机的电子万年历带计算器
基于单片机的电子万年历带计算器
单片机课程设计题目:
基于单机的电子万年历带计算器
专业:
电气工程及其自动化
班级:
姓名:
学号:
指导老师:
小组成员:
成绩:
第一章内容摘要
随着科技的快速发展,电子万年历是一种非常广泛日常计时工具,在现代社会越来越流行。
它可以对年、月、日、时、分、秒进行计时,还具有闰年补偿等多种功能。
本次设计选用DALLAS公司生产的日历时钟芯片DS1302来作为实时时钟芯片,为本系统提供详细的年、月、日和小时、分钟、秒等时间信息,而且DS1302的使用寿命长,误差小,功耗低等优点。
电子万年历采用直观数字显示,可以同时显示年、月、日、时、分、秒等信息,还具有定时和时间校准等功能。
该电路采用STC89C52RC单片机作为核心,功耗小,电压可选用3.3,5.5V电压供电。
本次设计在电子万年历的基础上加上了计算器,通过切换键来实现两个功能的互换。
计算器可以进行7位数的加、减、乘、除,但是最大有效显示结果为9位数。
本系统硬件部分由STC89C52RC单片机、DS1302时钟芯片、1602液晶显示器、4*4键盘等部分构成;拥有时间设置、时间显示、计算器、功能切换等功能。
具体实现功能如下:
(1)显示年、月、日、时、分、秒等信息
(2)具有可调整日期和时间功能
(3)与即时时间同步(不接外部电源)
(4)按切换键后可进行简单的四则运算
第二章关键词
时钟芯片DS1302;单片机STC89C52RC;液晶显示器LCD1602;晶振;万年历;计算器;4*4键盘
第1页
第一章内容摘要......................................................................................................1第二章关键词..............................................................................................................1第三章引言..................................................................................................................3
3.1、概述..............................................................................................................3
3.2、设计任务及要求..........................................................................................3第四章设计内容........................................................................................................4
4.1、单片机的介绍...............................................................................................4
4.1.1、STC89C52单片机...........................................................................4
4.1.2、主要性能............................................................................................5
4.1.3、单片机的应用....................................................................................5
、单片机的应用原理............................................................................54.1.4
4.2、LCD1602的原理及其应用..........................................................................6
4.2.1、LCD1602的介绍...............................................................................6
4.2.2、LCD1602的引脚..............................................................................7
4.2.3、LCD1602的引脚说明.......................................................................8
、LCD1602主要技术参数...................................................................94.2.4
4.3、时钟芯片DS1302的工作原理...................................................................9
4.3.1、DS1302的简介.................................................................................9
、DS1302的结构...............................................................................104.3.2
4.3.3、DS1302的特点...............................................................................10
4.3.4、DS1302的引脚功能.......................................................................11
4.3.5、DS1302电路原理图:
......................................................................11
第五章整体设计........................................................................................................12
5.1、设计方法....................................................................................................12
5.2、硬件设计...................................................................................................12
5.3、系统框架图.................................................................................................12
5.4、电路设计原理图.........................................................................................13
5.5、各部分电路的说明.....................................................................................13
5.5.1、复位电路.........................................................................................13
5.5.2、矩阵键盘.........................................................................................13
5.5.3、LCD1602的显示电路....................................................................14
5.5.4、DS1302时钟电路...........................................................................14
5.6、元件清单.....................................................................................................14第六章测试结果及分析............................................................................................15
6.1、软件设计....................................................................................................15
6.2、软件仿真....................................................................................................15
6.3、硬件调试.....................................................................................................16第七章总结与体会...................................................................................................17第八章致谢..............................................................................................................18第九章参考文献......................................................................................................18第十章附加程序........................................................................................................19
第2页
第三章引言
3.1、概述
众所周知单片机是一种集成在电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计时器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的计算机系统。
本设计要制作的就是单片机于生活中最为常见的几种应用——简易计算器和电子万年历。
本简易计算器和电子万年历以AT89S52单片机作为核心,可以显示简易的计算和时间,时间可以人为设定;另外还可以显示当前的日历,显示格式为年(四位),月(两位),日(两位)。
设置时间的位切换、设定数值、启动定时器、切换日历通过外部中断来实现。
简易计算器不仅可以进行简易的计算还可以显示时间。
简易计算器显示电路由LCD1602组成,制作该装置的材料需要有软硬件的支持,硬件方面STC89C52单片机,晶振,电源,液晶屏LCD1602,DS1302时钟芯片。
3.2、设计任务及要求
1、本课题设计的是简单的计算器和万年历,可以进行四则运算和显示时间,为了得到较好的显示效果,所以采用背光LCD1602显示数据和结果;2、计算器部分:
键盘包括数字键(0-9)、符号键(+、-、*、/、.)、清除键(ON/C)和等号键(=),故需要16个按键,设计中采用4*4矩阵键盘;3、时间显示的部分,有年、月、日、时、分、秒,时间显示和计算器控制键的分别设置,故需要一个功能切换的按键。
显示时间状态时,可以对当前的时间进行设置;
4、执行程序:
开机显示零,等待键入数值,当键入数字,通过LCD显示出来,当键入+、-、*、/运算符(包过小数),计算器在内部执行数值转换和存储,并
第3页
等待再次键入数值后将显示键入的数值,按等号就会在LCD上输出运算结果;5、错误提示:
当单片机执行程序中有错误时,会在LCD上显示相应的提示,如:
当输入的数值或计算器得到的结果大于计算器的显示范围时,计算器会在LCD上提示溢出(显示-1);当除数为0时,计算器会在LCD上提示错误,显示“0”。
第四章设计内容
4.1、单片机的介绍
4.1.1、STC89C52单片机
STC89C52是一种低功耗、高性能CMOS8位微控制器,具有8K在系统可编程Flash存储器。
使用Atmel公司高密度非易失性存储器技术制造,与工业89C51产品指令和引脚完全兼容。
片上Flash允许程序存储器在系统可编程,亦适于常规编程器。
在单芯片上,拥有灵巧的8位CPU和在系统可编程Flash,使STC89C52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。
STC89C52具有以下标准功能:
8k字节Flash,256字节RAM,32位I/O口线,看门狗定时器,2个数据指针,3个16位定时器/计数器,1个6向量2级中断结构,全双工串行口,片内晶振及时钟电路。
另外,AT89S52可降至0Hz静态逻辑操作,支持2种软件可选择节电模式。
空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作。
掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。
第4页
4.1.2、主要性能
1、与MCS-51单片机产品兼容2、8K字节在系统可编程Flash存储器3、1000次擦写周期4、全静态操作:
0Hz,33Hz5、三级加密程序存储器6、32个可编程I/O口线
7、三个16位定时器/计数器8、八个中断源
9、全双工UART串行通道10、低功耗空闲和掉电模式
l1、掉电后中断可唤醒l2、看门狗定时器
l3、双数据指针l4、掉电标识符
4.1.3、单片机的应用
(1)在智能仪器仪表上的应用
(2)在工业控制中的应用(3)在家用电器中的应用(4)在计算机网络和通信领域中的应用(5)单片机在医用设备领域中的应用(6)在各种大型电器中的模块化应用(7)单片机在汽车设备领域中的应用
4.1.4、单片机的应用原理
STC89C52单片机为40引脚双列直插芯片,有四个I/O口P0,P1,P2,P3,MCS-51
单片机共有4个8位的I/O口(P0、P1、P2、P3),每一条I/O线都能独立地作输出或输入。
单片机的最小系统如下图4.1.4所示,18引脚和19引脚接时钟电路,XTAL1
第5页
接外部晶振和微调电容的一端,在片内它是振荡器倒相放大器的输入,XTAL2接外部晶振和微调电容的另一端,在片内它是振荡器倒相放大器的输出。
第9引脚为复位输入端,接上电容,电阻及开关后够上电复位电路,20引脚为接地端,40引脚为电源端。
图4.1.4如下:
单片机AT89S52的引脚图(图4.1.4)
4.2、LCD1602的原理及其应用
4.2.1、LCD1602的介绍
LCD1602已很普遍了,具体介绍我就不多说了,市面上字符液晶绝大多数是基于HD44780液晶芯片的,控制原理是完全相同的,因此HD44780写的控制程序可以很方便地应用于市面上大部分的字符型液晶。
字符型LCD通常有14条引脚线或16条引脚线的LCD,多出来的2条线是背光电源线VCC(15脚)和地线GND(16脚),其控制原理与14脚的LCD完全一样。
第6页
4.2.2、LCD1602的引脚
图4.2.2
1602LCD采用标准的14脚(无背光)或16脚(带背光)接口,各引脚接口说
明如下表4.2.3。
第7页
4.2.3、LCD1602的引脚说明
表4.2.3
第1脚:
VSS为地电源。
第2脚:
VDD接5V正电源。
第3脚:
VL为液晶显示器对比度调整端,接正电源时对比度最弱,接地时对比度最高,对比度过高时会产生“鬼影”,使用时可以通过一个10K的电位器调整对比度。
第4脚:
RS为寄存器选择,高电平时选择数据寄存器、低电平时选择指令寄存器。
第5脚:
R/W为读写信号线,高电平时进行读操作,低电平时进行写操作。
当RS和R/W共同为低电平时可以写入指令或者显示地址,当RS为低电平R/W为高电平时可以读忙信号,当RS为高电平R/W为低电平时可以写入数据。
第6脚:
E端为使能端,当E端由高电平跳变成低电平时,液晶模块执行命令。
第7,14脚:
D0,D7为8位双向数据线。
第8页
第15脚:
背光源正极。
第16脚:
背光源负极。
4.2.4、LCD1602主要技术参数
显示容量:
16×2个字符
芯片工作电压:
4.5—5.5V
工作电流:
2.0mA(5.0V)
模块最佳工作电压:
5.0V
字符尺寸:
2.95×4.35(W×H)mm
4.3、时钟芯片DS1302的工作原理
4.3.1、DS1302的简介
DS1302是美国DALLAS公司推出的一种高性能、低功耗(小于1mw)、带RAM的实时时钟电路,它可以对年、月、日、周日、时、分、秒进行计时,具有闰年补偿功能,工作电压为2.5V,5.5V。
采用三线接口与CPU进行同步通信,并可采用突发方式一次传送多个字节的时钟信号或RAM数据。
DS1302内部有一个31×8的用于临时性存放数据的RAM寄存器。
DS1302是DS1202的升级产品,与DS1202兼容,但增加了主电源/后备电源双电源引脚,同时提供了对后备电源进行涓细电流充电的能力。
第9页
4.3.2、DS1302的结构
DS1302的引脚排列,其中Vcc1为后备电源,VCC2为主电源。
在主电源关闭的情况下,也能保持时钟的连续运行。
DS1302由Vcc1或Vcc2两者中的较大者供电。
当Vcc2大于Vcc1+0.2V时,Vcc2给DS1302供电。
当Vcc2小于Vcc1时,DS1302由Vcc1供电。
X1和X2是振荡源,外接32.768kHz晶振。
RST是复位/片选线,通过把RST输入驱动置高电平来启动所有的数据传送。
RST输入有两种功能:
首先,RST接通控制逻辑,允许地址/命令序列送入移位寄存器;其次,RST提供终止单字节或多字节数据传送的方法。
当RST为高电平时,所有的数据传送被初始化,允许对DS1302进行操作。
如果在传送过程中RST置为低电平,则会终止此次数据传送,I/O引脚变为高阻态。
上电运行时,在Vcc>2.0V之前,RST必须保持低电平。
只有在SCLK为低电平时,才能将RST置为高电平。
I/O为串行数据输入输出端(双向)。
SCLK为时钟输入端。
4.3.3、DS1302的特点
1、时钟计数功能,可以对秒、分、时、日、月、年的计数。
年计数可达到2099年。
3、有31*8位的额外数据暂存寄存器(即RAM,掉电丢失)
4、最少I/O引脚传输,通过三引脚控制
5、工作电压:
2.0-5.5V
6、工作电流小于300nA(2.0V)
7、读写时钟寄存器或内部RAM(31*8位的额外
8、数据暂存寄存)可以采用单字节模式(一次读写单个字节)和突发模式(一次读写多个字节)
9、8-pinDIP(直插封装)或8-pinSOICs(贴片封装)
第10页
4.3.4、DS1302的引脚功能
4.3.5、DS1302电路原理图:
电路原理图如图4.3.5,DS1302与单片机的连接也仅需要3条线:
CE引脚、SCLK串行时钟引脚、I/O串行数据引脚,Vcc2为备用电源,外接32.768kHz晶振,为芯片提供计时脉冲。
图4.3.5
第11页
第五章整体设计
5.1、设计方法
本电路设计采用AT89S52单片机为核心,利用晶振产生频率为1HZ的时钟脉冲信号,利用液晶屏LCD1602显示计算及其时间信息,通过对AT89S52单片机的编程控制液晶屏LCD1602的显示。
显示时间和简易计算的信息同在LCD1602,通过按键切换选择。
外部按键可及时设定或调整时间或计算的信息。
5.2、硬件设计
本系统以AT89S52单片机为核心,本系统选用12MHZ的晶振,,使得单片机有合理的运行速度。
起振电容22pF对振荡器的频率高低、振荡器的稳定性和起振的快速性影响较合适,复位电路为按键高电平复位。
DS1302时钟芯片选用32.768KHz的晶振,以此保持时间的准确性。
并在后备电源处提供了后备电源,当没有外接电源时,后备电源就供电,这样就可以保持时钟芯片的不断电及掉电也可以准确计时。
本系统中的后备电源采用3v的电子电源,其寿命可达一年以上。
液晶显示器采用背光的,本次设计选用16引脚的LCD1602。
5.3、系统框架图
第12页
5.4、电路设计原理图
图5.4
5.5、各部分电路的说明
5.5.1、复位电路
51单片机是高电平复位。
所以本设计采用的是上电复位和手动复位相结合的方式。
5.5.2、矩阵键盘
计算器输入数字和其他功能按键要用到很多按键,如果采用独立按键的方式,在这种情况下,编程会很简单,但是会占用大量的I/O口资源,因此在很多情况下都不采用这种方式,而是采用矩阵键盘的方案。
矩阵键盘采用四条I/O线作为行线,四条I/O线作为列线组成键盘,在行线和列线的每个交叉点上设置一
第13页
个按键。
这样键盘上按键的个数就为4*4个。
这种行列式键盘结构能有效地提高单片机系统中I/O口的利用率。
5.5.3、LCD1602的显示电路
本设计采用液晶屏LCD1602来显示输出数据,通过D0-D7引脚向LCD写指令字或写数
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 单片机 电子 万年历 计算器