数字温度计设计及仿真.pdf
![资源得分’ 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)
《数字温度计设计及仿真.pdf》由会员分享,可在线阅读,更多相关《数字温度计设计及仿真.pdf(42页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、.基于 AT89C51 的数字温度计设计与仿真摘 要随着科学技术的不断发展,温度的检测、控制应用于许多行业,数字温度计就是其中一例,它的反应速度快、操作简单,对环境要求不高,因此得到广泛的应用。传统的温度测量大多使用热敏电阻,但热敏电阻的可靠性差,测量温度准确率低,而且必须经过专门的接口电路将模拟信号转换成数字信号才能由单片机进行处理。本课题采用单片机作为主控芯片,利用 DS18B20 来实现测温,用 LCD 液晶显示器来实现温度显示。温度测量围为 0119,精确度 0.1。可以手动设置温度上下限报警值,当温度超出所设报警值时将发出报警鸣叫声,并显示温度值,该温度计适用于人们的日常生活和工、农
2、业生产领域。关键词:数字温度计;DS18B20;AT89C51;LCD1602Digital Thermometers Design and Simulation Based on AT89C51Digital Thermometers Design and Simulation Based on AT89C51DengLianWei(Zhangjiajie College of Jishou University,Zhangjiajie,Hunan 427000)AbstractAbstractWiththecontinuousdevelopmentofscienceandtechnolog
3、y,thetemperaturedetectionandcontrolusedinmanyindustries,thedigitalthermometerisacaseinwhichthereaction speed,simple operation,less demandingon the environment,it is widelyused.Most ofthe traditionaluse ofthermistortemperature measurement,but poorreliabilityofthermistorsto measuretemperature,low accu
4、racy,and must go througha specialinterfacecircuitconvertsthe analog signaltodigital signalprocessingby themicrocontroller.Thesubjectofusing SCMas themain chip,the use of DS18B20to achievetemperature,with the LCDliquidcrystal displayto achieve thetemperature display.Temperature measurement range is 0
5、 119,accuracy of 0.1.You can manuallyset the alarm value upper and lower temperature,when the temperature exceeds the setalarm when the alarm calls,and display temperature,the thermometer for peoples dailylives and industrial and agricultural production areas.Keywords:Keywords:Digital Thermometer;DS
6、18B20;AT89C51;LCD1602.第一章绪论 11.1 前言 1.录目.1.2 课题的目的及意义 11.3 该论文研究的容 1第二章设计方案 22.1 方案 1:使用电阻元件 22.2 方案 2:使用温度传感器 22.3 方案 2 的总体设计框图 22.3.1 温度传感器 22.3.2 1602LCD 显示模块 6第三章硬件电路设计 103.1 电路原理图 103.2 LCD1602 显示器与单片机的接口电路 103.2.1 查看温度报警值 113.2.2 报警状态显示 113.3 DS18B20 温度传感器与单片机的接口电路 123.3.1 检测 DS18B20 状态 123.4
7、按键与单片机的接口电路 123.4.1 设定温度报警值 13第四章软件设计 144.1 读出温度子程序 154.2 温度转换子程序 154.3 计算温度子程序 164.4 显示数据刷新子程序 164.5 电路仿真 174.6 结果分析 20总结 21参考文献 22附件 23.第一章绪 论1.1 前言随着人们生活水平的不断提高,单片机控制无疑是人们追求的目标之一,它给人们带来的方便也是不可否定的,其中数字温度计就是一个典型的例子,但人们对它的要求也越来越高,要为现代人工作、科研、生活提供更好的更方便的设施就需要从单片机技术入手,一切向着数字化控制,智能化控制方向发展。单片机技术已经普及到我们生活
8、,工作,科研等各个领域,已经成为一种非常成熟的技术。1.2 课题的目的及意义数字温度计与传统温度计相比,具有结构简单、可靠性高、成本低、测量围广、体积小、功耗低、显示直观等特点。该设计使用AT89C51,DS18B20 以及通用液晶显示屏 1602LCD 等。通过本次设计能够更加了解数字温度计工作原理和熟悉单片机的发展与应用,巩固所学的知识,为以后工作与学习打下坚实的基础。数字温度计主要运用在工业生产和实验研究中,如电力、化工、机械制造、粮食存储等领域。温度是表征其对象和过程状态的重要参数之一。比如:发电厂锅炉温度必须控制在一定的围之,许多化学反应必须在适当的温度下才能进行。没有合适的温度环境
9、,许多电子设备就不能正常工作。因此,温度的测量和控制是非常重要的。1.3 该论文研究的容通过对目前各种温度传感器的分析与研究,对温度传感器做出合理选择,并根据实际需要选择合适的主芯片和显示器,达到优化整体结构,提高温度检测精度,同时使系统具有测温围广、体积小、功耗低、精度高、显示直观等优点,并保证系统结构简洁。本课题的研究重点将放在元器件介绍、硬件电路和程序设计这三个方面。通过研究,将设计出一款简洁实用、精确稳定、使用直观的便携式数字温度计。.第二章设计方案2.1 方案 1:使用电阻元件由于本设计是测温电路,可以使用热敏电阻之类的器件,利用其感温效应将被测温度变化的电压或电流采集过来,进行 A
10、/D 转换后,就可以用单片机进行数据的处理,在显示电路上,可以将被测温度显示出来,这种设计需要用到A/D 转换电路,感温电路比较复杂,成本高。2.2 方案 2:使用数字温度传感器在单片机电路设计中,大多使用数字温度传感器3,本课题中使用一只温度传感器 DS18B20,此传感器可以很容易直接读取被测温度值,进行转换,就可以满足设计要求。方案二电路比较实用,软件设计也比较简单,故采用了方案二。2.3 方案 2 的总体设计框图温度计电路设计总体方框图如图 2.1 所示,控制器采用单片机AT89C51,温度传感器采用 DS18B20,用 LCD 液晶显示屏以串口传送数据实现温度显示8。图 2.1 总体
11、设计框图2.3.1 温度传感器DS18B20温度传感器是美国DALLAS半导体公司最新推出的一种改进型智能温度传感器,是一线式数字式温度计芯片,体积更小、适用电压更宽、更经济。它具有.结构简单,不需外接元件等特点。与传统的热敏电阻测温元件相比,它能直接读出被测温度,并且可根据实际要求通过简单的编程获得 912 位的数字值,使系统设计更灵活、方便。1.DS18B20 的性能特点如下6独特的单线接口仅需要一个端口引脚进行通信;多个 DS18B20 可以并联在惟一的三线上,实现多点组网功能;无须外部器件;可通过数据线供电,电压围为 3.05.5V;零待机功耗;温度用 9 或 12 位数字;用户可定义
12、报警设置;报警搜索命令识别并标志超过程序限定温度(温度报警条件)的器件;负电压特性,电源极性接反时,温度计不会因发热而烧毁,但不能正常工作。2.DS18B20 的外形和部结构DS18B20 部结构主要由四部分组成:64 位光刻 ROM、温度传感器、温度报警触发器 TH 和 TL、配置寄存器。DS18B20 的管脚排列如图 2.2 所示。图 2.2DS18B20 外形图引脚定义:(1)DQ 为数字信号输入/输出端;(2)GND 为电源地;(3)VDD 为外接供电电源输入端(在寄生电源接线方式时接地)。其部结构框图如图 2.3 所示:.图 2.3DS18B20 部结构64 位 ROM 的结构开始
13、8 位是产品类型的编号,接着是每个器件的惟一的序号,共有 48 位,最后 8 位是前面 56 位的 CRC 检验码11,这也是多个 DS18B20 可以采用一线进行通信的原因。温度报警触发器 TH 和 TL,可通过软件写入用户报警上下限。DS18B20 温度传感器的部存储器还包括一个高速暂存 RAM 和一个非易失性的可电擦除的 EEROM。高速暂存 RAM 的结构为 8 字节的存储器,结构如图 2.4 所示。头2 个字节包含测得的温度信息,第 3 和第 4 字节 TH 和 TL 的拷贝,是易失的,每次上电复位时被刷新。第 5 个字节,为配置寄存器,它的容用于确定温度值的数字转换分辨率。DS18
14、B20 工作时寄存器中的分辨率转换为相应精度的温度数值。该字节各位的定义如图 2.4 所示。低 5 位一直为 1,TM 是工作模式位,用于设置 DS18B20 在工作模式还是在测试模式,DS18B20 出厂时该位被设置为 0,用户要去改动,R1 和R0 决定温度转换的精度位数,来设置分辨率。温度LSB温度MSBTH 用户字节 1TL 用户字节 2配置寄存器.图 2.4DS18B20 字节定义.保留保留保留CRC.TM R1 R01.1111.DS18B20 温度转换的时间比较长,而且分辨率越高,所需要的温度数据转换时间越长。因此,在实际应用中要将分辨率和转换时间权衡考虑。高速暂存 RAM 的第
15、 6、7、8 字节保留未用,表现为全逻辑 1。第 9 字节读出前面所有 8 字节的 CRC 码,可用来检验数据,从而保证通信数据的正确性。当 DS18B20 接收到温度转换命令后,开始启动转换。转换完成后的温度值就以16 位带符号扩展的二进制补码形式存储在高速暂存存储器的第 1、2 字节。单片机可以通过单线接口读出该数据,读数据时低位在先,高位在后,数据格式以 0.0625LSB 形式表示5。当符号位 S0 时,表示测得的温度值为正值,可以直接将二进制位转换为十进制;当符号位 S1 时,表示测得的温度值为负值,要先将补码变成原码,再计算十进制数值。表 2.1 是一部分温度值对应的二进制温度数据
16、。DS18B20 完成温度转换后,就把测得的温度值与 RAM 中的 TH、TL 字节容作比较。若 TTH 或 TTL,则将该器件的报警标志位置位,并对主机发出的报警搜索命令作出响应。因此,可用多只 DS18B20 同时测量温度并进行报警搜索。在 64 位 ROM 的最高有效字节中存储有循环冗余检验码(CRC)。主机 ROM 的前56 位来计算 CRC 值,并和存入 DS18B20 的 CRC 值作比较,以判断主机收到的 ROM数据是否正确。DS18B20 的测温原理是这样的,器件中低温度系数晶振的振荡频率受温度的影响很小,用于产生固定频率的脉冲信号送给减法计数器 1;高温度系数晶振随温度变化其
17、振荡频率明显改变,所产生的信号作为减法计数器 2 的脉冲输入。器件中还有一个计数门,当计数门打开时,DS18B20 就对低温度系数振荡器产生的时钟脉冲进行计数进而完成温度测量。.减法计数器 1 对低温度系数晶振产生的脉冲信号进行减法计数,当减法计数器 1的预置值减到 0 时,温度寄存器的值将加 1,减法计数器 1 的预置将重新被装入,减法计数器 1 重新开始对低温度系数晶振产生的脉冲信号进行计数,如此循环直到减法计数器计数到 0 时,停止温度寄存器的累加,此时温度寄存器中的数值就是所测温度值。其输出用于修正减法计数器的预置值,只要计数器门仍未关闭就重复上述过程,直到温度寄存器值达到被测温度值。
18、另外,由于 DS18B20 单线通信功能是分时完成的,它有严格的时隙概念,因此读写时序很重要。系统对 DS18B20 的各种操作按协议进行。操作协议为:初使化DS18B20(发复位脉冲)发 ROM 功能命令发存储器操作命令处理数据表 2.1 一部分温度对应值表温度/+125+85+25.0625+10.125+0.50二进制表示0000 01111101 00000000 01010101 00000000 00011001 00000000 00001010 00010000 00000000 00100000 00000000 1000十六进制表示07D0H0550H0191H00A2H0
19、008H0000H2.3.2 1602LCD 模块显示特性4单 5V 电源电压,低功耗、长寿命、高可靠性置 192 种字符(160 个 57 点阵字符和 32 个 510 点阵字符)具有 64 个字节的自定义字符 RAM,可定义 8 个 58 点阵字符或四个 511点阵字符显示方式:STN、半透、正显驱动方式:1/16DUTY,1/5BIAS视角方向:6 点背光方式:底部 LED通讯方式:4 位或 8 位并口可选标准的接口特性,适配 MC51 和 M6800 系列 MPU 的操作时序1.1602LCD 模块引脚定义.图 2.5 1602LCD 引脚外形图1602LCD 采用标准的 14 脚(无
20、背光)接口,各引脚功能说明如表 2.2 所示。表 2.21602LCD 引脚定义表管脚定义123符号VssVddVEE电源地(GND)电源电压(5V)LCD 驱动电压(可调)功能寄存器选择输入端,输入 MPU 选择模块部寄存器类型号;RS=0,当 MPU 行进写模块操作,指向指令寄存器;4RS当 MPU 进行读模块操作,指向地址计数器;RS=1,无论 MPU 读操作还是写操作,均指向数据寄存器5R/W读写控制输入端,输入 MPU 选择读/写模块操作操作信号:R/W0读操作;R/W1写操作6E使能信号输入端,输入 MPU 读/写模块操作使能信号:读操作时,高电平有效;写操作时,下降沿有效7891
21、011121314.DB0DB1DB2DB3DB4DB5DB6DB7数据输入/输出口,MPU 与模块之间的数据传送通道数据输入/输出口,MPU 与模块之间的数据传送通道数据输入/输出口,MPU 与模块之间的数据传送通道数据输入/输出口,MPU 与模块之间的数据传送通道数据输入/输出口,MPU 与模块之间的数据传送通道数据输入/输出口,MPU 与模块之间的数据传送通道数据输入/输出口,MPU 与模块之间的数据传送通道数据输入/输出口,MPU 与模块之间的数据传送通道.2.1602LCD 液晶显示模块的控制命令1602LCD 液晶模块部的控制器共有 11 条控制命令,如表 2.3 所示表 2.3控
22、制命令表序号 指令123456789清显示光标返回置输入模式显示开/关控制光标或字符移位置功能置字符发生存贮器地址置数据存贮器地址读忙标志或地址写数到 CGRAM 或10DDRAM)从 CGRAM 或 DDRAM 读11数RSR/WD7D6D5D4D3D2D1D0000000000000000001000000000000000000100000001001D01I/DC*1*SB*1S/CR/LDLNF1字符发生存贮器地址1显示数据存贮器地址BF 计数器地址要写的数据容10读出的数据容111602 液晶模块的读写操作、屏幕和光标的操作都是通过指令编程来实现的(说明:1 为高电平、0 为低电平
23、)。指令 1:清显示,指令码 01H,光标复位到地址 00H 位置。指令 2:光标复位,光标返回到地址 00H。.指令 3:光标和显示模式设置 I/D:光标移动方向,高电平右移,低电平左移 S:屏幕上所有文字是否左移或者右移。高电平表示有效,低电平则无效。指令 4:显示开关控制。D:控制整体显示的开与关,高电平表示开显示,低电平表示关显示 C:控制光标的开与关,高电平表示有光标,低电平表示无光标 B:控制光标是否闪烁,高电平闪烁,低电平不闪烁。指令 5:光标或显示移位 S/C:高电平时移动显示的文字,低电平时移动光标。指令 6:功能设置命令 DL:高电平时为 4 位总线,低电平时为 8 位总线
24、 N:低电平时为单行显示,高电平时双行显示 F:低电平时显示 5x7 的点阵字符,高电平时显示 5x10 的点阵字符。指令 7:字符发生器 RAM 地址设置。指令 8:DDRAM 地址设置。指令 9:读忙信号和光标地址 BF:为忙标志位,高电平表示忙,此时模块不能接收命令或者数据,如果为低电平表示不忙。指令 10:写数据。指令 11:读数据。初始化程序:SET_LCD:;对 LCD 做初始化设置及测试CLRLCD_ENCALLINIT_LCD;初始化 LCDINIT_LCD:;8 位 I/O 控制 LCD 接口初始化MOVA,#38H;双列显示,字形 5*7 点阵CALLWCALLDELAY1
25、DELAY1:;延时 5msMOVR6,#25DL2:MOVR7,#100DJNZR7,$DJNZR6,DL2RETMOVA,#01H;清除 LCD 显示屏.第三章第三章硬件电路设计硬件电路设计3.1 电路原理图本温度计大体分三个工作过程。首先,由 DS18B20 温度传感器芯片测量当前温度,并将结果送入单片机。然后,通过 AT89C51 单片机芯片对送入的测量温度读数进行计算和转换,并将此结果送入液晶显示模块。最后,LCD 1602 模块将送来的值显示于显示屏上。温度计的整体电路设计原理图如图 3.1。从图中可以看到,本电路主要由 DS18B20 温度传感器芯片、通用 LCD 1602 液晶
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数字 温度计 设计 仿真
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内