51单片机(DS18B20 数字温度传感器)

一、基础参数指标

  1. 测温量程:-55℃ ~ 125℃
  2. 测量精度:-10℃~80℃区间,测量误差 ±0.5℃
  3. 分辨率(可配置,分辨率越高转换耗时越长)
    • 9 位:0.5℃
    • 10 位:0.25℃
    • 11 位:0.125℃
    • 12 位(默认):0.0625℃,转换时间 750ms
  4. 工作电压:3V ~ 5.5V

二、通信协议、上拉电阻与线与特性

1. 通信协议

采用单总线 One-Wire通信,半双工、串行异步传输,仅需一根 GPIO 信号线 DQ 即可完成主机与传感器的数据交互。

2. 上拉电阻作用

DQ 引脚为开漏输出结构,无法主动输出高电平;搭配上拉电阻后,主机和传感器全部释放总线时,总线稳定维持高电平,是单总线正常通信的必要电路。

3. 线与特性

单总线总线为线与逻辑,依托开漏引脚 + 上拉电阻实现:

  1. 总线上任意一个器件拉低 DQ 引脚,整条总线电平直接变低;
  2. 只有总线上所有器件全部释放 DQ,上拉电阻才能将总线拉为高电平;
  3. 核心应用:复位应答、单总线半双工读写、多传感器并联组网均依靠该特性实现。

三、芯片内部结构

  1. 内置供电电路,支持寄生电源供电模式;
  2. 64 位 ROM + 单总线接口电路;
  3. 存储器逻辑控制模块,统筹内部各单元工作;
  4. 暂存器:存储温度原始数据、配置寄存器参数;
  5. 温度采集核心模块;
  6. 可自定义配置的高低温报警阈值寄存器;
  7. 8 位 CRC 校验生成器,用于数据校验,提升传输可靠性。

四、温度数据格式

采集到的温度以16 位带符号二进制补码形式存储,通过 DQ 总线串行向外发送。

五、单传感器完整温度采集流程(跳过 ROM 指令)

  1. 发送总线复位信号,初始化传感器;
  2. 发送指令 0xCC:跳过 ROM 寻址,适配单传感器场景;
  3. 发送指令 0x44:启动芯片温度转换;
  4. 延时 750ms,等待 12 位分辨率温度转换完成;
  5. 再次发送总线复位;
  6. 再次发送 0xCC 跳过 ROM;
  7. 发送指令 0xBE:读取内部暂存器数据;
  8. 连续读取 2 字节原始温度数据,拼接后换算实际温度。

六、单总线核心通信时序

1. 复位时序(初始化 + 存在应答)

  1. 主机拉低总线 480~960μs,输出复位脉冲;
  2. 主机释放总线,上拉电阻将总线拉高;
  3. DS18B20 等待 15~60μs 后,主动拉低总线 60~240μs,发送应答脉冲;
  4. 传感器释放总线,总线恢复高电平,初始化完成。

2. 写时序(主机下发指令 / 配置参数)

写 0 时序
  1. 主机拉低总线 60~120μs;
  2. 传感器在 30~60μs 区间采样,识别低电平为数字 0;
  3. 主机释放总线,恢复高电平。
写 1 时序
  1. 主机拉低总线时长小于 15μs 后立即释放;
  2. 传感器在总线拉高后的 45μs 内采样,识别高电平为数字 1。

程序逻辑:逐位读取字节最低位,分别调用写 0 / 写 1 时序,循环移位发送完整 8 位数据。

3. 读时序(主机读取温度、寄存器数据)

  1. 主机拉低总线仅 1μs 后快速释放;
  2. 主机需在 15μs 内完成电平采样:
    • 总线为高电平 → 读取到 1;
    • 传感器主动拉低总线 → 读取到 0;
  3. 单次读取 1 字节需循环读取 8 个位,移位拼接为完整数据。
相关推荐
xu_wenming3 小时前
嵌入式软件架构中的6种解耦艺术
c语言·驱动开发·嵌入式硬件·架构
sramdram3 小时前
国产32位mcu微控制器高速风筒方案
单片机·嵌入式硬件·32位mcu·mcu微控制器·国产32位mcu
单片机仿真设计4 小时前
【proteus仿真】基于STM32单片机直流电机控制设计(仿真图+程序)
stm32·单片机·嵌入式硬件·proteus·毕设
天空'之城4 小时前
单片机基础核心知识点汇总(十八)
单片机·嵌入式硬件
736c4 小时前
STM32-看门狗 10
stm32·单片机
luiyarch5 小时前
汽车电子ISO 26262功能安全系列(第17期):系统集成与测试——验证系统级安全机制
嵌入式硬件·安全·车载系统·汽车
DevHub7 小时前
CANopen 教程:STM32 实现 CANopen 从站,3 个回调替代手写对象字典
c语言·驱动开发·stm32·单片机·嵌入式硬件·mcu
单片机仿真设计9 小时前
【proteus仿真】基于 STM32 农业大棚巡检小车 (仿真图+程序)
stm32·单片机·嵌入式硬件·proteus·毕设
Hello_Damon_Nikola11 小时前
AiP9M161个人护理产品方案从设计到实现
单片机·嵌入式硬件
智购科技无人售货机工厂12 小时前
2026自动售货机热敏打印模块集成:从串口驱动到小票自动裁切的工程实践~YH
android·stm32·单片机·嵌入式硬件·系统架构