课程设计--多点温度计设计.doc
《课程设计--多点温度计设计.doc》由会员分享,可在线阅读,更多相关《课程设计--多点温度计设计.doc(37页珍藏版)》请在沃文网上搜索。
1、多点温度计设计 1. 课程设计方案1.1 课程设计要求1.1.1.基本要求利用数字温度传感器与单片机结合来测量温度。利用数字温度传感器DS18B20采集温度信号,计算后用LED1602字符型液晶显示相应的温度值。数字温度计所测量的温度采用数字显示,控制器使用单片机AT89C51,测温传感器使用DS18B20。首先进行预设计,根据选定硬件电路方案,充分利用单片机软、硬件资源。主要设计指标有测量两点或两点以上的温度,测温范围均为:0100;每点温度分辨力:0.0625;测量速率:2次/秒自动连续测量。1.1.2.扩展要求用图形液晶显示温度曲线,当前温度、单位等,利用单片机实现一些扩展功能,如:实现
2、超温报警等,或结合自身能力实现其他功能。1.2 课程设计内容1.2.1设计方案根据课程设计要求,制定课程设计方案。采用专用集成数字化温度传感器DS18B20测温,它具有接口简单、直接数字量输出、精度高等优点。DS18B20是DALLAS公司的最新单线数字温度传感器,它的温度检测与数字检测数据全集成于一个芯片之上,测量范围为-55+125,在-10 +85内,精度为0.0625,完全可以满足设计指标要求。在DS18B20中的每个器件上都有独一无二的序列号,这个序列号是出厂前已经刻录在DS18B20中,需要用户使用前进行读取。它还可以实现“一线总线”的数字方式传输,即在一个端口上,可以挂很多数字温
3、度传感器,通过读取每个DS18B20的序列号,进行匹配后完成多个DS18B20的测温过程,电路简单,易于实现。另DS18B20支持35.5V的电源范围,使得系统设计更加方便灵活。DS18B20支持报警温度设置,用户设定的报警温度保存在EEPROM存储器,满足部分扩展要求,并且掉电后依然保存,方便随时的通断电。单片机控制模块以ATMEL公司生产的AT89C52单片机为主控核心,AT89C52单片机价格便宜,语言简单,是单片机初学者的基本入门课程,对于初学者来说使用容易,且可用性强。在完成对DS18B20所采集的温度进行读取、输出并控制LED1602实时显示外,为了满足扩展要求,增加显示时间模块,
4、完成对时间的设置,以达到设计要求。温度显示模块选用字符型LED1602,1602使用技术成熟,价格便宜,对于实时显示温度、单位等可以满足要求。按键模块直接使用普通按键,操作简单,价格便宜。系统框图如图1所示。AT89C51单片机主控制模块蜂鸣器报警电路串口(供电和程序下载)复位和时钟振荡电路1602液晶显示2个DS18b20测温电路图1 多点测温系统框图1.2.2设计内容根据制定的实验方案,进行课程设计,其内容包括硬件电路设计和系统软件设计,其主要模块包括AT89C52单片机主控制模块、多个DS18B20测温模块、LED1602液晶显示模块和按键模块。硬件电路较为简单,参照单片机AT89C52
5、和数字温度传感器DS18B20的工作原理和技术手册,以及实验方案中的蜂鸣器设计、按键设计,完成硬件电路图的设计和绘制。系统软件分为两大部分,DS18B20的序列号读取程序和温度测量程序。根据DS18B2的工作过程和读写时序、AT89C52工作特点和想要达到的设计效果,进行程序的编写。具体工作过程为:下载读序列号程序,读取两个DS18B20中的序列号,并记录下来;根据读取的序列号更改数组内容后,重新下载程序,进行多点测温过程,由DS18B20温度传感器芯片测量当前温度,通过程序匹配不同的DS18B20,传送各个DS18B20的测量值,将结果送入单片机;通过AT89C52单片机芯片对送入的测量温度
6、读数进行计算和转换,并将此结果送入液晶显示模块,同时判断是否超过设定的警戒温度,决定蜂鸣器是否工作;LED1602模块将送来的值显示于显示屏上。单片机通过扫描按键,进入不同的子程序,完成时间的显示。1.3 课程设计原理1.3.1 DS18B20工作原理1.3.1.1 DS18B20概述DS18B20数字温度传感器是DALLAS公司生产的1Wire,即单总线器件,具有线路简单,体积小的特点。因此用它来组成一个测温系统,具有线路简单,在一根通信线,可以挂很多这样的数字温度计,十分方便。DS18B20产品的特点只要求一个端口即可实现通信。在DS18B20中的每个器件上都有独一无二的序列号。实际应用中
7、不需要外部任何元器件即可实现测温。测量温度范围在55.C到125.C之间。数字温度计的分辨率用户可以从9位到12位选择。内部有温度上、下限告警设置。DS18B20引脚功能描述见表1。表1 DS18B20详细引脚描述DS18B20引脚图如图2所示。1.3.1.2 DS18B20的主要特性(1)适应电压范围更宽,电压范围:3.05.5V,在寄生电源方式下可由数据线供电。(2)独特的单线接口方式,DS18B20在与微处理器连接时仅需要一条口线即可实现微处理器与DS18B20的双向通讯。(3)DS18B20支持多点组网功能,多个DS18B20可以并联在唯一的三线上,实现组网多点测温。(4)DS18B2
8、0在使用中不需要任何外围元件,全部传感元件及转换电路集成在形如一只三极管的集成电路内。(5)温范围55125,在-10+85时精度为0.5(6)可编程的分辨率为912位,对应的可分辨温度分别为0.5、0.25、0.125和0.0625可实现高精度测温。(7)在9位分辨率时最多在93.75ms内把温度转换为数字,12位分辨率时最多在750ms内把温度值转换为数字,速度更快。(8)测量结果直接输出数字温度信号,以一线总线串行传送给CPU,同时可传送CRC校验码,具有极强的抗干扰纠错能力。(9)负压特性:电源极性接反时,芯片不会因发热而烧毁,但不能正常工作。1.3.1.3 DS18B20内部结构DS
9、18B20的内部框图如图2所示。64位ROM存储器件独一无二的序列号。暂存器包含两字节(0和1字节)的温度寄存器,用于存储温度传感器的数字输出。暂存器还提供一字节的上线警报触发(TH)和下线警报触发(TL)寄存器(2和3字节),和一字节的配置寄存器(4字节),使用者可以通过配置寄存器来设置温度转换的精度。暂存器的5、6和7字节器件内部保留使用。第八字节含有循环冗余码(CRC)。使用寄生电源时,DS18B20不需额外的供电电源;当总线为高电平时,功率由单总线上的上拉电阻通过DQ引脚提供;高电平总线信号同时也向内部电容CPP充电,CPP在总线低电平时为器件供电。(注:INTERNALVDD-内部V
10、DD64-BITROMAND1-wirePROT-64位ROM和单线端MEMORYCONTROLLOGIC-存储器控制逻辑SCRATCHPAD 暂存器TEMPERATURESENSOR 温度传感器ALARMHIGHTRIGGER(TH)REGISTER上限温度触发ALARMLOWTRIGGER(TL)REGISTER下限温度触发8-BITCRCGENERTOR8位CRC产生器POWERSUPPLLYSENSE 电源探测PARASITEPOWERCIRCUIT寄生电源电路)。图2 DS18B20内部框图1.3.1.4 DS18B20中4个主要数据部件光刻ROM中的64位序列号是出厂前被光刻好的,
11、它可以看作是该DS18B20的地址序列码。64位光刻ROM的排列是:开始8位(28H)是产品类型标号,接着的48位是该DS18B20自身的序列号,最后8位是前面56位的循环冗余校验码。光刻ROM的作用是使每一个DS18B20都各不相同,这样就可以实现一根总线上挂接多个DS18B20的目的。DS18B20中的温度传感器可完成对温度的测量。以12位转化为例:用16位符号扩展的二进制补码读数形式提供,以0.0625/LSB形式表达,其中S为符号位。这是12位转化后得到的12位数据,存储在18B20的两个8比特的RAM中,二进制中的前面5位是符号位,如果测得的温度大于0,这5位为0,只要将测到的数值乘
12、于0.0625即可得到实际温度;如果温度小于0,这5位为1,测到的数值需要取反加1再乘于0.0625即可得到实际温度。例如+125的数字输出为07D0H,+25.0625的数字输出为0191H,-25.0625的数字输出为FF6FH,-55的数字输出为FC90H,如表2所示。(注:TEMPERATURE-温度,DIGITALOUTPUT-数字输出)表2 DS18B20温度数据表DS18B20温度传感器的存储器DS18B20温度传感器的内部存储器包括一个高速暂存RAM和一个非易失性的可电擦除的EEPROM,后者存放高温度和低温度触发器TH、TL和结构寄存器。配置寄存器表3 配置寄存器低五位一直都
13、是1,TM是测试模式位,用于设置DS18B20在工作模式还是在测试模式。在DS18B20出厂时该位被设置为0,用户不要去改动。R1和R0用来设置分辨率,如表4所示:(DS18B20出厂时被设置为12位)表4 R1与R0确定传感器分辨率设置表1.3.1.5 DS18B20工作过程初始化ROM命令跟随着需要交换的数据;功能命令跟随着需要交换的数据。访问DS18B20必须严格遵守这一命令序列,如果丢失任何一步或序列混乱,DS18B20都不会响应主机。a. 初始化:DS18B20所有的数据交换都由一个初始化序列开始。由主机发出的复位脉冲和跟在其后的由DS18B20发出的应答脉冲构成。当DS18B20发
14、出响应主机的应答脉冲时,即向主机表明它已处在总线上并且准备工作。b. ROM命令:ROM命令通过每个器件64-bit的ROM码,使主机指定某一特定器件(如果有多个器件挂在总线上)与之进行通信。DS18B20的ROM如表3-6所示,每个ROM命令都是8bit长。c. 功能命令:主机通过功能命令对DS18B20进行读/写Scratchpad存储器,或者启动温度转换。DS18B20的功能命令如表5所示。表5 DS18B20功能命令表1.3.1.5 DS18B20信号方式DS18B20采用严格的单总线通信协议,以保证数据的完整性。该协议定义了几种信号类型:复位脉冲、应答脉冲、写0、写1、读0和读1。除
15、了应答脉冲所有这些信号都由主机发出同步信号。总线上传输的所有数据和命令都是以字节的低位在前。a. 初始化序列:复位脉冲和应答脉冲在初始化过程中,主机通过拉低单总线至少480s,以产生复位脉冲(TX)。然后主机释放总线并进入接收(RX)模式。当总线被释放后,4.7k的上拉电阻将单总线拉高。DS18B20检测到这个上升沿后,延时15s60s,通过拉低总线60s240s产生应答脉冲。初始化波形如图3所示。图3 初始化脉冲b. 读和写时序:在写时序期间,主机向DS18B20写入指令;而在读时序期间,主机读入来自DS18B20的指令。在每一个时序,总线只能传输一位数据。读/写时序如图4所示。写时序存在两
16、种写时序:“写1”和“写0”。主机在写1时序向DS18B20写入逻辑1,而在写0时序向DS18B20写入逻辑0。所有写时序至少需要60s,且在两次写时序之间至少需要1s的恢复时间。两种写时序均以主机拉低总线开始。产生写1时序:主机拉低总线后,必须在15s内释放总线,然后由上拉电阻将总线拉至高电平。产生写0时序:主机拉低总线后,必须在整个时序期间保持低电平(至少60s)。在写时序开始后的15s60s期间,DS18B20采样总线的状态。如果总线为高电平,则逻辑1被写入DS18B20;如果总线为低电平,则逻辑0被写入DS18B20。读时序DS18B20只能在主机发出读时序时才能向主机传送数据。所以主
17、机在发出读数据命令后,必须马上产生读时序,以便DS18B20能够传送数据。所有读时序至少60s,且在两次独立的读时序之间至少需要1s的恢复时间。每次读时序由主机发起,拉低总线至少1s。在主机发起读时序之后,DS18B20开始在总线上传送1或0。若DS18B20发送1,则保持总线为高电平;若发送0,则拉低总线。当传送0时,DS18B20在该时序结束时释放总线,再由上拉电阻将总线拉回空闲高电平状态。DS18B20发出的数据在读时序下降沿起始后的15s内有效,因此主机必须在读时序开始后的15s内释放总线,并且采样总线状态。DS18B20在使用时,一般都采用单片机来实现数据采集。只需将DS18B20信
18、号线与单片机1位I/O线相连,且单片机的1 位I/O 线可挂接多个DS18B20,就可实现单点或多点温度检测。图4 DS18B20读/写时序图1.3.1.6 DS18B20测温原理DS18B20的读写时序和测温原理与DS1820相同,只是得到的温度值的位数因分辨率不同而不同,且温度转换时的延时时间由2s减为750ms。 DS18B20测温原理如图5所示。图中低温度系数晶振的振荡频率受温度影响很小,用于产生固定频率的脉冲信号送给计数器1。高温度系数晶振随温度变化其振荡率明显改变,所产生的信号作为计数器2的脉冲输入。计数器1和温度寄存器被预置在55所对应的一个基数值。计数器1对低温度系数晶振产生的
19、脉冲信号进行减法计数,当计数器1的预置值减到0时,温度寄存器的值将加1,计数器1的预置将重新被装入,计数器1重新开始对低温度系数晶振产生的脉冲信号进行计数,如此循环直到计数器2计数到0时,停止温度寄存器值的累加,此时温度寄存器中的数值即为所测温度。图3中的斜率累加器用于补偿和修正测温过程中的非线性,其输出用于修正计数器1的预置值。图5 DS18B20测温原理框图1.3.2 LED1602工作原理1.3.2.1 LED1602简介字符型液晶显示模块是一种专门用于显示字母、数字、符号等点阵式LCD,目前常用16*1,16*2,20*2和40*2行等的模块。一般1602字符型液晶显示器实物如图6所示
20、。 图6 1602实物图1.3.2.2 LED1602的基本参数及引脚功能1602LED分为带背光和不带背光两种,基控制器大部分为HD44780,带背光的比不带背光的厚,是否带背光在应用中并无差别。1602LED主要技术参数:显示容量:162个字符芯片工作电压:4.55.5V工作电流:2.0mA(5.0V)模块最佳工作电压:5.0V字符尺寸:2.954.35(WH)mm引脚功能说明:1602LED采用标准的14脚(无背光)或16脚(带背光)接口,各引脚接口说明如表6所示。表6 1602引脚说明表编号符号引脚说明编号符号引脚说明1VSS电源地9D2数据2VDD电源正极10D3数据3VL液晶显示偏
21、压11D4数据4RS数据/命令选择12D5数据5R/W读/写选择13D6数据6E使能信号14D7数据7D0数据15BLA背光源正极8D1数据16BLK背光源负极第1脚:VSS为地电源。第2脚:VDD接5V正电源。第3脚:VL为液晶显示器对比度调整端,接正电源时对比度最弱,接地时对比度最高,对比度过高时会产生“鬼影”,使用时可以通过一个10K的电位器调整对比度。第4脚:RS为寄存器选择,高电平时选择数据寄存器、低电平时选择指令寄存器。第5脚:R/W为读写信号线,高电平时进行读操作,低电平时进行写操作。当RS和R/W共同为低电平时可以写入指令或者显示地址,当RS为低电平R/W为高电平时可以读忙信号
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
20 积分
下载 | 加入VIP,下载更划算! |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 课程设计 多点 温度计 设计
