首页>>科技 >>内容

ds18b20介绍,ds18b20中文资料详解

发布时间:2023-12-26 16:06:30编辑:温柔的背包来源:

很多朋友对ds18b20介绍,ds18b20中文资料详解不是很了解,每日小编刚好整理了这方面的知识,今天就来带大家一探究竟。

ds18b20介绍,ds18b20中文资料详解

DS18B20是一种常用的数字温度传感器,具有体积小、硬件成本低、抗干扰能力强、精度高等特点。DS18B20数字温度传感器连接方便,封装后可用于多种场合,如管道式、螺旋式、磁铁吸附式、不锈钢封装式,型号多样,包括LTM8877、LTM8874等。主要是根据不同的应用改变外观。

封装后的DS18B20可用于电缆沟、高炉水循环、锅炉、机房、农业大棚、洁净室、弹药库的温度测量。耐磨耐撞,体积小,使用方便,包装形式多样,适用于各种狭小空间设备的数字化温度测控。DS18B20的特点:DS18B20单线数字温度传感器,即“一线器件”,具有独特的优势:

(1)通过单总线接口与微处理器连接时,只需要一根端口线就可以实现微处理器与DS18B20的双向通信。单总线具有经济性好、抗干扰能力强、适用于恶劣环境下的现场测温、使用方便等优点。以便用户可以轻松地建立传感器网络,并为测量系统的构建引入一个新概念。(2)测量温度范围宽,测量精度高。DS18B20的测量范围为-55125。在-10 ~ 85范围内,精度为0.5.

(3)使用时不需要外围元件。(4)多个具有多点组网功能的DS18B20可以并联在一条唯一的单线上,实现多点温度测量。(5)灵活的供电模式DS18B20可以通过内部寄生电路从数据线获取电源。因此,当数据线上的时序满足一定要求时,可以不连接外部电源,从而使系统结构更简单、更可靠。(6)可以配置测量参数。DS18B20的测量分辨率可以通过程序设置为9~12位。

(7)负压特性当电源极性接反时,温度计不会因发热而烧毁,但不会正常工作。(8)掉电保护功能DS18B20含有EEPROM,在系统掉电后仍能保存分辨率和报警温度的设定值。DS18B20具有体积更小、适用电压更宽、更经济、封装方式更小、电压应用范围更广等优点,适合构建自己的经济型测温系统,因此受到设计者的青睐。

DS18B20内部结构:主要由四部分组成:64位ROM、温度传感器、非易失性温度报警触发器TH和TL、配置寄存器。ROM中的64位序列号是出厂前光刻的,可以看作是DS18B20的地址序列码,每个DS18B20的64位序列号都不一样。64位ROM组的循环冗余校验码(CRC=x 8 x 5 x 4 1)。ROM的作用就是让每个DS18B20都不一样,这样就可以达到在一条总线上挂多个DS18B20的目的。DS18B20引脚排列:

1.GND是权力的基础;2.DQ是数字信号输入/输出端子;3.VDD是外部电源的输入端(以寄生电源连接方式接地)。DS18B20内部包括:

暂存存储器由9个字节组成。发出温度转换命令时,转换后的温度值以双字节补码的形式存储在暂存存储器的第0和第1个字节中。单片机可以通过单线接口读取数据,低位在前,高位在后,对应的温度计算:当符号位S=0时,二进制位直接转换成十进制;S=1时,先把补码换成原码,再计算十进制值。温度的低八位数据0温度的高八位数据1高温阀值2

低温阀值3,保留4,保留5,计数余值6,每度计数值7,7CRC校验8d,8DS18B20中的温度传感器完成温度的测量,以16位二进制形式提供,其中s为符号位。比如125时的数字输出是07D0H(温度值是在正温度下直接将十六进制数转换成十进制数得到的),而-55时的数字输出是FC90H。(负温度将得到的十六进制数反转,然后加1转换成十进制数)DS18B20的工作顺序:初始化顺序。

主机先发出480-960微秒的低电平脉冲,然后释放总线到高电平,在随后的480微秒内检测总线。如果有低电平,说明总线上的一些设备有响应。如果没有低电平,它总是高电平,这意味着总线上没有设备响应。

DS18B20作为从设备,上电后一直检测总线上是否有480-960微秒的低电平。如果有,它会在总线变高后等待15-60微秒,然后将总线电平拉低60-240微秒以脉冲响应,告诉主机设备准备好了。如果没有检测到,就一直在等待检测。写入操作

写入周期应该至少为60微秒,最多为120微秒。在写周期开始时,作为主机,总线被拉低1微秒,以指示写周期的开始。然后,如果主机要写0,它将继续拉低至少60微秒,直到写周期结束,然后释放总线到高电平。如果主机想要写入1,它将在开始时将总线电平拉低1微秒后将总线释放到高电平,直到写入周期结束。

作为从机,DS18B20在检测到总线被拉低后等待15微秒,然后从15us到45us开始对总线进行采样。采样期间,总线处于高电平,为1,如果总线处于低电平,为0。

读取操作

读数据操作的时序也分为读0时序和读1时序两个过程。读时隙是主机在1微秒后释放单总线到高电平,让DS18B20向单总线传输数据。DS18B20在检测到总线被拉低1微秒后开始发送数据,如果要发送0,则将总线拉低,直到读周期结束。要发送1,释放总线为高电平。

主机在开始时将总线下拉1微秒后释放总线,然后在15微秒内完成对总线的采样检测,包括前一次总线电平下拉1微秒。如果总线在采样期间为低电平,则确认为0。如果采样期间总线为高电平,则确认为1。完成一个阅读序列过程至少需要60us。

DS18B20单线通信:DS18B20单线通信功能是分时的,它有严格的时隙概念。如果出现顺序混乱,1线设备就不会响应主机,所以读写时序很重要。DS18B20上系统的所有操作都必须根据协议执行。根据DS18B20的协议,微控制器控制DS18B20完成温度转换必须经过以下三个步骤:

(1)在每次读写之前,复位并初始化DS18B20。复位需要主CPU下拉数据线500us,然后释放。DS18B20接收到信号后,等待约16us~60us,然后发出一个60us~240us的存在低脉冲。主CPU收到该信号后,表示复位成功。(2)发送ROM指令(3)发送内存指令示例:我们现在要做的是让DS18B20进行一次温度转换,具体操作是1、主机先进行一次复位操作。

2、主机再次写入CCH命令,3、然后主机写入切换温度的操作命令,然后释放总线至少一秒,让DS18B20完成切换操作。这里应该注意,每个命令字节都是从低位字节开始写入的。例如,CCH的二进制数是11001100。在总线上写时,要从低位开始写,写的顺序是“零、零、一、一、零、一、一”。整个操作的总线状态如下所示。

读取RAM中的温度数据。同样,这个操作也要遵循三个步骤。1、主机发送复位操作并接收DS18B20的响应(存在)脉冲。2、主机发出命令(CCH)以跳过ROM操作。

3、主机发出读取RAM (BEH)的命令,然后主机依次读取DS18B20发送的0到8的9个字节的数据。如果只想读取温度数据,可以在读取完第0个和第1个数据后忽略DS18B20发送的数据。同样,读取的数据也是低位优先。整个操作的总线状态如下:

以上知识分享希望能够帮助到大家!