毕业论文基于单片机的万年历的设计与制作无格式版.docx
- 文档编号:5987553
- 上传时间:2023-01-02
- 格式:DOCX
- 页数:45
- 大小:567.91KB
毕业论文基于单片机的万年历的设计与制作无格式版.docx
《毕业论文基于单片机的万年历的设计与制作无格式版.docx》由会员分享,可在线阅读,更多相关《毕业论文基于单片机的万年历的设计与制作无格式版.docx(45页珍藏版)》请在冰豆网上搜索。
毕业论文基于单片机的万年历的设计与制作无格式版
基于单片机的万年历的设计与制作
摘要:
单片机应用技术飞速发展,纵观我们现在生活的各个领域,从导弹的导航装置,到飞机上各种仪表的控制,从计算机的网络通讯与数据传输,到工业自动化过程的实时控制和数据处理,以及我们生活中广泛使用的各种智能IC卡、电子宠物等,这些都离不开单片机。
单片机是集CPU、RAM、ROM、定时、计数和多种接口于一体的微控制器。
它体积小,成本低,功能强,广泛应用于智能产业和工业自动化上。
电子万年历是一种非常广泛日常计时工具,对现代社会越来越流行。
它可以对年、月、日、周日、时、分、秒进行计时,还具有闰年补偿等多种功能,而且DS1302的使用寿命长,误差小。
对于数字电子万年历采用直观的数字显示,可以同时显示年、月、日、周、时、分、秒和温度等信息,还具有时间校准等功能。
该电路采用AT89S52单片机作为核心,功耗小,能在3V的低压工作,电压可选用3~5V电压供电。
本设计是基于51系列的单片机进行的电子万年历设计,可以显示年月日时分秒及周信息,具有可调整日期和时间功能。
在设计的同时对单片机的理论基础和外围扩展知识进行了比较全面准备。
在硬件与软件设计时,没有良好的基础知识和实践经验会受到很大限制,每项功能实现时需要哪种硬件,程序该如何编写,算法如何实现等,没有一定的基础就不可能很好的实现。
在编写程序过程中发现以现有的相关知识要独自完成编写任务困难重重,在老师和同学的帮助下才完成了程序部分的编写。
万年历的设计过程在硬件与软件方面进行同步设计。
硬件部分主要由AT89S52单片机,LCD1602显示电路,以及调时按键电路等组成。
单片机使用了AT89S52单片机,该单片机适合于许多较为复杂控制应用场合。
显示由LCD1602并行输出。
软件方面主要包括日历程序、时间调整程序,显示程序等。
程序采用C语言编写,以便更简单地实现调整时间功能。
所有程序编写完成后,在Keil软件中进行调试,确定没有问题后,在Proteus软件中嵌入单片机内进行仿真。
最后在老师同学的帮助以及自己的努力下完成了此次电子万年历的设计。
关键词:
时钟电钟;DS1302;动态扫描;51单片机
Abstract
SCMapplicationtechnologydeveloprapidly,lookingaroundusnowinallspheresoflife,frommissiles,navigationequipment,tothevariousinstrumentsontheaircraftcontrolfromacomputernetworkcommunicationsanddatatransmission,industrialautomationtoreal-timeprocesscontrolanddataprocessing,andourlivesextensiveuseofthesmartcard,electronicpets,whichisinseparablefromthemicrocontroller.Monolithicsingle-chipisthesetofCPU,RAM,ROM,thetiming,numberandvarietyofinterfaceintegratedmicrocontrollers.Itssmallsize,lowcost,highperformance,whicharewidelyusedinsmartindustries,andindustrialautomation.E-calendardaytimeisaverywiderangeoftools,increasinglypopularinmodernsociety.Itcanbeyear,month,day,Sunday,hours,minutes,secondsfortime,butalsohasaleapyearcompensationtoavarietyoffunctions,andtheDS1302'slonglife,smallerror.Forthedigitalelectroniccalendarusinganintuitivedigitaldisplaycansimultaneouslydisplayyear,month,day,Sunday,hours,minutes,seconds,andtemperatureandotherinformation,butalsoatime-calibrationandotherfunctions.ThecircuitusesAT89S52microcontrollerasthecore,powerconsumption,low-voltageworkin3V,thevoltagecanchoose3~5Vvoltagesupply.
Thedesignisbasedon51seriesofmicrocontrollerstothedesignofelectroniccalendar,youcandisplaydateinformationonwhentheminutesandseconds,andweeks,withadjustabledateandtimefunctions.AtthesametimeinthedesignofthetheoreticalbasisoftheMCUandperipheralexpansionofknowledgeofthemorecomprehensivepreparation.Thehardwareandsoftwaredesign,thereisnogoodbasicknowledgeandpracticalexperiencewillbegreatlylimited,eachfeatureisrequiredtoachievethekindofhardware,procedures,howtowrite,howtoimplementsuchalgorithms,thereisnocertainfoundationcannotbegoodimplementation.Foundduringthepreparationprocesstotheexistingknowledgetocompletethepreparationofthetaskalonedifficult,Inthehelpofteachersandstudentstocompletetheprogrampartofthepreparation.
Calendarofthedesignprocessinhardwareandsoftwaretosynchronizethedesign.HardwaremainlybytheAT89S52microcontroller,LCD1602displaycircuit,andthetunecomposedofthecircuitwhenthebutton.IntheSCMchoiceIusedtheAT89S52microcontroller,whichissuitableformanyofthemorecomplexcontrolapplications.MonitortheuseofLCD1602.Thesoftwareincludescalendarprogram,timetoadjustprocedures,displayprograms.Programswritteninassemblylanguageusedinordertomoreeasilyadjustthetimeandtherealizationofthelunarcalendardisplay.Allprogrammingiscomplete,theKeilsoftwaredebugging,makesurethatnoproblems,intheProteussoftwarewithinamicrocontrollerembeddedinthesimulation.Thefinaloveralltheteachertohelpstudents,aswellastheirowneffortstocompletethedesignoftheelectroniccalendar.
Keywords:
Clockelectricclock:
DS1302;Dynamicscan:
51SCM
引言
当今社会电子技术迅速的发展,特别是随着大规模集成电路的出现,给人类生活带来了根本性的改变。
尤其是单片机技术的应用产品已经走进了千家万户。
电子万年历的出现给人们的生活带来诸多方便。
电子钟是一种利用数字电路来显示秒、分、时的计时装置,与传统的机械钟相比,它具有计时准确、显示直观等优点,因而得到广泛应用。
随着人们生活环境的不断改善和美化,在很多场合可以看到数字电子钟。
第一章设计方案论证
1.1设计要求:
(1)具有年、月、日、星期、时、分、秒等显示功能;
(2)具有温度显示功能;
(3)具备年、月、日、星期、时、分、秒校准、调整功能。
1.2系统基本方案选择及论证
1.2.1单片机芯片的选择方案和论证
方案一:
采用89C51芯片作为硬件核心,采用FlashROM,内部具有4KBROM存储空间,能于3V的超低压工作,而且与MCS-51系列单片机完全兼容,但是运用于电路设计中时由于不具备ISP在线编程技术,当在对电路进行调试时,由于程序的错误修改或对程序的新增功能需要烧入程序时,对芯片的多次拔插会对芯片造成一定的损坏。
方案二:
采用AT89S52,片内ROM全都采用FlashROM;能以3V的超底压工作;同时也与MCS-51系列单片机完全该芯片内部存储器为8KBROM存储空间,同样具有89C51的功能,且具有在线编程可擦除技术,当在对电路进行调试时,由于程序的错误修改或对程序的新增功能需要烧入程序时,不需要对芯片多次拔插,所以不会对芯片造成损坏。
所以选择采用AT89S52作为主控制系统.
1.2.2显示模块的选择方案和论证
方案一:
采用LED数码管动态扫描,LED数码管价格适中,对于显示数字很合适,但考虑本次设计中要显示多位日期数据,并且要显示温度数据,在实际电路连接时会需要很多连线,增加出问题的可能性,所以不采用此方案。
方案二:
采用点阵式数码管显示,点阵式数码管是由八行八列的发光二极管组成,对于显示文字比较适合,如采用在显示数字显得太浪费,且价格也相对较高,所以也不用此种作为显示.
方案三:
采用LCD液晶显示屏,液晶显示屏的显示功能强大,可显示大量文字,图形,显示多样,清晰可见,虽价格较之数码管昂贵些,但会减少设计中的很多连线。
并且可以同时显示大量信息,所以在此设计中采用LCD液晶显示屏。
所以采用了LCD液晶显示屏作为显示。
1.2.3时钟芯片的选择方案和论证
方案一:
不使用芯片,直接采用单片机定时计数器提供秒信号,使用程序实现年、月、日、星期、时、分、秒计数。
采用此种方案虽然减少芯片的使用,节约成本,但是,实现的时间误差较大。
所以不采用此方案。
方案二:
采用并行接口时钟芯片DS12887,采用单片机应用系统并行总线(三总线)扩展的接口电路,采用这种接口电路具有操作速度快,编程方便的优点。
但是对于80C52单片机来说,低位地址线要通过锁存器输出,还要地址译码器,而且并行口芯片的体积相对较大。
方案三:
采用DS1302时钟芯片实现时钟,DS1302芯片是一种高性能的时钟芯片,可自动对秒、分、时、日、周、月、年以及闰年补偿的年进行计数,而且精度高,位的RAM做为数据暂存区,工作电压2.5V~5.5V范围内,2.5V时耗电小于300nA.
所以选用DS1302作为时钟芯片。
1.2.4温度传感器的选择方案和论证
方案一:
使用热敏电阻作为传感器,用热敏电阻与一个相应阻值电阻相串联分压,利用热敏电阻阻值随温度变化而变化的特性,采集这两个电阻变化的分压值,并进行A/D转换。
此设计方案需用A/D转换电路,增加硬件成本而且热敏电阻的感温特性曲线并不是严格线性的,会产生较大的测量误差。
方案二:
采用数字式温度传感器DS18B20,此类传感器为数字式传感器而且仅需要一条数据线进行数据传输,易于与单片机连接,可以去除A/D模块,降低硬件成本,简化系统电路。
另外,数字式温度传感器还具有测量精度高、测量范围广等优点。
所以选用DS18B20作为温度采集部分的传感器。
1.2.5编程语言的选择方案和论证
方案一:
使用汇编语言,汇编语言是一种面向机器的计算机低级编程语言,通常是为特定的计算机或系列计算机专门设计的。
汇编语言能充分地发挥指令系统的功能和效率,可获得最简练的目标程序,但可读性却不强,复杂一点的程序就更难读懂了,而本设计的软件设计部分必然是需要大篇幅的程序作为支持的,所以不采用汇编语言作为此次设计的编程语言。
方案二:
使用C语言(C51),C语言程序本身不依赖于机器硬件系统,基本上不作修改就可将程序从不同的单片机中移植过来。
C语言提供了很多函数,并支持浮点运算,开发效率高,故可缩短开发时间,增加程序可读性和可维护性。
而且C语言可以嵌入汇编语言来解决高时效性的代码编写问题。
相比汇编语言,C51对单片机的指令系统不要求了解,仅要求对MCS-51的存储结构有初步了解,无须懂得单片机的具体硬件,也能编出符合硬件实际的专业水平的程序。
所以此次设计选用C语言编写程序。
1.3电路设计与最终方案
综上各方案所述,对该万年历设计方案的最终选定:
采用AT89S52作为主控制系统;DS1302提供时钟;DS18B20作为数字式温度传感器;LCD1602液晶屏作为显示;以C语言作为编程语言。
第二章主要硬件描述
2.1单片机AT89S52
2.1.1单片机简介
单片微型计算机(Single—ChipMicrocomputer),简称单片机,就是将微处理器(CPU)、存储器ROM和RAM、定时器/计数器、中断系统、输入/输出接口(I/O接口)、总线和其他多功能器件集成在一块芯片上的微型计算机。
由于单片机的重要应用领域为智能化电子产品,一般需要嵌入式仪器设备内,故又称为嵌入式微控制器。
单片机的主要特点如下。
(1)可靠性高
单片机的系统软件都固化在ROM中,不易受病毒破坏。
许多信号的通道均集成在一个芯片内,所以运行时系统稳定可靠。
(2)便于扩展
单片机片内具有计算机正常运行所必需的部件,片外有很多供扩展用的引脚(总线、并行I/O接口和串行I/O接口),很容易构成各种规模的计算机应用系统。
(3)控制功能强
具有丰富的控制指令,可以对逻辑功能比较复杂的系统进行控制。
(4)低电压、低功耗
低电压、低功耗对便携式产品和家用消费类产品是非常重要的。
许多单片机可以在3V,甚至更低的电压下运行,有些单片机的工作电流已降至
(5)片内存储容量较小
单片机内部ROM的存储容量一般小于8KB,RAM的存储容量一般小于256B,但可以在外部扩展。
通常,ROM和RAM的存储容量都可扩展至64KB。
除此之外,单片机还具有集成度高、体积小、性价比高、应用广泛、易于产品化。
2.1.2MCS-51单片机外部引脚
AT89S52单片机为40个引脚的双列直插式(DIP)封装,共分为电源线、端口线和控制线三类。
如图1所示即为该单片机的引脚封装形式。
图1.AT89S52引脚图
1)电源线
GND(20脚):
接地引脚。
Vcc(40脚):
正电源引脚。
正常工作时,接+5V电源。
2)端口线
AT89S52片内有4个8位并行I/O接口P0,P1,P2和P3。
它们可以双向使用。
P0口
32~39脚为P0.0~P0.7输入/输出引脚。
P0口为双向8位三态I/O接口。
它既可以作为通用I/O接口,又可以作为外部扩展时的数据总线及低8位地址总线的分时复用口。
P1口
1~8脚为P2.0~P2.7输入/输出引脚。
P1口为8位准双向I/O接口。
P2口
21~28脚为P2.0~P2.7输入/输出引脚。
P2口为8位准双向I/O接口。
P3口
10~17脚为P3.0~P3.7输入/输出引脚。
P3口为8位准双向I/O接口,它是双功能复用口,作为通用I/O接口时,功能与P1口相同,常使用第二功能。
作为第二功能使用时,各位的作用见表1。
表1P3口的第二功能
P3口
第二功能
信号名称
P3.0
RXD
串行数据接收口
P3.1
TXD
串行数据发送口
P3.2
外部中断0请求输入
P3.3
外部中断1请求输入
P3.4
T0
定时器/计时器0的外部输入口
P3.5
T1
定时器/计时器1的外部输入口
P3.6
外部RAM写选通信号
P3.7
外部RAM读选通信号
3)控制线
RST/Vpd(9脚):
复位信号/备用电源线引脚。
该引脚的第二功能是作为备用电源输入线。
ALE/
(30脚):
地址锁存允许/编程引脚。
该引脚的第二功能是对EPROM型芯片进行编程和校验时,此引脚传送52ms宽的负脉冲选通信号,程序计数器PC的16位地址数据将出现在P0和P2口上,外部程序存储器则把指令码放在P0口上,由CPU写入并执行。
/Vpp(31脚):
允许访问片外程序存储器/编程电源线。
其第二功能是片内EPROM编程/校验时的电源线,在编程时,
/Vpp脚需要加上21V的编程电压。
XTAL1和XTAL2(18,19脚):
XTAL1脚为片内振荡电路的输入端,XTAL2脚为片内振荡电路的输出端。
(29脚):
片外ROM选通线。
在执行访问片外ROM的指令MOVC时,8051自动在
线上产生一个负脉冲,用于对片外ROM的选通。
在其他情况下,
线均为高电平封锁状态。
2.2LCD1602液晶显示屏
2.2.1LCD1602液晶显示屏简介
字符型液晶显示模块是一种专门用于显示字母、数字、符号等点阵式LCD,目前常用16*1,16*2,20*2和40*2行等的模块。
一般1602字符型液晶显示器实物如图2所示。
图2.LCD1602实物图
2.2.2引脚功能说明
LCD1602采用标准的14脚(无背光)或16脚(带背光)接口,各引脚接口如图3所示,引脚说明如表2。
图3.LCD1602引脚图
表2LCD1602各引脚功能
编号
符号
引脚说明
编号
符号
引脚说明
1
Vss
电源地
9
D2
数据
2
Vdd
电源正极
10
D3
数据
3
Vo
液晶显示偏压
11
D4
数据
4
RS
数据/命令选择
12
D5
数据
5
R/W
读/写选择
13
D6
数据
6
E
使能信号
14
D7
数据
7
D0
数据
15
BLA
背光源正极
8
D1
数据
16
BLK
背光源负极
2.3DS1302时钟芯片
2.3.1DS1302简介
DS1302是美国DALLAS公司推出的一种高性能、低功耗、带RAM的实时时钟电路,它可以对年、月、日、周、时、分、秒进行计时,具有闰年补偿功能,工作电压为2.5V~5.5V。
采用三线接口与CPU进行同步通信,并可采用突发方式一次传送多个字节的时钟信号或RAM数据。
DS1302内部有一个31×8的用于临时性存放数据的RAM寄存器。
DS1302是DS1202的升级产品,与DS1202兼容,但增加了主电源/后备电源双电源引脚,同时提供了对后备电源进行涓细电流充电的能力。
2.3.2引脚功能说明
图4示出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进行操作。
如果在传送过程中RSTS置为低电平,则会终止此次数据传送,I/O引脚变为高阻态。
上电动行时,在Vcc大于等于2.5V之前,RST必须保持低电平。
只有在SCLK为低电平时,才能将RST置为高电平,I/O为串行数据输入端(双向)。
SCLK始终是输入端。
图4.DS1302引脚图
2.4DS18B20温度芯片
2.4.1DS18B20简介
DS18B20是由Dallas半导体公司生产的数字化温度传感器,是世界上第一个支持“一线总线”接口的温度传感器,“一线总线”接口芯片独特芯片而且经济,使用户可以轻松地组建传感器网络,为测量系统的构建引入了全新概念。
DS18B20“一线总线”数字化温度传感器的测量温度范围-55℃~+125℃,在-10~+85℃范围内,精度为±0.5℃。
现场温度直接以“一线总线”的数字方式传输,大大提高了系统的抗干扰性。
适合在恶劣环境的现场进行温度测试,可应用于环境控制,过程控制、测温类消费电子产品中。
DS18B20数字温度传感器接线方便,封装成后可应用于多种场合,如管道式,螺纹式,磁铁吸附式,不锈钢封装式,型号多种多样,有LTM8877,LTM8874等等。
2.4.2引脚功能说明
DS18B20具有3引脚TO-92小体积封装形式,其实物及引脚图如图5所示。
图5.DS18B20实物图及引脚图
各引脚说明如下:
引脚1(GND):
地。
引脚2(DQ):
数据输入/输出引脚,漏极开路单总线接口引脚。
当工作于寄生电源时,也可以向器件提供电源。
引脚3(Vcc):
可选择的外接供电电源输入引脚。
当工作于寄生电源时,此引脚必须接地。
第三章系统的硬件设计与实现
3.1电路设计框图
图6.电路设计框图
3.2系统硬件概述
本电路是由AT89S52单片机为控制核心,具有在线编程功能,低功耗,能在3V超低压工作;时钟电路由DS1302提供,它是一种高性能、低功耗、带RAM
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 毕业论文 基于 单片机 万年历 设计 制作 格式