上海羊羽卓进出口贸易有限公司

温度传感器18b20 数字温度传感器DS18B20简介

发布时间:2024-10-06 16:10:30

数字温度传感器DS18B20简介

1、DS18B20的主要特性1.1、适应电压范围更宽,电压范围:3.0~5.5V,在寄生电源方式下可由数据线供电1.2、独特的单线接口方式,DS18B20在与微处理器连接时仅需要一条口线即可实现微处理器与DS18B20的双向通讯1.3、DS18B20支持多点组网功能,多个DS18B20可以并联在唯一的三线上,实现组网多点测温1.4、DS18B20在使用中不需要任何外围元件,全部传感元件及转换电路集成在形如一只三极管的集成电路内1.5、温范围-55℃~+125℃,在-10~+85℃时精度为±0.5℃1.6、可编程的分辨率为9~12位,对应的可分辨温度分别为0.5℃、0.25℃、0.125℃和0.0625℃,可实现高精度测温1.7、在9位分辨率时最多在93.75ms内把温度转换为数字,12位分辨率时最多在750ms内把温度值转换为数字,速度更快1.8、测量结果直接输出数字温度信号,以"一线总线"串行传送给CPU,同时可传送CRC校验码,具有极强的抗干扰纠错能力1.9、负压特性:电源极性接反时,芯片不会因发热而烧毁,但不能正常工作。

2、DS18B20的外形和内部结构DS18B20内部结构主要由四部分组成:64位光刻ROM、温度传感器、非挥发的温度报警触发器TH和TL、配置寄存器。DS18B20的外形及管脚排列如下图1:

DS18B20引脚定义:

(1)DQ为数字信号输入/输出端;(2)GND为电源地;(3)VDD为外接供电电源输入端(在寄生电源接线方式时接地)。

图2: DS18B20内部结构图

3、DS18B20工作原理

DS18B20的读写时序和测温原理与DS1820相同,只是得到的温度值的位数因分辨率不同而不同,且温度转换时的延时时间由2s减为750ms。 DS18B20测温原理如图3所示。图中低温度系数晶振的振荡频率受温度影响很小,用于产生固定频率的脉冲信号送给计数器1。高温度系数晶振随温度变化其振荡率明显改变,所产生的信号作为计数器2的脉冲输入。计数器1和温度寄存器被预置在-55℃所对应的一个基数值。计数器1对低温度系数晶振产生的脉冲信号进行减法计数,当计数器1的预置值减到0时,温度寄存器的值将加1,计数器1的预置将重新被装入,计数器1重新开始对低温度系数晶振产生的脉冲信号进行计数,如此循环直到计数器2计数到0时,停止温度寄存器值的累加,此时温度寄存器中的数值即为所测温度。图3中的斜率累加器用于补偿和修正测温过程中的非线性,其输出用于修正计数器1的预置值。

图3: DS18B20测温原理框图

DS18B20有4个主要的数据部件:

(1)光刻ROM中的64位序列号是出厂前被光刻好的,它可以看作是该DS18B20的地址序列码。64位光刻ROM的排列是:开始8位(28H)是产品类型标号,接着的48位是该DS18B20自身的序列号,最后8位是前面56位的循环冗余校验码(CRC=X8+X5+X4+1)。光刻ROM的作用是使每一个DS18B20都各不相同,这样就可以实现一根总线上挂接多个DS18B20的目的。

(2)DS18B20中的温度传感器可完成对温度的测量,以12位转化为例:用16位符号扩展的二进制补码读数形式提供,以0.0625℃/LSB形式表达,其中S为符号位。

表1: DS18B20温度值格式表

这是12位转化后得到的12位数据,存储在18B20的两个8比特的RAM中,二进制中的前面5位是符号位,如果测得的温度大于0,这5位为0,只要将测到的数值乘于0.0625即可得到实际温度;如果温度小于0,这5位为1,测到的数值需要取反加1再乘于0.0625即可得到实际温度。

例如+125℃的数字输出为07D0H,+25.0625℃的数字输出为0191H,-25.0625℃的数字输出为FF6FH,-55℃的数字输出为FC90H。

表2: DS18B20温度数据表

(3)DS18B20温度传感器的存储器

DS18B20温度传感器的内部存储器包括一个高速暂存RAM和一个非易失性的可电擦除的EEPRAM,后者存放高温度和低温度触发器TH、TL和结构寄存器。

DS18B20温度传感器介绍

来源:百问网_嵌入式Linux wiki_jz2440 新1期视频维基教程 (视频文字版)

作者:韦东山

本文字数:1322,阅读时长:2分钟

比DHT11温湿度传感器精度高很多

DS18B20只通过一条数据线传输数据,既要控制器发送数据给芯片,又要通过芯片发送数据给控制器,所以这个是双向传输数据的

怎么在一个引脚上实现数据的双向传输 : 参考这视频的第19分钟之后的内容: 第19课_第001节_I2C协议与EEPROM

检测温度,我们需要一个主控芯片

如果有多个温度传感器,则需要一个主控制器去管理它们,通过发送命令传输数据,每个设备都会有固化在芯片内部的64bit ID的ROM来用于区分不同的设备

如果主控制器想访问设备,必须发送命令,这个命令中带有ID返回值

怎么访问指定的DS18B20

0 发出低脉冲,提醒准备工作: initialization1 发出ID命令:ROM Command2 发出功能命令: Function Command a转换温度 b读温度,读数据

每次操作,都要重重上述过程

内部框图

TEMPERATURE SENSOR温度ADC

SCRATCHPAD实际上是一个9 byte的内存 9byte的说明如下图所示

温度值会保存在9byte内存中的 BYTE0 和 BYTE1 也就是当我们发出一个温度值的命令之后,还需要发送一个读内存的命令才能把温度值读取出来

最后一位是CRC校验码,通过前8位的数据和最后一位的校验码比较 64位数据中有8位是校验码,

怎么采样温度?

1 初始化2 ROM命令3 FunctionCommand 设置某些值,比如转换温度4等待完成5 init6 R om cmd7 Function Command 读RAM中的值

关于EEPROM寄存器 前面两个字节可以用来设置用户自己的目的,也可以用来设置Th Tl 寄存器 Th Tl 寄存器就是用来设置警报,温度的上限或者下限,当温度超过某个值时它会发出警报 所谓警报只不过是在DS18B20中设置状态而已,并不能主动通知主芯片 主芯片可以发出某些命令来确定哪些芯片发出了警报 配置寄存器,用于设置精度,精度越高转换时间越长

EEPROM使用

1 上电

EEPROM自动放入RAM用于控制精度这些

2 写EEPROM

a 发出命令先写RAM

b从RAM转到EEPROM

3 读出EEPROM的值

a EEPROM值保存到RAM

b 发出命令读RAM

关于ROM命令和功能命令整理成一个表格

信号传输

1怎么initialization(初始化) 2 怎么发数据,怎么发出1bit

怎么发出bit0

怎么发出bit1

3怎么读数据==>怎么读1bit

怎么判读读到0

怎么判断读到1

初始化时序

一开始是高电平,想要开始传输信号,必须要拉低至少480us释放总线 经过15~60us之后 DS18B20会把这条线拉低60~240us

2 怎么发数据,怎么发出1bit

怎么发出bit0怎么发出bit1

写数据时序

不论是写0还是写1时序都是大于60us 写0拉低总线维持60us以上 写1时,信号线拉低1us时间,提醒要写数据了,然后回高,写1位之间的时间间隔1us

读数据时序 也是由主机发起 提醒脉冲大于1us,主机马上释放总线 在15us之内读信号,一个读周期至少是60us,每位的间隔也是1us

DS18B20提供了编程图

供电方式

「新品首发」STM32MP157开发板火爆预售!首批仅300套

相关问答

调温电烙铁用的 温度传感器 是什么样的? - 懂得

调温电烙铁用的温度传感器多为热电偶。通常不是用ds18b20(其测温范围远低于电烙铁的温度270-370℃)使用电阻调节控制温度的吧DS18B20是数字式单总...

汽车进气 温度传感器 正常多少度我是一名修理工,想知道凉车看...

[最佳回答]希望以下资料可以帮你:■汽车进气温度传感器(IATS)■汽车冷却液温度传感器(CTS)■汽车排气温度传感器(Ex-haustAirTemperatureSensor,EA...

温度传感器 的精度一般多少? - 懂得

不同原理、不同工艺的温度传感器精度会有所不同。温度传感器应用很广泛,种类繁多,大致包括以下类型:热电阻、热电偶、PN结温度传感器、集成温度传感...

进气 温度传感器 正常值是多少_车坛

正常情况下,温度为20°C时,阻值约为2-3千欧姆;80°C时,阻值约为0.4-0.7千欧姆。以下是关于进气温度传感器的部分介绍:1、进气温度传感器是一个负温...

温度传感器 需要多少的费用?

[最佳回答]1、空调的感温传感器售卖价格基本上都在100元(查成交价|参配|优惠政策)到150元左右,而且加上安装费也就在200元左右。2、奇骏(查成交价|参配|优惠政...

进气 温度传感器 标准值是多少?

[最佳回答]正常情况下,温度为20时,电阻值约为2-3千欧;在80时,电阻约为0.4-0.7千欧。如果测量结果不符合规定要求,应更换传感器。当安装在空气流量传感器中的空...

温度传感器 电压是多少?

温度传感器电压大概是0.30-0.50V。关于温度传感器,温度传感器(temperaturetransducer)是指能感受温度并转换成可用输出信号的传感器。温度传感器是温度测量仪...

进气 温度传感器 标准值是多少_车坛

在正常情况下,温度为20°C时,阻值约为2-3千欧姆;80°C时,阻值约为0.4-0.7千欧姆。如果测量结果不符合规定要求,则应更换传感器,安装于空气流量传感...

空调维修感温头多少钱?

一个温度传感器的价格大概在20~30元,外加上人工成本50元左右,大致需要100元。如果温度传感器彻底损坏,需要整个温度传感器更换掉;仅仅是中间接线断裂的,连...

进气 温度传感器 的位置 - 汽车维修技术网

[回答]2022-08-0515:08:25汽车知识问答

展开全部内容