基于单片机的数字温度计的设计本科毕业论文(28页).doc
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《基于单片机的数字温度计的设计本科毕业论文(28页).doc》由会员分享,可在线阅读,更多相关《基于单片机的数字温度计的设计本科毕业论文(28页).doc(28页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、-基于单片机的数字温度计的设计本科毕业论文-第 21 页钦 州学院本科毕业论文(设计)基于单片机的数字温度计的设计 院 系 物理与电子工程学院 专 业 自动化 学 生 班 级 2010级1班 姓 名 学 号 指导教师单位 物理与电子工程学院 指导教师姓名 指导教师职称 讲师 2014年4月基于单片机的数字温度计的设计 自动化专业2010级 指导教师 摘 要随着时代的进步和发展,单片机技术已经普及到生活、工作、科研等各个领域,已经成为一种比较成熟的技术。本文将介绍一种基于单片机控制的多功能数字温度计,该设计主要包括温度模块和时钟模块,温度模块实现了温度的上下限设置报警功能,当温度不在设定范围内时
2、,可以报警;时钟模块可以同步显示时间日历,日期和时间都可通过按键校整。本系统显示部分采用LCD液晶显示屏显示,工作方便,外形美观。关键词:单片机STC89C52;LCD1602;DS18B20;DS1302Design of digital thermometer based on single chipAutomation professional 2010InstructorAbstractWith the era of progress and development, single-chip technology has spread to live, work, research a
3、nd other fields, has become a relatively mature technology. This paper will introduce a single-chip microcomputer-based control of multifunctional digital thermometer. This design includes a temperature module and a clock module. Temperature modules can achieve alarm function by setting the upper an
4、d lower limits of temperature. When the temperature is not within the set range, it could alarm. And clock modules can simultaneous display the calendar, which date and time can be corrected through the keys. Parts of the system display use LCD liquid crystal display screen, work convenient with bea
5、utiful appearance.Key words: Single Chip STC89C52, LCD1602, DS18B20, DS1302 目录前言11 方案论证与系统总体框图11.1 方案论证11.1.1 方案一11.1.2 方案二11.2 系统设计框图22 主要器件功能介绍22.1 STC89C52RC单片机32.2 LCD1602显示屏42.3 DS1302时钟芯片62.3.1 DS1302的寄存器72.3.2 DS1302的读写方式82.4 温度传感器DS18B2092.4.1 DS18B20接口电路102.4.2 DS18B20工作原理102.4.3 DS18B20工作时
6、序133 硬件电路163.1 单片机主控制模块设计163.2 显示模块设计183.3 时钟电路模块设计183.4 温度测量电路模块设计183.5 报警和按键模块设计203.6 系统总体硬件电路204 软件设计214.1 系统软件程序设计214.2 液晶显示程序224.3 时钟芯片程序234.4 温度传感器程序24总结26致谢27参考文献27附录A29附录B30附录C31前言时代在变化,科学技术不断地融入人们的生活中,因此单片机的应用越来越广泛。单片机常作为一个核心部件使用,特别是在自动控制系统和实时检测系统中1。数字温度计和数字钟便是其中的代表之一,把单片机结合到温度计和时钟的设计中,使他们实
7、现数字化,大大方便了人们对温度的测量和时间的记录。科学技术能够让旧的东西焕发新的活力,从而改变人们的生活方式。温度是常用到的一个物理量,特别是在石油、化工、环境保护 、医学、工业等领域更是作为必测参数2。对温度的测量就必须用到温度计,传统的温度计有酒精温度计、水银玻璃温度计、热电偶和热电阻温度计等。传统的温度计反应速度慢、读数麻烦等缺点,因此应用起来比较麻烦,在一些领域,传统的温度计往往达不到测量要求3-4。时代在进步,科学技术也快速发展,新技术推动了温度测量方式的变化,无需人员参与就能够自动检测的测温系统被广泛应用。本设计的数字温度计可以实现数字显示,使得读数变得更加方便快捷,同时也能够达到
8、比较高的测量精度。本设计中采用8位单片机作为主控制器件,添加了8管脚封装的时钟芯片,以实现计时功能。测温元件选用的是一种封装类似于三极管的温度传感器,此温度传感器具备把模拟量转变为数字量的功能,大大简化了本设计的电路,提高了系统的稳定性,同时也降低了设计成本。为了具备比较好的显示界面,显示器件采用的是LCD液晶屏,1 方案论证与系统总体框图1.1 方案论证1.1.1 方案一感温器件选用的是日常生活中比较常见的热敏电阻,温度与时间的数字则用LED数码管显示。本系统的测温电路利用热敏电阻的感温效应,采集随被测温度变化的电流值或者电压值,然后经过A/D芯片把模拟量转换成单片机可以处理的数字量,然后用
9、LED数码管将被测温度显示出来。这样的设计方案需用到比较繁杂的A/D转换电路,要比较完整的显示所有内容需用到多位数码管,电路比较繁杂。1.1.2 方案二 选择DS18B20作为测温器件,把测得的温度和同步的时间日历显示在LCD液晶里。本系统仅使用一只DS18B20传感器,DS18B20不仅可以直接读取被测温度值进行显示,而且温度传感器DS18B20具有独特的单总线接口方式,与单片机连接时仅需要一条线既可实现通讯,无需太多外部元件,简化了外围电路5。1602液晶的显示空间大,完全满足温度和日历的显示要求,电路简单,显示信息完整,可以很好的满足设计要求。综上所述,方案一中的电路比较复杂,器件多,不
10、便于调试;方案二的电路相对简单,器件消耗少,并且程序编写也比较简单,所以本设计选用方案二。1.2 系统设计框图主控器模块、显示模块、测温模块和时钟模块是本系统的主要部分,另外还加有一些简单电路,例如复位电路、报警电路和按键等。测温模块的核心器件是DS18B20温度传感器,其应用电路简单,方便使用。计时芯片使用的是DS1302,它能够精准计时,而且能够在失去主电源的情况下由后备电源对它供电,以保证芯片的正常工作。显示模块采用液晶显示屏LCD1602,简洁美观。主控芯片使用STC公司生产的RC系列STC89C52RC单片机。具体系统设计框图如图1.1所示。LCD显示屏时钟温度传感器报警电路按键 复
11、位电路主控制器图1.1 系统设计框图2 主要器件功能介绍2.1 STC89C52RC单片机 STC89C52RC单片机是国内公司生产的一种8位单片机,属于RC系列单片机中的一种。这种系列单片机在出厂时就已经被完全加密,不可能被解密,用户程序可以用ISP/IAP机制写入。它分有DIP-40,PLCC-44,PQFP-44三种封装类型,第一种封装类型是最普遍的,也是最常用的,所以此系统选择了第一种封装类型。此单片机的功耗比较很低,运行速度也比较快,内部带有多达8K容量的可编程存储器,完全满足了本设计的控制要求。芯片中包含着非常灵巧的8位处理器和大容量的可编程存储器,这特性加快了此单片机在很多不同控
12、制领域的使用。此单片机具有这样的一些标准功能,如32 位I/O口线,512字节随机存储器,8k字节可编程存储器,三个16 位 定时器/计数器,内部复位电路,内置4KB带电可擦写可编程只读存储器,掉电时数据不会丢失,可以同时接收与发送数据的串行口。另外它可降至0Hz 静态逻辑操作,有两种软件节电模式可选择。空闲模式下,CPU不工作,但串口、RAM、中断、定时器/计数器仍然工作6。掉电保护方式下,RAM内容不丢失,振荡器不工作,因此单片机停止所有工作,当新中断或硬件复位时,单片机又开始工作。在此采用的STC公司生产的STC89C52RC单片机,它不仅价格便宜,而且焊接简单方便,并有着比较大的存储空
13、间7。其管脚图如下图2.1所示。图2.1 STC89C52单片机管脚图STC89C52RC各个管脚的功能如下8-9:(1)主电源引脚(2根)VCC(Pin40):电源输入,接正五伏电源;GND(Pin20):接地。(2)外接晶振引脚(2根)XTAL1(Pin19):片内振荡电路的输入端;XTAL2(Pin18):片内振荡电路的输出端。(3)控制引脚(4根)RST/VPP(Pin9):复位用的引脚,高电平有效,当高电平持续的时间为24个时钟振荡周期时就可以实现单片机的复位操作,如果高电平的持续时间过短将不能复位成功。ALE/PROG(Pin30):地址锁存允许信号;PSEN(Pin29):外部存
14、储器读选通信号。EA/VPP(Pin31):程序存储器的选择脚,当这个管脚接到高电平时指令被从内部程序存储器读取,当这个管脚接到低电平时指令被从外部程序存储器读取。(4)可编程输入/输出引脚(32根)这种类型的单片机中共32个可编程的I/O引脚,每8位作为一个口,共分为4组,分别为P0、P1、P2、P3口。P0口(Pin39Pin32):8位双向I/O引脚,名称为P0.0P0.7;P1口(Pin1Pin8):8位准双向I/O引脚,名称为P1.0P1.7; P2口(Pin21Pin28):8位准双向I/O引脚,名称为P2.0P2.7 ;P3口(Pin10Pin17):8位准双向I/O引脚,名称为
15、P3.0P3.7。2.2 LCD1602显示屏LCD1602液晶屏,可以显示两行的内容,共有32小格,每个字符占用一个小格子的空间。可以拿来显示符号、数字、字母等的点阵型液晶模块,也可以显示汉字,但是实现的过程相当复杂,1602液晶也常常被叫为1602字符型液晶,它由若干个57或者511等点阵字符位组成,字符可以显示在任何一个点阵字符位上。这种液晶有不少的优点,例如超薄而轻巧、体积较小、显示的内容比较丰富和微功耗等,所以比较受欢迎,它被越来越广泛的应用到袖珍式仪表以及低功耗应用系统中10。比传统的数码管显示它的显示界面有了很大的改善,虽然它的价格高点,但是它显示的效果好也很耐用。与数码管相比,
16、它接线相对简单,容易焊接,而且它的显示程序相对数码管的显示程序来说也比较短,容易编写和调试。LCD1602可以能让系统的显示模块能够可以显示比较多的信息,该器件采用并行接口,传送数据的效率也比较好。LCD1602的管脚图和接口信号说明分别如图2.2和表2.1所示。图2.2 LCD1602的管脚图 表2.1 LCD1602的接口信号说明引脚号标识 说明PIN1GND接0VPIN2VCC接4.8V-5VPIN3V0对地接电阻470-2KPIN4RSRS=0,指令寄存器;RS=1,数据寄存器PIN5R/WR/W=0,写;R/W=1,读PIN6E允许信号PIN7D0数据0PIN8D1数据1PIN9D2
17、数据2PIN10D3数据3PIN11D4数据4PIN12D5数据5PIN13D6数据6PIN14D7数据7PIN15LED+背光正极,接4.8V - 5VPIN16LED-背光负极,接0V使用指令可以实现对1602屏的操作,例如读、写、显示地址等。使用这类型的液晶前要了解相关指令的作用以及指令的设置方法,只有在完成相关指令的设置的情况下,才能在屏幕上显示所需的效果,这种液晶总共有11条指令,如表2.2所示。表2.2 LCD1602指令表指令RSRWD7D6D5D4D3D2D1D01清屏00000000012光标返回0000000013输入模式00000001I/DS4显示控制0000001DC
18、B5光标/字符移位000001S/CR/L6功能00001DLNF7置字符发生器地址0001字符发生存贮器地址8置数据存贮器地址001显示数据存贮器地址9读忙标志和地址01BF计数器地址10写数据到指令7.8所设地址10要写的数据11从指令7.8所设的地址读数据11读出的数据2.3 DS1302时钟芯片DS1302芯片是由国外公司研制生产的,一般为8管脚封装,它作为一种自带随机存储器、运行功耗低、运行速度快的适时时钟芯片,它的实时时钟电路提供了年、月、日、星期、时、分还有秒的信息。这种时钟芯片可以自动调整闰年的天数和每月的天数,改变了以往只能靠人工进行调整的情况,时钟操作能以指令设定为12或2
19、4小时格式11-12。它与主控制器之间的通信方式为同步串行方式,节省了主控制器的I/O资源,也简化了系统的电路设计结构。DS1302管脚图及内部结构图如下图2.3所示。(1)1脚VCC1为后备电源引脚;(2)2和3脚X1、X2是晶振引脚;(3)4脚GND作为接地引脚;(4)5脚RST作为复位引脚;(5)6脚I/O作为数据输入、输出引脚;(6)7脚SCLK作为串行时钟引脚;(7)8脚VCC2作为主电源引脚;图2.3 DS1302管脚及内部结构图2.3.1 DS1302的寄存器DS1302内部含有时钟相关的寄存器,通过向相关寄存器写入一些命令字实现对时钟DS1302的操作,例如在需改变某时刻分的初
20、始值,首先要把命令字82H写入寄存器,然后就可以把初始值写入分寄存器;当某时刻分的值需要读出时,需要先写入命令字82H,然后才可以从分寄存器读取数据。表2.3列出了DS1302内部和时钟相关的寄存器分布。表2.3 DS1302内部和时钟相关的寄存器分布寄存器名称命令字取值范围各位名称写读76543210秒寄存器80H81H0059CH10SECSEC分寄存器82H82H0059010MINMIN时寄存器84H85H0112,002312/240APHRHR日寄存器86H87H0128,29,30,310010DATEDATE月寄存器88H89H011200010MMONTH周寄存器8AH8BH
21、010700000DAY年寄存器8CH8DH099910YEAR10YEAR上表中各寄存器存放的数据位均为BCD码,所用符号的意义如下:(1)CH为时钟停止位,CH=0,振荡器开始工作;CH=1,振荡器停止工作。(2)10SEC为秒的十位数字,SEC为秒的个位数字; (3)10MIN为分的十位数字,MIN为分的个位数字;(4)AP为小时的格式设置位,AP=0,上午模式(AP);AP=1,下午模式(PM);(5)10DATE为日期的十位数字,DATE为日期的个位数字;(6)10M为月的十位数字,MONTH为月的个位数字;(7)DAY为周的个位数字;(8)10YEAR为年的十位数字,YEAR为年的
22、个位数字; DS1302内部的RAM共有两种,一种是单个RAM单元,总共31个,一个8位的字节作为每一个单元13。C0H到FDH作为命令控制字,偶数表示写操作,奇数表示读操作;另一种是突发方式下的RAM, 所有的RAM的31个字节可一次性被读写,FFH和FEH分别作为读写命令控制字。在一般情况下,不需要对RAM进行操作。2.3.2 DS1302的读写方式如图2.4所示为DS1302的命令字结构。第8位为最高控制位,当它为1时,表示允许写入;如果不为1,则表示禁止写入。第7位表示操作对象是RAM还是寄存器,该位为1,对RAM操作;不为1,对时钟寄存器操作。最后一位为0,表示写;为1,表示读。剩下
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 单片机 数字 温度计 设计 本科毕业 论文 28
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内