编辑: 木头飞艇 2019-07-10
智能温度传感器DS18B20的原理与应用 2006-11-06 14:29:32???作者:赵海兰 赵祥伟???来源:现代电子技术 关键字: 编程 单线 功率 处理 DS18B20是美国DALLAS半导体公司继DS1820之后最新推出的一种改进型智能温度传感器.

与传统的热敏电阻相比,他能够直接读出被测温度并且可根据实际要求通过简单的编程实现9~12位的数字值读数方式.可以分别在93.75 ms和750 ms内完成9位和12位的数字量,并且从DS18B20读出的信息或写入DS18B20的信息仅需要一根口线(单线接口)读写,温度变换功率来源于数据总线,总线本身也可以向所挂接的DS18B20供电,而无需额外电源.因而使用DS18B20可使系统结构更趋简单,可靠性更高.他在测温精度、转换时间、传输距离、分辨率等方面较DS1820有了很大的改进,给用户带来了更方便的使用和更令人满意的效果. 1DS18B20简介 ?(1)独特的单线接口方式:DS18B20与微处理器连接时仅需要一条口线即可实现微处理器与DS18B20的双向通讯. ?(2)在使用中不需要任何外围元件. ?(3)可用数据线供电,电压范围: 3.0" 5.5 V. ?(4)测温范围:-55 "

125 ℃.固有测温分辨率为0.5 ℃. ?(5)通过编程可实现9"12位的数字读数方式. ?(6)用户可自设定非易失性的报警上下限值. ?(7)支持多点组网功能,多个DS18B20可以并联在惟一的三线上,实现多点测温. ?(8)负压特性,电源极性接反时,温度计不会因发热而烧毁,但不能正常工作. 2DS18B20的内部结构 ?DS18B20采用3脚PR35封装或8脚SOIC封装,其内部结构框图如图1所示. ?(1)

64 b闪速ROM的结构如下: ?开始8位是产品类型的编号,接着是每个器件的惟一的序号,共有48位,最后8位是前56位的CRC校验码,这也是多个DS18B20可以采用一线进行通信的原因. ?(2) 非易市失性温度报警触发器TH和TL,可通过软件写入用户报警上下限. ?(3) 高速暂存存储器 ?DS18B20温度传感器的内部存储器包括一个高速暂存RAM和一个非易失性的可电擦除的E2RAM.后者用于存储TH,TL值.数据先写入RAM,经校验后再传给E2RAM.而配置寄存器为高速暂存器中的第5个字节,他的内容用于确定温度值的数字转换分辨率,DS18B20工作时按此寄存器中的分辨率将温度转换为相应精度的数值.该字节各位的定义如下: ?低5位一直都是1,TM是测试模式位,用于设置DS18B20在工作模式还是在测试模式.在DS18B20出厂时该位被设置为0,用户不要去改动,R1和R0决定温度转换的精度位数,即是来设置分辨率,如表1所示(DS18B20出厂时被设置为12位). ?由表1可见,设定的分辨率越高,所需要的温度数据转换时间就越长.因此,在实际应用中要在分辨率和转换时间权衡考虑. ?高速暂存存储器除了配置寄存器外,还有其他8个字节组成,其分配如下所示.其中温度信息(第1,2字节)、TH和TL值第3,4字节、第6~8字节未用,表现为全逻辑1;

第9字节读出的是前面所有8个字节的CRC码,可用来保证通信正确. ?当DS18B20接收到温度转换命令后,开始启动转换.转换完成后的温度值就以16位带符号扩展的二进制补码形式存储在高速暂存存储器的第1,2字节.单片机可通过单线接口读到该数据,读取时低位在前,高位在后,数据格式以0062

5 ℃/LSB形式表示.温度值格式如下: ?对应的温度计算:当符号位S=0时,直接将二进制位转换为十进制;

当S=1时,先将补码变换为原码,再计算十进制值.表2是对应的一部分温度值. ?DS18B20完成温度转换后,就把测得的温度值与TH,TL作比较,若T>TH或T

下载(注:源文件不在本站服务器,都将跳转到源网站下载)
备用下载
发帖评论
相关话题
发布一个新话题