计算机控制技术课程设计基于单片机的电子万历设计制作.doc

上传人:laozhun 文档编号:4150419 上传时间:2023-04-07 格式:DOC 页数:23 大小:518KB
返回 下载 相关 举报
计算机控制技术课程设计基于单片机的电子万历设计制作.doc_第1页
第1页 / 共23页
计算机控制技术课程设计基于单片机的电子万历设计制作.doc_第2页
第2页 / 共23页
计算机控制技术课程设计基于单片机的电子万历设计制作.doc_第3页
第3页 / 共23页
计算机控制技术课程设计基于单片机的电子万历设计制作.doc_第4页
第4页 / 共23页
计算机控制技术课程设计基于单片机的电子万历设计制作.doc_第5页
第5页 / 共23页
点击查看更多>>
资源描述

《计算机控制技术课程设计基于单片机的电子万历设计制作.doc》由会员分享,可在线阅读,更多相关《计算机控制技术课程设计基于单片机的电子万历设计制作.doc(23页珍藏版)》请在三一办公上搜索。

1、题 目基于单片机的万年历设计 系别:电气工程与自动化系 专业:自动化 学号: 姓名: 摘 要单片机就是微控制器,是面向应用对象设计、突出控制功能的芯片。单片机接上晶振、复位电路和相应的接口电路,装载软件后就可以构成单片机应用系统。本设计就是应用单片机强大的控制功能制作而成的电子万年历,该电子万年历包括三大功能:实时显示年、月、日、时、分、秒;实时监测环境温度(可根据需要启动高温报警功能);电子闹钟。M bn计时芯片采用DALLAS公司的涓细充电时钟芯片DS1302,该芯片通过简单的串行通信与单片机进行通信,时钟/日历电路能够实时提供年、月、日、时分、秒信息,采用双电源供电,当外部电源掉电时能够

2、利用后备电池准确计时。温度检测采用DALLAS公司的数字化温度传感器,该芯片采用的是独特的“一线总线”的方式与单片机进行通信,实时温度采用一线总线的方式传输大大的提高了信号的抗干扰性,分辨率可通过软件设置,其小巧的体积为各种环境下测量温度提供了方便。显示器件采用通用型1602液晶,可显示32个字符,如果使用数码管来做显示器件需消耗大量的系统资源,因此采用低功耗的1602液晶,该液晶显示方便,功能强大,完全能满足数字万年历的显示要求。通过此次设计能够更加牢固的掌握单片机的应用技术,增强动手能力、硬件设计能力以及软件设计能力。关键词:AT89C51、DS18B20、1602液晶、DS1302、万年

3、历目录第1章 绪论41.1 选题的背景41.2选题的意义4第2章 系统总体设计52.1 方案的选择52.1.1 液晶显示模块52.1.2 实时时间计算模块52.1.3实时环境温度采集模块52.1.4 报警模块62.1.5设置模块6 2.2 系统总体设计(要求有框图)7第3章 硬件设计83.1 硬件选型83.1.1 LCD显示模块83.1.2 实时时间计算模块93.1.3实时环境温度检测模块123.1.4 报警模块163.1.5 设置模块16 3.2 硬件电路设计(按模块)17第4章 软件设计174.1 系统流程(流程图)18第5章 仿真结果19 5.1 显示实时时间20 5.2 显示当前温度2

4、0 5.3 时间设置21 5.4最高报警温度设置21 5.5超温22 5.6闹钟时间到23结论(心得体会)23参考文献23附录25第1章 绪论1.1 选题的背景随着科技的快速发展,时间的流逝,从观太阳、摆钟到现在电子钟,人类不断研究,不断创新纪录。它可以对年、月、日、时、分、秒进行计时,还具有闰年补偿等多种功能,而且DS1302的使用寿命长,误差小。对于数字电子万年历采用直观的数字显示,可以同时显示年、月、日、时、分、秒和温度等信息,还具有时间校准等功能。该电路采用AT89C51单片机作为核心,功耗小,能在3V的低压工作,电压可选用35V电压供电。此万年历具有读取方便、显示直观、功能多样、电路

5、简洁、成本低廉等诸多优点,符合电子仪器仪表的发展趋势,具有广阔的市场前景。1.2课题的研究目的与意义 二十一世纪是数字化技术高速发展的时代,而单片机在数字化高速发展的时代扮演着极为重要的角色。电子万年历的开发与研究在信息化时代的今天亦是当务之急,因为它应用在学校、机关、企业、部队等单位礼堂、训练场地、教学室、公共场地等场合,可以说遍及人们生活的每一个角落。由于社会对信息交换不断提高的要求及高新技术的逐步发展,促使电子万年历发展并且投入市场得到广泛应用。 第2 章 总体方案论证与设计 本系统以AT89S52单片机为控制核心,通过与DS1302和DS18B20通信获取实时时间和实时环境温度,并将得

6、到的数据通过1602液晶显示出来,同时通过相应的按键调整相应的值。因此本设计可分为一下模块:显示模块、实时时间计算模块、实时环境温度采集模块、报警模块、设置模块(时间设置模块、最高温度设置模块、闹钟设置模块)。下面对各个模块逐一进行论证分析:2.1.1 液晶显示模块方案(1):数码管是利用发光二极管的特性组合而成数字显示器件,通过控制相应的二极管的状态显示相应的数字。要使数码管正常显示就得有驱动电路驱动相应的段码,数码管的现实方式可分为静态显示和动态显示,静态显示方式只适合显示单个的数字,因此本设计应采用动态显示方式。由于动态显示方式利用的是人眼视觉暂留的特性,扫描的时间应不大于20毫秒,占用

7、系统资源大,而且显示的个数和字型有限,在本设计中不易采用。方案(2):1602液晶也叫1602字符型液晶 它是一种专门用来显示字母、数字、符号等的点阵型液晶模块 它有若干个5X7或者5X11等点阵字符位组成,每个点阵字符位都可以显示一个字符。每位之间有一个点距的间隔,每行之间也有也有间隔,起到了字符间距和行间距的作用。1602的驱动电路带有11条指令,可以很方便的控制液晶的现实效果如:清屏、左移右移、光标显示。而且1602显示的字符在下一条指令为到来之前不会改变,也就是能够维持显示的字符,1602液晶占用的系统资源也少。综合比较上述两种方案,应采用1602液晶组成本设计的显示模块。2.1.2实

8、时时间计算模块方案(1):AT89S52单片机内部带有定时/计数功能,此定时功能是通过对外部晶振的脉冲进行计数,从而达到计时功能,只要使用11.0592的晶振就能实现零误差的计时,因此可以利用此功能实现计时,但因为只有单一的计时功能要实现“万年历”的功能需要较复杂的程序,而且如果单片机掉电无法继续进行计时,所以使用不便。方案(2):DS1302是美国DALLAS公司推出的一种高性能、低功耗的实时时钟芯片,附加31字节静态RAM,采用SPI三线接口与CPU进行通信,并可采用突发方式一次传送多个字节的时钟信号和RAM数据。实时时钟可提供秒、分、时、日、星期、月和年,一个月小与31天时可以自动调整,

9、且具有闰年补偿功能。工作电压宽达2.55.5V。采用双电源供电(主电源和备用电源),可设置备用电源充电方式,提供了对后备电源进行涓细电流充电的能力。利用单片机强大的控制功能就可实现实时计时的功能,而且消耗的系统资源少,程序简单。综合上述两种方案,宜采用方案(2)实现实时计时功能。2.1.3实时环境温度采集模块方案(1):热敏电阻是开发早、种类多、发展较成熟的敏感元器件热敏电阻由半导体陶瓷材料组成,利用的原理是温度引起电阻变化通过一定的电路可以将周围环境的温度变化转化成电压的变化,通过AD转化器件将信号传输给单片机进行分析,从而测出当前环境温度,但误差大,不稳定,对环境要求较高。方案(2):DS

10、18B20是美国DALLAS公司生产的数字温度传感器,采用单总线的接口方式与微处理器连接时仅需要一条口线即可实现微处理器与DS18B20 的双向通讯。测量温度范围宽,测量精度高 ,在使用中不需要任何外围元件,支持多点组网功能 多个 DS18B20 可以并联在惟一的单线上,实现多点测温,供电方式灵活 DS18B20 可以通过内部寄生电路从数据线上获取电源。因此,当数据线上的时序满足一定的要求时,可以不接外部电源,从而使系统结构更趋简单,可靠性更高。因此非常适合本系统使用。综上比较上述两种方案,宜采用方案(2)构成本设计的实时温度采集模块。2.1.4报警模块此模块采用无源蜂鸣器实现,只要编写相应的

11、程序即可实现发出不同频率的声音。2.1.5设置模块因设置模块只需编写相应的程序外加相应的按键即可实现,实现方法较简单,在此不再论述。 2.2 总体方案组成框图报警模块(蜂鸣器)显示模块(1602液晶)AT89S51时间计算模块DS1302实时温度采集模块(DS18B20)设置模块(独立按键)第3章 系统硬件设计3.1.1 LCD显示模块设计(1)1602液晶功耗较小可直接与单片机接口相接,电源直接与电源电路相接,使用单片机的P0口和P1口与1602进行通信。(2)1602相应功能特性介绍+5V电压,对比度可调内含复位电路提供各种控制命令,如:清屏、字符闪烁、光标闪烁、显示移位等多种功能有80字

12、节显示数据存储器DDRAM内建有160个5X7点阵的字型的字符发生器CGROM8个可由用户自定义的5X7的字符发生器CGRAM(3)1602引脚介绍(4) 1602液晶与单片机接口电路3.1.2时间计算模块设计DS1302通过三根口线实现与单片机的通信,因DS1302功耗很小,即使电源掉电后通过3V的纽扣电池仍能维持DS1302精确走时。DS1302特性介绍:DS1302是美国DALLAS公司推出的一种高性能、低功耗的实时时钟芯片,附加31字节静态RAM,采用SPI三线接口与CPU进行通信,并可采用突发方式一次传送多个字节的时钟信号和RAM数据。实时时钟可提供秒、分、时、日、星期、月和年,一个

13、月小与31天时可以自动调整,且具有闰年补偿功能。工作电压宽达2.55.5V。采用双电源供电(主电源和备用电源),可设置备用电源充电方式,提供了对后备电源进行涓细电流充电的能力。DS1302引脚介绍:各引脚的功能为:8 、Vcc1:备用电池端;1、Vcc2:5V电源。当Vcc2Vcc1+0.2V时,由Vcc2向DS1302供电,当Vcc2 Vcc1时,由Vcc1向DS1302供电。7、SCLK:串行时钟,输入; 6、I/O:数据输入输出口;5、CE/RST:复位脚2 、3、X1、X2 是外接晶振脚 (32.768KHZ的晶振)4、地(GND)(3)DS1302有关日历、时间的寄存器 寄存器的说明

14、如下:1、秒寄存器(81h、80h)的位7定义为时钟暂停标志(CH)。当初始上电时该位置为1,时钟振荡器停止,DS1302处于低功耗状态;只有将秒寄存器的该位置改写为0时,时钟才能开始运行。2、小时寄存器(85h、84h)的位7用于定义DS1302是运行于12小时模式还是24小时模式。当为高时,选择12小时模式。在12小时模式时,位5是 ,当为1时,表示PM。在24小时模式时,位5是第二个10小时位3、控制寄存器(8Fh、8Eh)的位7是写保护位(WP),其它7位均置为0。在对任何的时钟和RAM的写操作之前,WP位必须为0。当WP位为1时,写保护位防止对任一寄存器的写操作。也就是说在电路上电的

15、初始态WP是1,这时是不能改写上面任何一个时间寄存器的,只有首先将WP改写为0,才能进行其它寄存器的写操作。 (4)DS1302控制字介绍控制字的最高有效位(位7)必须是逻辑1,如果它为0,则不能把数据写入到DS1302中。位6:如果为0,则表示存取日历时钟数据,为1表示存取RAM数据;位5至位1(A4A0):指示操作单元的地址;位0(最低有效位):如为0,表示要进行写操作,为1表示进行读操作。读数据:读数据时在紧跟8位的控制字指令后的下一个SCLK脉冲的下降沿,读出DS1302的数据,读出的数据是从最低位到最高位。写数据:控制字总是从最低位开始输出。在控制字指令输入后的下一个SCLK时钟的上

16、升沿时,数据被写入DS1302,数据输入也是从最低位(0位)开始。位0(最低有效位):为1表示进行读操作。 如为0,表示要进行写操作,控制字后 SCLK 下降沿 读数据 SCLK上升沿写数据(5)DS1302单字节读写时序介绍DS1302的数据读写是通过I/O串行进行的。当进行一次读写操作时最少得读写两个字节,第一个字节是控制字节,就是一个命令,告诉DS1302是读还是写操作,是对RAM还是对CLOK寄存器操作,以及操作的址。第二个字节就是要读或写的数据了。我们先看单字节写:在进行操作之前先得将CE(也可说是RST)置高电平,然后单片机将控制字的位0放到I/O上,当I/O的数据稳定后,将SCL

17、K置高电平,DS1302检测到SCLK的上升沿后就将I/O上的数据读取,然后单片机将SCLK置为低电平,再将控制字的位1放到I/O上,如此反复,将一个字节控制字的8个位传给DS1302。接下来就是传一个字节的数据给DS1302,当传完数据后,单片机将CE置为低电平,操作结束。单字节读操作的一开始写控制字的过程和上面的单字节写操作是一样,但是单字节读操作在写控制字的最后一个位,SCLK还在高电平时,DS1302就将数据放到I/O上,单片机将SCLK置为低电平后数据锁存,单机机就可以读取I/O上的数据。如此反复,将一个字节的数据读入单片机。读与写操作的不同就在于,写操作是在SCLK低电平时单片机将

18、数据放到IO上,当SCLK上升沿时,DS1302读取。而读操作是在SCLK高电平时DS1302放数据到IO上,将SCLK置为低电平后,单片机就可从IO上读取数据。(6)DS1302操作指令介绍:操作说明:1:首先要通过8EH将写保护去掉,将日期,时间的初值写时各个寄存器。2:然后就可以对80H、82H、84H、86H、88H、8AH、8CH进行初值的写入。同时也通过秒寄存器将位7的CH值改成0,这样DS1302就开始走时运了。3:将写保护寄存器再写为80H,防止误改写寄存器的值。4:不断读取80H8CH的值,将它们格式化后显示到1602LCD液晶上(7)DS1302与单片机接口电路3.1.3实

19、时环境温度检测模块DS18B20通过单总线实现与单片机的通信,每个DS18B20都有一个唯一的序列号,可以方便的实现组网检测。(1)单总线介绍单总线即只有一根数据线,系统中的数据交换,控制都由这根线完成。单总线通常要求外接一个约为 4.7K10K 的上拉电阻,这样,当总线闲置时其状态为高电平。(2) DS18B20管脚介绍 DS18B20的管脚排列1 . GND为电源 地;2. DQ为数字信号输入输出端;3. VDD为外接供电电源输入端,在寄生电源接线方式时接地; (3) DS18B20时序介绍DS18B20的一线工作协议流程是:初始化ROM操作指令存储器操作指令数据传输。其工作时序包括:初始

20、化时序、写时序、读时序、初始化: 主机首先发出一个480960微秒的低电平脉冲,然后释放总线变为高电平,并在随后的480微秒时间内对总线进行检测,如果有低电平出现说明总线上有器件已做出应答。若无低电平出现一直都是高电平说明总线上无器件应答。做为从器件的DS18B20在一上电后就一直在检测总线上是否有480960微秒的低电平出现,如果有,在总线转为高电平后等待1560微秒后将总线电平拉低60240微秒做出响应存在脉冲,告诉主机本器件已做好准备。若没有检测到就一直在检测等待。 对DS18B20的写和读操作,接下来就是主机发出各种操作命令,但各种操作命令都是向DS18B20写0和写1组成的命令字节,

21、接收数据时也是从DS18B20读取0或1的过程。因此首先要搞清主机是如何进行写0、写1、读0和读1的。写周期最少为60微秒,最长不超过120微秒。写周期一开始做为主机先把总线拉低1微秒表示写周期开始。随后若主机想写0,则继续拉低电平最少60微秒直至写周期结束,然后释放总线为高电平。若主机想写1,在一开始拉低总线电平1微秒后就释放总线为高电平,一直到写周期结束。而做为从机的DS18B20则在检测到总线被拉底后等待15微秒然后从15us到45us开始对总线采样,在采样期内总线为高电平则为1,若采样期内总线为低电平则为0。对于读数据操作时序也分为读0时序和读1时序两个过程。读时序是从主机把单总线拉低

22、之后,在1微秒之后就得释放单总线为高电平,以让DS18B20把数据传输到单总线上。DS18B20在检测到总线被拉低1微秒后,便开始送出数据,若是要送出0就把总线拉为低电平直到读周期结束。若要送出1则释放总线为高电平。主机在一开始拉低总线1微秒后释放总线,然后在包括前面的拉低总线电平1微秒在内的15微秒时间内完成对总线进行采样检测,采样期内总线为低电平则确认为0。采样期内总线为高电平则确认为1。完成一个读时序过程,至少需要60us才能完成(4) DS18B20操作步骤(1)每次读写前对 DS18B20 进行复位初始化。复位要求主 CPU 将数据线下拉 500us ,然后释放, DS18B20 收

23、到信号后等待 16us60us 左右,然后发出 60us240us 的存在低脉冲,主 CPU 收到此信号后表示复位成功。(2)发送一条ROM指令(3)发送存储器指令(5) DS18B20与单片机的接口电路3.1.4报警模块报警模块采用单片机输出一定频率的方波从而使蜂鸣器发出声蜂鸣器与单片机的接口电路:3.1.5设置模块设置模块采用四个按键与P14、P15、P16、P17相接组成独立按键,接口电路如下:3.2 硬件电路设计第四章 系统软件设计软件设计是本设计的关键,软件程序编写的好坏直接影响着系统运行情况的良好。因本程序涉及的模块较多,所以程序编写也采用模块化设计,C语言具有编写灵活、移植方便、

24、便于模块化设计的特点,所以本系统的软件采用C51编写。4.1程序框图如下:判断是否有按键按下时间、日期、上限温度、闹钟设置模块没有按键按下 温度检测模块开机初始化显示欢迎界面从DS1302读取信息1602液晶显示相关信息第5章 系统硬件PROTEUS仿真原理图5.1显示实时时间5.2显示当前温度5.3时间设置5.4最高报警温度设置5.5超温5.6闹钟时间到结论本课题从理论到实际应用,用AT89C51单片机和时钟芯片ds1302成功的设计出了一个电子万年历。而且所设计的电子万年历设计也按当初要求的能够在PROTEUS中进行仿真,并且能够很精确的显示年历。利用DS1802测温元件进行温度实时监测。

25、可以说该电子万年历具有很高的实用价值。 在软件设计的过程中,利用了Keil这个软件在程序录入和调试的时候的优越性,让我能够在编写软件的时候很方便的发现软件中的错误,现在已经能够使用Keil对所设计的程序进行调试。用keil生成hex文件烧录到单片机中,从而进行电路设计仿真。本次设计的电子万年历也存在的不足的地方,有待于以后的改进。这个设计主要经历了以下几个过程:广泛查阅资料、文献综述、总体思路的确定、方案的具体化及论证、方案的确定、软件的调试、系统的调试,还包括论文的定搞,我认为整个过程是一个联系非常紧密的过程,前一过程的结果为后一过程奠定了基础。在整个过程中,本人不仅对单片机控制系统和计算机控制系统的每一个细节有了比较深入的掌握,而且对关于系统扩展的相关知识有了感性的认识。参考文献1 赵长德.微型计算机原理与接口技术M.北京:机械工业出版社,1999:98-350. 2 李晓林.单片机的原理与接口技术M.北京:电子工业出版社,2015.1 3 王忠民.微型计算机原理M.西安:西安科技大学出版社,2003:15-55. 4 胡戴明.计算机组成原理M.北京:经济科学出版社,2005:43-56.

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 办公文档 > 其他范文


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号