首页
搜索
历史搜索
搜索发现

ds18b20温度采集的运行原理

2025-05-23 15:35:58| 来源:聚英电子| | 0

DS18B20 是一款广泛使用的数字温度传感器,采用 1-Wire 总线协议进行通信。其温度采集原理基于内部半导体温度敏感元件和模数转换(ADC)技术,以下是其核心工作原理的详细说明:

1. 内部结构与温度敏感元件

DS18B20 的核心是一个 温度敏感的振荡器 和 数字转换电路:

- 温度敏感元件:利用半导体材料的温度特性(如 PN 结电压随温度变化),将温度转换为模拟电信号。

- 高精度 ADC:将模拟信号转换为数字信号,分辨率可配置为 9~12 位(默认 12 位,对应分辨率 0.0625°C)。

2. 温度采集过程

步骤 1:启动温度转换

- 主控制器(如单片机)通过 1-Wire 总线发送 Convert T(0x44) 命令,启动温度转换。

- DS18B20 开始执行内部 ADC 转换,将温度值转换为数字信号。

- 转换时间:取决于分辨率(例如 12 位需 750ms,9 位仅需 93.75ms)。

步骤 2:读取温度数据

- 转换完成后,主控制器发送 Read Scratchpad(0xBE) 命令,从传感器的暂存器中读取温度数据。

- 温度数据以 16 位二进制补码格式 存储,包含符号位、整数部分和小数部分。

3. 温度数据格式

DS18B20 的温度值存储格式如下:

- 高字节(MSB):

- 前 5 位为符号位(`S`),`S=1` 表示负温度,`S=0` 表示正温度。

- 后 3 位为整数部分的最高有效位(MSB)。

- 低字节(LSB):

- 后 4 位为小数部分,每个单位对应 0.0625°C(12 位分辨率时)。

示例:

- 原始数据 `0x0550`(二进制 `00000101 01010000`):

- 符号位 `S=0` → 正温度。

- 整数部分:`0000101` → 5°C。

- 小数部分:`01000000` → 0.25°C(`0100` × 0.0625 = 0.25)。

- 实际温度:5.25°C。

4. 1-Wire 通信协议

DS18B20 通过单根数据线实现通信,协议关键点如下:

1. 初始化(复位脉冲):

- 主机发送复位脉冲(>480μs 低电平),传感器回应存在脉冲(60~240μs 低电平)。

2. ROM 命令:

- 用于寻址总线上的多个传感器(如 `Read ROM`、`Match ROM`)。

3. 功能命令:

- 控制传感器操作(如 `Convert T`、`Read Scratchpad`)。

5. 寄生供电模式

DS18B20 支持 寄生供电(Parasite Power):

- 仅需 DQ 数据线 和 GND,无需额外电源线。

- 在温度转换期间,主机需通过强上拉(MOSFET)提供足够电流(约 1mA)。

6. 关键特性

- 测温范围:-55°C 至 +125°C(±0.5°C 精度,-10°C 至 +85°C)。

- 多设备支持:单总线可挂载多个 DS18B20,通过唯一 64 位 ROM ID 寻址。

- 低功耗:待机电流仅 1μA。

DS18B20 通过内部温度敏感元件和 ADC 将温度数字化,利用 1-Wire 协议传输数据。其单总线设计、高精度和灵活供电方式,使其在嵌入式系统和物联网应用中广泛使用。实际使用时需注意总线时序、电源稳定性及数据格式解析。


联系销售
销售王经理微信 销售王经理
微信公众号 微信公众号
服务热线
400-6688-400