【自学嵌入式:51单片机】DS18B20温度传感器

DS18B20温度传感器

image

DS18B20是一种常见的数字温度传感器,其控制命令和数据都是以数字信号的方式输入输出,相比较于模拟温度传感器(如下图),它具有功能强大、硬件简单、易扩展、抗干扰性强等特点。
image
模拟温度传感器,通过热敏电阻和正常电阻串联,然后测两个电阻中间点的电压值,经过模拟信号到数字信号的转换,转换为一个字节的数字信号来测温,DS18B20把模拟温度传感器等都集成在一起。
DS18B20温度传感器的特性:

  • 测温范围:-55℃到+125℃
  • 通信接口:1-Wire(单总线)
  • 其他特征:可形成总线结构、内置温度报警功能、可寄生供电(3个引脚有两个供电,一个数据线,寄生供电就是数据线用来供电,地线正常接,就两根线)

电路

image
(注:这里I/O口没接上拉电阻,因为单片机的接口默认是弱上拉(接了个电阻))

引脚 功能
VCC(VDD) 电源(3.0V~5.5V)
GND 电源地
I/O(DQ) 单总线接口

内部结构框图

image

  • 64-BIT ROM:作为器件地址,用于总线通信的寻址(唯一ID号)
  • MEMORY CONTROL LOGIC:控制总线数据的进出
  • SCRATCHPAD(暂存器):用于总线的数据交互
  • EEPROM:用于保存温度触发阈值和配置参数
    • TEMPERATURE SENSOR:探测温度
    • ALARM HIGH TRIGGER REGISTER(EEPROM):最高温度阈值寄存器
    • ALARM LOW TRIGGER REGISTER(EEPROM):最低温度阈值寄存器
    • CONFIGURATION REGISTER(EEPROM):配置寄存器,配置温度的分辨率(精度,比如温度精确到小数点后几位)
    • 8-BIT CRC GENRATOR:CRC循环冗余码校验码(计算机网络学过),看通信数据是否正确。

寄生供电示意图:
image
VCC没有电的时候从DQ(I/O)取电

存储器结构

image
Byte0 和 Byte1存储温度
我们从外面发送数据,会写到暂存器中,然后发送一条指令,复制到EEPROM中
Reserbed是保留地址

posted @ 2025-08-03 10:15  秦瑞迁  阅读(275)  评论(0)    收藏  举报