基于51单片机的电子时钟大学本科方案设计书doc先用Word文档下载推荐.docx
- 文档编号:18241274
- 上传时间:2022-12-14
- 格式:DOCX
- 页数:17
- 大小:284.58KB
基于51单片机的电子时钟大学本科方案设计书doc先用Word文档下载推荐.docx
《基于51单片机的电子时钟大学本科方案设计书doc先用Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《基于51单片机的电子时钟大学本科方案设计书doc先用Word文档下载推荐.docx(17页珍藏版)》请在冰豆网上搜索。
B.具备年、月、日、星期、时、分、秒校准功能;
C.具备温度显示功能;
(二)方案选择
1.单片机芯片的选择
STC89C52单片机的主要特性如下:
二、与MCS-51产品指令系统完全兼容
三、4K字节的在线编程Flash存储器,1000次擦写周期
四、4.0~5.5V的工作电压范围
五、全静态工作模式:
0~33MHz
六、三级程序存储器锁
七、128×
8字节内部RAM
八、32个可编程I/O口线
九、2个16位定时/计数器
一十、6个中断源
一十一、全双工串行UART通道
一十二、低功耗空闲和掉电模式
一十三、中断可从空闲模式唤醒系统
一十四、看门狗(WDT)及双数据指针
一十五、掉电标识和快速编程特性
一十六、具有掉电状态下的中断恢复功能
一十七、灵活的在系统编程(ISP字节或页写模式)
由于STC89C52单片机片内有4K字节的在线编程Flash存储器,可以擦写1000次,具有掉电模式,而且具有掉电状态下的中断恢复功能,对设计开发非常实用。
所以选用STC89C52单片机作为电子时钟芯片的控制单片机。
2.显示模块选择
在本万年历当中12864液晶显示当前的实时时间重要的阴阳历节日等功能。
12864液晶具有如下的特性:
■提供8位,4位并行接口及串行接口可选
■并行接口适配M6800时序
■自动电源启动复位功能
■内部自建振荡源[1]
3.时钟芯片选择
采用DS1302时钟芯片实现时钟,DS1302芯片是一种高性能的时钟芯片,可自动对秒、分、时、日、周、月、年以及闰年补偿的年进行计数,而且精度高,位的RAM做为数据暂存区,工作电压2.5V~5.5V范围内,2.5V时耗电小于300nA。
4.温度传感器的选择
在本电子时钟当中温度的采集采用数字温度传感器DS18B20。
它属于单总线器件,具有线路简单,体积小的特点。
因此用它来组成一个测温系统,具有线路简单,在一根通信线,可以挂很多这样的数字温度计,十分方便。
另外,数字式温度传感器还具有测量精度高、测量范围广等优点。
具有如下的经济特点:
(1)只要求一个端口即可实现通信。
(2)在DS18B20中的每个器件上都有独一无二的序列号。
(3)实际应用中不需要外部任何元器件即可实现测温。
(4)测量温度范围在-55。
C到+125。
C之间。
(5)数字温度计的分辨率用户可以从9位到12位选择。
(6)内部有温度上、下限告警设置。
电路设计方案最终确定
综上各方案所述,对此次作品的方案选定:
采用STC89C52作为主控制系统。
DS1302提供时钟。
数字式温度传感器。
液晶12864作为显示。
[3]
三、系统的硬件设计与实现
(一)
蜂鸣报警模块
STC89C52
主控制模块
3.2系统硬件概述
图-1电路设计框图
本电路是由STC89C52单片机为控制核心,具有操作简单的优点;
时钟电路由DS1302提供,它是一种高性能、低功耗、带RAM的实时时钟电路,它可以对年、月、日、周日、时、分、秒进行计时,具有闰年补偿功能,工作电压为2.5V~5.5V。
采用三线接口与CPU进行同步通信,并可采用突发方式一次传送多个字节的时钟信号或RAM数据。
DS1302内部有一个31*8的用于临时性存放数据的RAM寄存器。
可产生年、月、日、周日、时、分、秒,具有使用寿命长,精度高和低功耗等特点,同时具有掉电自动保存功能;
温度的采集由DS18B20构成。
(二)主要单元电路的设计
1、单片机主控制模块的设计
本系统采用的是深圳宏晶科技公司生产的STC89C52单片机,首先我们来熟悉一下STC89C52单片机的外部引脚和内部结构。
(1).单片机的引脚功能
STC89C52单片机有40个引脚。
●Vcc:
电源电压+5V
●GND:
接地
●P0口:
P0口是一组8位漏极开路型双向I/O口,也即地址/数据总线复用口。
作为输出口用时,每位能驱动8个TTL逻辑门电路,对端口写“1”可作为高阻抗输入端用。
在访问外部数据存储器或程序存储器时,这组口线分时转换地址(低8位)和数据总线服用,在访问期间激活内部上拉电阻。
在Flash编程时,P0口接收指令字节,而在程序校验时,输出指令字节,校验时要求外接上拉电阻。
●P1口:
P1口是一个带内部上拉电阻的8位双向I/O,P1的输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。
对端口写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口。
作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流。
Flash编程和程序校验期间,P1接收低8位地址。
●P2口:
P2口是一个带内部上拉电阻的8位双向I/O,P2的输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。
在访问外部程序存储器或16位地址的外部数据存储器(例如执行MOVX@DPTR指令)时,P2口送出高8位地址数据。
在访问8位地址的外部数据存储器(MOVX@Ri指令)时,P2口线上的内容(也即特殊功能寄存器(SFR)区中P2寄存器的内容),在整个访问期间不改变。
Flash编程和程序校验期间,P2亦接收低高位地址和其他控制信号。
●P3口:
P3口是一组带内部上拉电阻的8位双向I/O,P3的输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。
对P3口写入“1”时,它们被内部的上拉电阻拉高并可作为输入端口。
作输入端时,被外部拉低的P3口将用上拉电阻输出电流。
P3口除了作为一般的I/O口线外,更重要的用途是它的第二功能,见表-1所示:
P3口还接收一些用于Flash闪速存储器编程和程序校验的控制信号。
表-1P3口的第二功能图
端口引脚
第二功能
P3.0
RXD(串行输入口)
P3.1
TXD(串行输出口)
P3.2
INT0(外中断0)
P3.3
INT1(外中断1)
P3.4
T0(定时/计时器0外部输入)
P3.5
T1(定时/计时器1外部输入)
P3.6
WR(外部数据存储器写选通)
P3.7
RD(外部数据存储器读选通)
●RST:
复位输入。
当振荡器工作时,RST引脚出现两个机器周期以上高电平将使单片机复位。
WDT溢出将使引脚输出高电平,设置SFRAUXR的DISRT0(地址8EH)可打开或关闭该功能。
DISRT0位缺省为RESET输出高电平打开状态。
●ALE/PROG:
当访问外部程序存储器或数据存储器时,ALE(地址锁存器允许)输出脉冲用于锁存地址的低8位字节。
即使不访问外部存储器,ALE仍以时钟振荡频率的1/6输出固定的正脉冲信号,因此它可对外输出时钟或用于定时目的。
要注意的是:
每当访问外部数据存储器时将跳过一个ALE脉冲。
对Flash存储器编程期间,该引脚还用于输入编程脉冲(PROG)。
如有必要,可通过多特殊功能寄存器(SFR)区中的8EH单元的D0位置,可禁止ALE操作。
该位置后,只有一条MOVX和MOVC指令ALE才会被激活。
另外,该引脚会被微弱拉高,单片机执行外部程序时,应设置ALE无效。
●PSEN:
程序存储允许(PSEN)输出是外部程序存储器的读选通信号,当AT89C51由外部程序存储器取指令(或数据)时,每个机器周期两次PSEN有效,即输出两个脉冲。
当访问外部数据存储器,没有两次有效的PSEN信号。
●EA/VPP:
外部访问允许。
欲使CPU仅访问外部程序存储器(地址为0000H—FFFFH),EA端必须保持低电平(接地)。
需要注意的是:
如果加密位LB1被编程,复位时内部会锁存EA端状态。
如EA端为高电平(接Vcc端),CPU则执行内部程序存储器中的指令。
Flash存储器编程时,该引脚加上+12V的变成电压Vpp.
●XTAL1:
振荡器反相放大器及内部时钟发生器的输入端。
●XTAL2:
振荡器反相放大器的输出端。
AT89C51单片机内部结构
(2).STC89C52单片机与MCS-51完全兼容
●看门狗(WDT):
WDT是一种需要软件控制的复位方式。
WDT由13位计数器和特殊功能寄存器中的看门狗定时器复位存储器(WDTRST)构成。
WDT在默认情况下无法工作;
为了激活WDT,用户必须往WDTRST寄存器(地址:
0A6H)中依次写入01EH和0E1H。
当WDT激活后,晶振工作,WDT在每个机器周期都会增加。
WDT计时周期依赖于外部时钟频率。
除了复位(硬件复位或WDT溢出复位),没有办法停止WDT工作。
当WDT溢出,它将驱动RSR引脚输出一个高电平。
●可编程串口(UART)在STC89C52中,UART的操作与STC89C51和STC89C52一样。
STC89C52系列单片机的串行通信口可以工作于同步和异步通信方式。
当工作于异步方式时,它具有全双工的操作功能,也就是说,它可以同时进行数据的发送和接收。
串行口内的接收器采用的是双缓冲结构,能够在接收到的第一个字节从接收寄存器读走之前就开始接收第二个字节(当然,如果第二个字节接收完毕,而第一个字节仍然没有被读走,那将会丢掉一个字节)。
串行口的发送和接收操作都是通过特殊功能寄存器中的数据缓冲寄存器SBUF进行的,但在SBUF的内部,接收寄存器和发送寄存器在物理结构上是完全独立的。
如果将数据写入SBUF,数据会被送入发送寄存器准备发送。
如果执行SBUF指令,则读出的数据一定来自接收缓存器。
因此,CPU对SBUF的读写,实际上是分别访问2个不同的寄存器。
这2个寄存器的功能决不能混淆。
●振荡电路:
STC89C52系列单片机的内部振荡器,由一个单极反相器组成。
XTAL1反相器的输入,XTAL2为反相器的输出。
可以利用它内部的振荡器产生时钟,只要XTAL1和XTAL2引脚上一个晶体及电容组成的并联谐振电路,便构成一个完整的振荡信号发生器,此方式称为内部方式。
另一种方式由外部时钟源提供一个时钟信号到XTAL1端输入,而XTAL2端浮空。
在组成一个单片机应用系统时,多数采用这种方式,这种方式结构紧凑,成本低廉,可靠性高。
在电路中,对电容C1和C2的值要求不是很严格,如果使用高质的晶振,则不管频率为多少,C1、C2通常都选择30pF。
●定时/计数器:
STC89C52单片机内含有2个16位的定时器/计数器。
当用于定时器方式时,定时器的输入来自内部时钟发生电路,每过一个机器周期,定时器加1,而一个机器周期包含有12个振荡周期,所以,定时器的技术频率为晶振频率的1/12,而计数频率最高为晶振频率的1/24。
为了实现定时和计数功能,定时器中含有3种基本的寄存器:
控制寄存器、方式寄存器和定时器/计数器。
控制寄存器是一个8位的寄存器,用于控制定时器的工作状态,方式寄存器是一个8位的寄存器,用于确定定时器的工作方式,定时器/计数器是16位的计数器,分为高字节和低字节两部分。
●RAM:
高于7FH内部数据存储器的地址是8位的,也就是说其地址空间只有256字节,但内部RAM的寻址方式实际上可提供384字节。
的直接地址访问同一个存储空间,高于7FH的间接地址访问另一个存储空间。
这样,虽然高128字节区分与专用寄器,即特殊功能寄存器区的地址是重合的,但实际上它们是分开的。
究竟访问哪一区,存是通过不同的寻址方式加以区分的。
●SFR:
SFR是具有特殊功能的所有寄存器的集合,共含有22个不同寄存器,它们的地址分配在80H~FFH中。
虽然如此,不是所有的单元都被特殊功能寄存器占用,未被占用的单元,其内容是不确定的。
如对这些单元进行读操作,得到的是一些随机数,而写入则无效,所以在编程时不应该将数据写入这些未确定的地址单元中,特殊功能寄存器主要有累加器ACC、B寄存器、程序状态字寄存器PSW、堆栈指针SP、数据指针DPTR、I/O端口、串行口数据缓冲器SBUF、定时器寄存器、捕捉寄存器、控制寄存器。
●中断系统:
STC89C52单片机有6个中断源,中断系统主要由中断允许寄存器IE、中断优先级寄存器IP、优先级结构和一些逻辑门组成。
IE寄存器用于允许或禁止中断;
IP寄存器用于确定中断源的优先级别;
优先级结构用于执行中断源的优先排序;
有关逻辑门用于输入中断请求信号。
在整个中断响应过程中CPU所执行的操作步骤如下:
(1)完成当前指令的操作
(2)将PC内容压入堆栈
(3)保存当前的中断状态
(4)阻止同级的中断请求
(5)将中断程序入口地址送PC寄存器
(6)执行中断服务程序
(7)返回[2]
2、时钟电路模块的设计
DS1302是一种高性能、低功耗、带RAM的实时时钟电路,它可以对年、月、日、周日、时、分、秒进行计时,具有闰年补偿功能,工作电压为2.5V~5.5V。
采用三线接口与CPU进行同步通信,并可采用突发方式一次传送多个字节的时钟信号或RAM数据。
DS1302内部有一个31×
8的用于临时性存放数据的RAM寄存器。
DS1302是DS1202的升级产品,与DS1202兼容,但增加了主电源/后背电源双电源引脚,同时提供了对后背电源进行涓细电流充电的能力。
图-1示出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始终是输入端。
图-2DS1302的引脚图
3、显示模块的设计
在本电子时钟当中12864液晶显示当前的实时时间重要的阴阳历节日等功能。
1)提供8位,4位并行接口及串行接口可选
2)并行接口适配M6800时序
3)自动电源启动复位功能
4)内部自建振荡源
64×
16位字符显示RAM(DDRAM最多16字符×
4行,LCD显示范围16×
2行)(改为半角输入)
2M位中文字型ROM(CGROM),总共提供8192个中文字型(16×
16点阵)
16K位半宽字型ROM(HCGROM),总共提供126个西文字型(16×
8点阵)
16位字符产生RAM(CGRAM)
15×
16位总共240点的ICONRAM(ICONRAM)[4]
其与单片机的连接电路如下
图-312864液晶显示接口电路图
4、温度采集模块设计
如图-4示。
采用数字式温度传感器DS18B20,它是数字式温度传感器,具有测量精度高,电路连接简单特点,此类传感器仅需要一条数据线进行数据传输,使用P0.7与DS18B20的I/O口连接加一个上拉电阻,Vcc接电源,Vss接地。
图-4S18B20温度采集
5、按键调整系统模块设计
按键采用4个独立的按键,一个功能键、一个确认键、一个加按键、一个减按键通过这四个按键可以来合理的设置时钟的调整和闹铃的设定温度报警的上下限数值。
与单片机的连接电路如下
图-5单片机的连接电路
6、蜂鸣器报警模块
当实际的温度高于设定温度时或者当前的时间等于设置闹钟时间时蜂鸣器便会发出声音进行提示。
与单片机的连接电路如下:
图-6单片机的连接电路
四、系统的软件设计
(一)程序流程框图
(二)时间调整的程序流程图
(三)温度采集程序流程图
N
Y
(四)定时铃声程序流程图
Y4
(五)农历流程图
五、设计总结
通过本次论文设计,使我加深了对单片机的认识,并且熟悉了单片机系统的设计流程,收获丰硕。
功能上基本达标:
时钟的显示,调时功能。
时钟显示功能,精确度完全可以满足日常生活显示时间的需要;
调时功能,方便快捷。
硬件设施基本合乎要求,软件设计可以配合硬件实现其功能。
技术在不断进步,机械式时钟已经被淘汰,取而代之的是具有高度准确性和直观性且无机械装置,具有更长的使用寿命等优点的电子时钟。
电子时钟更具人性化,更能提高人们的生活质量,更受人们欢迎。
机械时代已经远去,电子时代已经到来。
做为新时代的我们,更应该提高自身能力,适应新时代的发展。
知识来自实践,多从生活中探寻所需要的。
互联网成了我们生活中不可或缺的一部分,网络在本次设计中起到了很大作用,很多芯片资料,传统的纸质图书里是没有的。
网络只是一个平台,正是由于大家的无私奉献,才使得它丰富多彩。
从这次的论文设计中,我真正的体会到,知识的重要性,特别是要理论联系实际,把我们所学的理论知识运用到实际生活当中,要用知识改变一切。
参考文献
[1]王质朴,吕运鹏.MCS-51单片机原理接口与应用,北京理工大学出版社,2009.
[2]郑学坚;
周斌.微型计算机原理及应用[M].北京:
清华大学出版社,2001
[3]谭浩强.C程序设计(第三版).北京清华大学出版社,2007.
[4]康光华.电子技术基础(模拟部分).北京:
高等教育出版社,2004.
致谢
时光荏苒,转眼间,电大专科即将毕业。
值此毕业论文完成之际,我谨向所有关心过我、帮助过我的人们表示最诚挚的感谢与最美好的祝愿。
本论文是在指导老师曹光远的悉心指导下完成的。
曹老师是我们毕业设计辅导老师,曹老师以渊博的专业知识、严谨的治学态度教给我们很多专业知识,又以精益求精的工作作风、诲人不倦的高尚师德不厌其烦地为我指导论文。
本论文从选题到完成,几易其稿,每一步都是在曹老师的精心指导下完成的,每条批语都凝结着朱老师的心血,都是曹老师谆谆教诲,让我知道如何选题、如何整理材料,为我毕业论文的选题和创作奠定了基础。
愿帮助过我的老师、同学师生情、友情长存!
本论文的完成也离不开其他各位老师、同学和朋友的关心与帮助。
在此,我要特别感谢我的班主任薛老师。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 51 单片机 电子 时钟 大学本科 方案设计 doc