1、徐州工程学院毕业设计(论文)摘 要温度的检测与控制是工业生产过程中比较典型的应用之一,随着传感器在生产和生活中的更加广泛的应用,利用新型单总线式数字温度传感器实现对温度的测试与控制得到更快的开发,本文设计了一种基于AT89C51的温度检测及报警系统。该系统将多个单总线温度传感器DS18B20并接在控制器的一个端口上,对各个传感器温度进行循环采集,将采集到的温度值与设定值进行比较,当超出设定的上限温度时,通过ISD1420语音电路给出语音提示及报警信号。文中给出了单根数据线上扩展多个温度传感器的设计方法,并给出了系统实现的硬件原理图及软件流程图。经实验测试表明,该系统测量精度高、抗干扰能力强、报
2、警及时准确,具有一定的参考价值。该系统设计和布线简单,结构紧凑,体积小,重量轻,抗干扰能力强,性价比高,扩展方便,在大型仓库,工厂,智能化建筑等领域的多点温度检测中有广阔的应用前景。关键词:数字温度传感器;单总线;通信协议;DS18B20;AT89C2051;LED显示器;报警信号AbstractTemperature detection and control of industrial production process, one of the more typical applications, with sensors in production and life is more w
3、idely used, using a new single-bus digital temperature sensor to achieve the test and control the temperature more rapidly development, this paper is designed based on AT89C51 temperature detection and alarm systems. The system will be more than a single-bus temperature sensor DS18B20 and connected
4、to a port on the controller, the temperature sensors on each loop collection, the temperature will be collected to compare with the set value, when the temperature exceeds the upper limit set , through the ISD1420 voice circuit gives voice prompts and alarm signal. In this paper, a single data lines
5、 extend multiple temperature sensor design methods and gives the system implementation of hardware and software flow diagram. The experimental tests show that this high accuracy, strong anti-interference ability, alarm timely and accurate, with a certain reference value. The system design and layout
6、 simple and compact structure, small size, light weight, anti-jamming capability, cost-effective to expand convenience, in large warehouses, factories, construction and other areas of intelligent multi-point temperature measurement in a wide range of applications prospects. Key words digital tempera
7、ture sensor single bus communication protocols DS18B20 AT89C2051 LED display alarm signal目 录1绪论11.1课题背景11.2温度检测与及报警系统的国内外状况11.3温度参数、温度检测和语音报警31.3.1 温度参数31.3.2 温度检测31.3.3 语音报警32 系统总体设计方案42.1单片机语音温度报警系统的总体设计42.2 系统的基本工作过程53 单片机温度控制和语音报警系统硬件设计63.1 温度控制和报警主机63.1.1主控制单片机63.1.2 AT89S51特点63.1.3 AT89S51主要功能
8、特性:73.1.4 温度检测和报警主机硬件电路设计73.1.4单片机及复位键控制模块103.2 语音电路123.2.1 ISD1420芯片简述123.2.2 芯片引脚介绍133.2.3 芯片工作原理133.2.4 芯片工作模式133.2.5语音电路设计143.3 DS18B20芯片简介143.3.1温度传感器的历史及简介143.3.2 DS18B20性能特点与内部结构153.3.3 DS18B20工作时序193.3.4 DS18B20的操作协议213.3.5 DS18B20序列号编码233.3.6 DS18B20的测温原理243.3.7 DS18B20的测温流程253.3.8 DS18B20数
9、据校验与纠错253.3.9 DS18B20在测温系统中的应用273.3.10测温系统的硬件工作原理273.3.11 注意事项284 软件设计304.1设计思路304.2 程序设计314.2.1 主程序314.2.2 读出温度子程序324.2.3温度转化命令子程序334.2.4计算温度子程序334.2.5显示数据刷新子程序344.2.6 LED显示程序模块345 系统调试365.1硬件调试365.1.1 硬件静态的调试375.1.2 系统硬件调试375.2软件调试375.3 软硬联调37结 论38致 谢39参考文献40附 录 4153-1 绪论1.1 课题背景测量控制的作用是从生产现场中获取各种
10、参数,运用科学计算的方法,综合各种先进技术,使每个生产环节都能够得到有效的控制,不但保证了生产的规范化、提高产品质量、降低成本,还确保了生产安全。所以,测量控制技术已经被广泛应用于炼油、化工、冶金、电力、电子、轻工和纺织等行业。 随着单片机技术的迅速兴起与蓬勃发展,其稳定、安全、高效、经济等优点十分突出,所以其应用也十分广泛。单片机已经无处不在、与我们生活息息相关,并且渗透到生活的方方面面。 单片机的特点是体积较小,也就是其集成特性,其内部结构是普通计算机系统的简化,增加一些外围电路,就能够组成一个完整的小系统,单片机具有很强的可扩展性。它具有和普通计算机类似的、强大的数据处理功能,通过使用一
11、些科学的算法,可以获得很强的数据处理能力。所以单片机在工业中应用中,可以极大地提高工业设备的智能化、数据处理能力和处理效率,而且单片机无需占用很大的空间。 随着温度检测理论和技术的不断更新, 温度传感器的种类也越来越多,在微机系统中使用的传感器,必须是能够将非电量转换成电量的传感器,目前常用的有热电偶传感器、热电阻传感器和半导体集成传感器等,每种传感器根据其自身特性,都有它自己的应用领域。本设计所介绍的数字温度计与传统的温度计相比,具有读数方便,测温范围广,测温准确,其输出温度采用数字显示,主要用于对测温比较准确的场所,或科研实验室使用,该设计控制器使用单片机AT89S51,测温传感器使用DS
12、18B20,用3位共阳极LED数码管以串口传送数据,实现温度显示,能准确达到以上要求。1.2温度检测与及报警系统的国内外状况温度是一个非常重要的物理量,因为它直接影响燃烧、化学反应、发酵、烘烤、煅烧、蒸馏、浓度、挤压成形、结晶以及空气流动等物理和化学过程。温度控制失误就可能引起生产安全、产品质量、产品产量等一系列问题。因此对温度的检测的意义就越来越大。温度采集控制系统在工业生产、科学研究和人们的生活领域中,得到了广泛应用。在工业生产过程中,很多时候都需要对温度进行严格的监控,以使得生产能够顺利的进行,产品的质量才能够得到充分的保证。使用自动温度控制系统可以对生产环境的温度进行自动控制,保证生产
13、的自动化、智能化能够顺利、安全进行,从而提高企业的生产效率。 温度采集控制系统是在嵌入式系统设计的基础上发展起来的。嵌入式系统虽然起源于微型计算机时代,但是微型计算机的体积、价位、可靠性,都无法满足广大对象对嵌入式系统的要求,因此,嵌入式系统必须走独立发展道路。这条道路就是芯片化道路。将计算机做在一个芯片上,从而开创了嵌入式系统独立发展的单片机时代。单片机诞生于二十世纪七十年代末,经历了SCM、MCU和SOC三大阶段在现代化的工业生产中,电流、电压、温度、压力、流量、流速和开关量都是常用的主要被控参数。例如:在冶金工业、化工生产、电力工程、造纸行业、机械制造和食品加工等诸多领域中,人们都需要对
14、各类加热炉、热处理炉、反应炉和锅炉中的温度进行检测和控制。采用MCS-51单片机来对温度进行控制,不仅具有控制方便、组态简单和灵活性大等优点,而且可以大幅度提高被控温度的技术指标,从而能够大大提高产品的质量和数量。因此,单片机对温度的控制问题是一个工业生产中经常会遇到的问题。同时温度也是生活中最常见的一个物理量,也是人们很关心的一个物理量,它与我们的生活息息相关,有着十分重要的意义,在工业生产中,温度过高或过低会直接影响到产品的质量、对机械设备和控制系统中的各种元器件造成一定的损坏,严重的会影响到生产安全。在日常生活中,温度过高或过低同样会造成一些不良影响。在实际生产、生活等各个领域中,温度是
15、环境因素的不可或缺的一部分,对温度及时精确的控制和检测显得尤为重要。比如,农业上土壤各个层面上的温度将会影响植物的生长;在医院的监护中也用到温度的测量。在工业中,料桶里外上限温度要求不一,以及热处理中工件各个部位的温度对工件形成后的性能至关重要等等。现代电子工业的飞速发展对自动测试的要求越来越高。采用单片机对温度进行控制,不仅具有控制方便和组态简单的优点,而且可以提高被控温度的技术指标。针对以上情况,在控制成本的前提下,通过本设计设计一款能够实时检测控制温度,又具有对系统设定不同的报警温度的温度控制报警系统功能。此系统能够满足现代生产生活的需要,效率高,具有较强的稳定性和灵活性。因此,在生产和
16、生活中要对温度进行严格的控制,使温度在规定的范围内变化。通过本系统提高学生对于温度控制的认识。在学习实践中提高对理论的认知能力和动手解决实际问题的能力,达到教学实践相结合的目的。及采用先进的科学技术,加以丰富的保安实际经验和知识,向社会提供各种超值安全设备服务,给用户带来安全和放心。随着人们生活水平的不断提高,单片机控制无疑是人们追求的目标之一,它所给人带来的方便也是不可否定的,其中数字温度计就是一个典型的例子,但人们对它的要求越来越高,要为现代人工作、科研、生活、提供更好的更方便的设施就需要从数单片机技术入手,一切向着数字化控制,智能化控制方向发展。1.3 温度参数、温度检测和语音报警1.3
17、.1 温度参数基本范围-50-110精度误差小于0.5LED数码直读显示可以任意设定温度的上下限报警功能1.3.2 温度检测通过DS18B20传感器检测测量温度,通过AT89S51单片机进行控制,通过用3位LED数码管以串口传送数据实现温度显示。1.3.3 语音报警先录音,能分160段(地址为00H-0A0H)。我们说话平均语速4字/秒,所以20秒我们录80字。经过计算,每个字占2个地址。我们录音13段。录音用S1键,放音控制用S2键。录音时按下键后开始录音,录完每段后放开按键,录音停止。共录13段,录每段时同时用数码管提示,分别用数字0-F来表示。按语音提示键播报温度,不按不播报。2 系统总
18、体设计方案2.1 单片机语音温度报警系统的总体设计语音温度报警计电路设计总体设计方框图如图2.1所示,控制器采用单片机AT89S51,温度传感器采用DS18B20,语音电路采用ISD1420,用3位LED数码管以串口传送数据实现温度显示。单片机按键输入电路显示电路温度控制电路测温电路时钟电路复位电路报警电路图2.1 总体设计方框图单元模块功能如下:检测电路由温度传感器DS18B20温度传感器是美国DALLAS半导体公司最新推出的一种改进型智能温度传感器,与传统的热敏电阻等测温元件相比,它能直接读出被测温度,并且可根据实际要求通过简单的编程实现位的数字值读数方式。自动报警主机的核心器件是单片机,
19、它是整个系统的心脏,由它来接受报警信号并控制协调各功能模块的正常工作,考虑到系统的功能和经济性因素,采用的是当今流行的性价比比较高的AT89C51。语音电路采用美国ISD公司的高保真录放一体化语音芯片ISD1420来完成报警时进行语音提示的预存工作,根据警情的不同进行相应的语音提示。2.2 系统的基本工作过程在农业应用方面虚拟仪器温室大棚温度测控系统是一种比较智能,经济的方案,适于大力推广,改系统能够对大棚内的温度进行采集,然后再进行比较,通过比较对大棚内的温度是否超过温度限制进行分析,如果超过温度限制,温度报警系统将进行报警,来通知管理人员大棚内的温度超过限制,大棚内的温控系统出现故障,从而
20、有利于农作物的生长,提高产量。3 单片机温度控制和语音报警系统硬件设计3.1 温度控制和报警主机本系统主要是基于单片机实现其温度检测和报警功能,其硬件的主要设计如下:3.1.1主控制单片机主控单片机采用一片ATMEL AT89S51。根据题目要求,充分利用了单片机灵活控制的优点,发挥其优势功能,采用单片机控制显示信号灯,提高了系统的灵活性,设置方便。AT89S51芯片本身集成了看门狗(WDT)电路,这是为了系统更加的稳定可靠,避免了系统因为死机而停止工作的情况发生这种做法对于实际上长时间运行在恶劣状况的交通灯控制系统来说是十分必要的。它可以完成自动加载复位,省去人工调整的麻烦,可以做到无人职守
21、。3.1.2 AT89S51特点AT89S51是一个低功耗,高性能CMOS 8位单片机,片内含4k Bytes ISP(In-system programmable)的可反复擦写1000次的Flash只读程序存储器,器件采用ATMEL公司的高密度、非易失性存储技术制造,兼容标准MCS-51指令系统及80C51引脚结构,芯片内集成了通用8位中央处理器和ISP Flash存储单元,功能强大的微型计算机的AT89S51可为许多嵌入式控制应用系统提供高性价比的解决方案。 AT89S51具有如下特点:40个引脚,4k Bytes Flash片内程序存储器,128 bytes的随机存取数据存储器(RAM)
22、,32个外部双向输入/输出(I/O)口,5个中断优先级2层中断嵌套中断,2个16位可编程定时计数器,2个全双工串行通信口,看门狗(WDT)电路,片内时钟振荡器。(如图3.1所示)。此外,AT89S51设计和配置了振荡频率可为0Hz并可通过软件设置省电模式。空闲模式下,CPU暂停工作,而RAM定时计数器,串行口,外中断系统可继续工作,掉电模式冻结振荡器而保存RAM的数据,停止芯片其它功能直至外中断激活或硬件复位。同时该芯片还具有PDIP、TQFP和PLCC等三种封装形式,以适应不同产品的需求。图3.1 AT89S51芯片3.1.3 AT89S51主要功能特性: 兼容MCS-51指令系统 32个双
23、向I/O口 2个16位可编程定时/计数器 全双工UART串行中断口线 2个外部中断源 中断唤醒省电模式 看门狗(WDT)电路 灵活的ISP字节和分页编程 4k可反复擦写(1000次)ISP Flash ROM 4.5-5.5V工作电压 时钟频率0-33MHz 128x8bit内部RAM 低功耗空闲和省电模式 3级加密位 软件设置空闲和省电功能 双数据寄存器指针AT89S51的引脚功能介绍:VCC:AT89S51 电源正端输入,接+5V。VSS:电源地端。XTAL1:单芯片系统时钟的反相放大器输入端。XTAL2:系统时钟的反相放大器输出端,一般在设计上只要在 XTAL1 和 XTAL2 上接上一
24、只石英振荡晶体系统就可以动作了,此外可以在两引脚与地之间加入一个20PF 的小电容,可以使系统更稳定,避免噪声干扰而死机。RESET:AT89S51的重置引脚,高电平动作,当要对晶片重置时,只要对此引脚电平提升至高电平并保持两个机器周期以上的时间,AT89S51便能完成系统重置的各项动作,使得内部特殊功能寄存器之内容均被设成已知状态,并且至地址0000H处开始读入程序代码而执行程序。EA/VPP:EA为英文External Access的缩写,表示存取外部程序代码之意,低电平动作,也就是说当此引脚接低电平后,系统会取用外部的程序代码(存于外部EPROM中)来执行程序。因此在8031及8032中
25、,EA引脚必须接低电平,因为其内部无程序存储器空间。如果是使用 8751 内部程序空间时,此引脚要接成高电平。此外,在将程序代码烧录至8751内部EPROM时,可以利用此引脚来输入21V的烧录高压(VPP)。ALE/PROG:ALE是英文Address Latch Enable的缩写,表示地址锁存器启用信号。AT89S51可以利用这支引脚来触发外部的8位锁存器(如74LS373),将端口0的地址总线(A0A7)锁进锁存器中,因为AT89S51是以多工的方式送出地址及数据。平时在程序执行时ALE引脚的输出频率约是系统工作频率的1/6,因此可以用来驱动其他周边晶片的时基输入。此外在烧录8751程序
26、代码时,此引脚会被当成程序规划的特殊功能来使用。PSEN:此为Program Store Enable的缩写,其意为程序储存启用,当8051被设成为读取外部程序代码工作模式时(EA=0),会送出此信号以便取得程序代码,通常这支脚是接到EPROM的OE脚。AT89S51可以利用PSEN及RD引脚分别启用存在外部的RAM与EPROM,使得数据存储器与程序存储器可以合并在一起而共用64K的定址范围。PORT0(P0.0P0.7):端口0是一个8位宽的双向输出入端口,共有8个位,P0.0表示位0,P0.1表示位1,依此类推。其他三个I/O端口(P1、P2、P3)则不具有此电路组态,而是内部有一提升电路
27、,P0在当作I/O用时可以推动8个LS的TTL负载。如果当EA引脚为低电平时(即取用外部程序代码或数据存储器),P0就以多工方式提供地址总线(A0A7)及数据总线(D0D7)。设计者必须外加一个锁存器将端口0送出的地址锁住成为A0A7,再配合端口2所送出的A8A15合成一个完整的16位地址总线,而定址到64K的外部存储器空间。PORT2(P2.0P2.7):端口2是具有内部提升电路的双向I/O端口,每一个引脚可以推动4个LS的TTL负载,若将端口2的输出设为高电平时,此端口便能当成输入端口来使用。P2除了用做一般I/O端口使用外,若是在AT89S51扩充外接程序存储器或数据存储器时,也提供地址
28、总线的高字节A8A15,这个时候P2便不能当作I/O来使用了。PORT1(P1.0P1.7):端口1也是具有内部提升电路的双向I/O端口,其输出缓冲器可以推动4个LS TTL负载,同样地若将端口1的输出设为高电平,便是由此端口来输入数据。如果是使用8052或是8032的话,P1.0又当作定时器2的外部脉冲输入脚,而P1.1可以有T2EX功能,可以做外部中断输入的触发脚位。PORT3(P3.0P3.7):端口3也具有内部提升电路的双向I/O端口,其输出缓冲器可以推动4个TTL负载,同时还多工具有其他的额外特殊功能,包括串行通信、外部中断控制、计时计数控制及外部数据存储器内容的读取或写入控制等功能
29、。其引脚分配如下: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,外部数据存储器的读取信号。3.1.4温度检测和报警主机硬件电路设计图3.2中的按健复位电路是上电复位加手动复位,使用比较方便,在程序跑飞时,可以手动复位,这样就不用在重起单片机电源,就可以实现复位。 图3.2 单片机主板电路温度的检测主要依据DS18B20来采集,DS18B20可以采用两种方式供电,一种是采用电源供电
30、方式,此时DS18B20的1脚接地,2脚作为信号线,3脚接电源。另一种是寄生电源供电方式,如图3.3所示单片机端口接单线总线,为保证在有效的DS18B20时钟周期内提供足够的电流,可用一个MOSFET管来完成对总线的上拉。本设计采用电源供电方式, P1.1口接单线总线为保证在有效的DS18B20时钟周期内提供足够的电流,可用一个MOSFET管和89S51的P1.0来完成对总线的上拉。当DS18B20处于写存储器操作和温度A/D变换操作时,总线上必须有强的上拉,上拉开启时间最大为10 s。采用寄生电源供电方式是VDD和GND端均接地。由于单线制只有一根线,因此发送接收口必须是三状态的。主机控制D
31、S18B20完成温度转换必须经过3个步骤:l 初始化;l ROM操作指令;l 存储器操作指令IS18B20 P1.0单 片 机GNDVCC图3.3 DS18B20与单片机的接口电路我们要求的温度在一定的范围内为安全温度,我们设置的上界温度为35,当测量值在正常范围内时,程序控制P2.0输出低电平,音频信号不发声,当达到一定的上界或者下界时,报警电路开始工作,P2.0同时为高电平,音频发音告警,操作人员观察音频发生器是否发音,就可知道被测量器件工作是否正常。图3.4报警电路3.1.4单片机及复位键控制模块 单片机采用89S51,其中有8K内存可用。对交通灯的控制主要用其中的计数器定时来完成。一方
32、面要完成对各模块的控制,另一方面也要协调好各模块的时序及口线冲突问题。单片机复位电路是使CPU和系统中的其他功能部件都处在一个确定的初始状态,并从该状态开始工作,例如复位后PC=0000H,使单片机从第一个单元取指令。无论是在单片机刚接上电源时,还是断电后或者发生故障后都要复位。单片机复位的条件是:使RST/VPD引脚加上持续两个机器周期(即24个振荡周期)的高电平。若时钟频率为12MHz,每机器周期为1us,则只需2us以上时间的高电平,在RST引脚出现高电平后的第二个机器周期执行复位。单片机常见的复位电路如图3.3按键复位电路所示。图3.5 按键复位电路该电路除了具有上电复位电路功能,还可
33、以使用中复位,只要按下图2.9中的RESET键,此时电源VCC经电阻R1、R2分压,在RESET端产生一个复位高电平。 单片机复位期间不产生ALE和PSEN信号,即ALE=1,这表明单片机复位不会有任何取值操作。按键复位电路,易掌握,好操作。3.2 语音电路本系统语音电路可录制四段提示音,同时,在电话接通后,可以将语音分段播放。根据系统的功能要求,系统选择了美国ISD公司的ISD1420芯片。3.2.1 ISD1420芯片简述ISD1420语音芯片是由美国ISD(Information Storage Device)公司开发的高保真、不怕断电、录放一体化的单片固态语音集成电路8。其片内设有时钟
34、振荡器、128K字节E2PROM(电可编程可擦除只读存贮器)、低噪前置放大器、自动增益控制电路、反混叠滤波器、平滑滤波器、模拟转发器、差动功率放大器等高品质语音录放系统所需的全部基本功能电路。由ISD1420组成的最小应用系统仅包含:一个麦克,喇叭,几个阻容元件,两个开关和电源。录制的信息存放在内部不挥发单元中,断点后可以长久保存。这种独特的单片解决方案使用了ISD的专利模拟存储技术。语音和音频信号不经过转换直接以原来状态存储到内部存储器,可以实现高质量的语音复制。ISD系列语音芯片特点:(a)所需外围元件少,电路简单,操作方便;(b)采用直接模拟量存贮技术DAST(Direct Analog
35、 Storage Technology),再现优质原声;(c)零功率信息存贮,省掉备用电源;(d)信息可保存10年以上,可反复录放达10万次之多;(e)易于使用,语音固化无需专用编程或开发装置,可随意改变录音内容;(f)较强的选址能力,可进行分段管理和分段存储多段信息;(g)具有自动省电模式,录音和回放后即刻进入等待模式,此时仅需0.5uA的维持电流;(h)自带时钟源,高抗干扰性能;(i)可直接驱动8-16喇叭工作,输出不失真功率大于50mW。也可作激励信号单端输出,外接功率放大器,输出功率为额定输出功率的1/4,约为120mW左右;(j)采用总线技术,适于同单片机接口。3.2.2 芯片引脚介
36、绍图3.6 ISD1420芯片引脚图AO-A7为地址或操作模式控制端;VSSD为数字地;VSSA为模拟地:SP、SP-为音频信号输出端,可以驱动8-16个扬声器;VCCA为模拟电源;VCCD为数字电源;MIC为话筒输人端,可用驻极体话筒,通过电容耦合;MICREF为话筒输人参考端,若不用应悬空;AGC为自动增益控制端,调整芯片内部前置放大器增益,使录入信号不失真;ANAIN,ANAOUT两端间接电容,该端用于模拟信号的直接输人、输出;XCLK为外部时钟或接地(一般用户接地即可);REC/为录、放音控制,低电平为录音(此时PLAYE/或PLAYL/=O);PLAYL/为电平放音控制(低电平有效)
37、,放音时应该保持低电平(此时REC/=0);PLAYE/为边沿放音控制,下降沿开始放音(此时REC/=0);RECLED/为录音指示,接发光二极管,录音时亮,放音结束闪烁一下,然后熄灭。3.2.3 芯片工作原理ISD1420 地址输入端具有双重功能,根据地址中的 A6、A7 的电平状态决定A0A7 的功能。如果 A6、A7 中间至少有一个低电平,则 A0A7 输入全解释为地址位,作为起始地址用,此时地址线仅仅作为输入端口,在操作过程中不能输出内部地址信息。根据 PLAYE、PLAYL或 REC的下降沿信号,地址输入被锁定。如果 A6、A7 同为高电平时,ISD1420芯片进入模式操作方式。 3
38、.2.4 芯片工作模式先录音,能分160段(地址为00H-0A0H)。我们说话平均语速4字/秒,所以20秒我们录80字。经过计算,每个字占2个地址。我们录音13段。录音用S1键,放音控制用S2键。录音时按下键后开始录音,录完每段后放开按键,录音停止。共录13段,录每段时同时用数码管提示,分别用数字0-F来表示。按语音提示键播报温度,不按不播报。一、语音温度计温馨提示您,当前温度(00H-27H)二、一(28H-2FH)三、二(30H-37H)四、三(38H-3FH)五、四(40H-47H)六、五(48H-4FH)七、六(50H-57H)八、七(58H-5FH)九、八(60H-67H)十、九(6
39、8H-6FH)十一、十(70H-77H)十二、度(78H-7FH)十三、温度过高(80H-87H)十四、温度合适(88H-8FH)十五、温度过低(90H-97H)3.2.5语音电路设计图 图3.7语音电路3.3 DS18B20芯片简介3.3.1温度传感器的历史及简介温度的测量是从金属(物质)的热胀冷缩开始。水银温度计至今仍是各种温度测量的计量标准。可是它的缺点是只能近距离观测,而且水银有毒,玻璃管易碎。代替水银的有酒精温度计和金属簧片温度计,它们虽然没有毒性,但测量精度很低,只能作为一个概略指示。不过在居民住宅中使用已可满足要求。在工业生产和实验研究中为了配合远传仪表指示,出现了许多不同的温度
40、检测方法,常用的有电阻式、热电偶式、PN结型、辐射型、光纤式及石英谐振型等。它们都是基于温度变化引起其物理参数(如电阻值,热电势等)的变化的原理。随着大规模集成电路工艺的提高,出现了多种集成的数字化温度传感器。3.3.2 DS18B20性能特点与内部结构DS18B20是美国DALLAS公司生产的单总线数字温度传感器,它具有微型化、低功耗、高性能、抗干扰能力强、易于与未处理器接口等优点,适合于各种温度测控系统。该器件将半导体温敏器件、A/D转化器、存储器等做在一个很小的集成电路芯片上,传感器直接输出的就是温度信号数字值。信号传输采用两芯(或三芯)电缆构成的单总线结构。(1) DS18B20的性能
41、特点如下9:1) 独特的单线接口仅需要一个端口引脚进行通信;2) 多个DS18B20可以并联在惟一的三线上,实现多点组网功能;3) 无须外部器件;4) 可通过数据线供电,电压范围为3.05.5V;5) 零待机功耗;6) 温度以3位数字显示;7) 用户可定义报警设置;8) 报警搜索命令识别并标志超过程序限定温度(温度报警条件)的器件;9) 负电压特性,电源极性接反时,温度计不会因发热而烧毁,但不能正常工作。 (2) DS18B20的外形及管脚排列 (3) DS18B20内部结构主要由六分组成:1) 64位光刻ROM。开始8位是产品类型的编号,接着是每个器件的惟一的序号,共有48位,最后8位是前5
42、6位的CRC校验码,这也是多个DS18B20可以采用一线进行通信的原因10。64位闪速ROM的结构如下:8b检验CRC48b序列号8b工厂代码(10H) MSB LSB MSB LSB MSB LSB图3.8 DS18B20内部结构2) 非挥发的温度报警触发器TH和TL,可通过软件写入用户报警上下限值。3) 高速暂存存储,可以设置DS18B20温度转换的精度。DS18B20温度传感器的内部存储器还包括一个高速暂存RAM和一个非易失性的可电擦除的E2PRAM。高速暂存RAM的结构为8字节的存储器,结构如图3-8所示。头2个字节包含测得的温度信息,第3和第4字节TH和TL的拷贝,是易失的,每次上电
43、复位时被刷新。第5个字节,为配置寄存器,它的内容用于确定温度值的数字转换分辨率。DS18B20工作时寄存器中的分辨率转换为相应精度的温度数值。它的内部存储器结构和字节定义如表3-9所示。低5位一直为,TM是工作模式位,用于设置DS18B20在工作模式还是在测试模式。 表3-9 DS18B20内部存储器结构Byte0温度测量值LSB(50H)Byte1温度测量值MSB(50H)E2PROMByte2TH高温寄存器-TH高温寄存器Byte3TL低温寄存器-TL 低温寄存器Byte4配位寄存器-配位寄存器Byte5预留(FFH)Byte6预留(0CH)Byte7预留(IOH)Byte8循环冗余码校验
44、(CRC)DS18B20出厂时该位被设置为0,用户要去改动,R1和R0决定温度转换的精度位数,来设置分辨率,如表3.9。表3-10 DS18B20字节定义TM R1R0 1 1 1 1 1由表3.10可见,分辨率越高,所需要的温度数据转换时间越长。因此,在实际应用中要将分辨率和转换时间权衡考虑。高速暂存RAM的第6、7、8字节保留未用,表现为全逻辑1。第9字节读出前面所有8字节的CRC码,可用来检验数据,从而保证通信数据的正确性。当DS18B20接收到温度转换命令后,开始启动转换。转换完成后的温度值就以16位带符号扩展的二进制补码形式存储在高速暂存存储器的第1、2字节。单片机可以通过单线接口读
45、出该数据,读数据时低位在先,高位在后,数据格式以0.0625LSB形式表示。当符号位S0时,表示测得的温度值为正值,可以直接将二进制位转换为十进制;当符号位S1时,表示测得的温度值为负值,要先将补码变成原码,再计算十进制数值。表2.2是一部分温度值对应的二进制温度数据6。表3-11 DS18B20温度转换时间表R1R0分辨率/位温度最大转向时间/ms00993.750110187.510113751112750 4) CRC的产生 在64 b ROM的最高有效字节中存储有循环冗余校验码(CRC)。主机根据ROM的前56位来计算CRC值,DS18B20中的CRC值做比较,以判断主机收到的ROM数据是否正确。另外,由于DS18B20单线通信功能是分时完成的,它有严格的时隙概念,因此读写时序很重要。系统对DS18B20的各种操作按协议进行。操作协议为:初使化DS18B20(发复位脉冲)发ROM功能命令发存储器操作命令处理数据。表3-12一部分温度对应值表温度/二进制表示十六进制表示+1250000 0111 1101 000007D0H+850000 0101 0101 00000550H+25.06250000 0001 1001 00000191H+10.1250000 0000 1010 000100A2H+0.50000 0000 0000 00100008H0