You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Raspberry Pi上获取已连接DS18B20传感器的详细信息?

当然可以!DS18B20这类1-Wire协议的传感器本身就把型号、序列号等身份信息存在了自身的ROM芯片里,树莓派完全能直接读取这些数据,刚好可以整合到你的LCD显示程序里。下面我一步步给你讲怎么做:

步骤1:先确保树莓派启用1-Wire支持

DS18B20依赖1-Wire协议工作,所以得先让树莓派开启这个功能:

  • 打开终端,输入sudo raspi-config
  • 依次选择「Interface Options」→「1-Wire」→ 确认启用,然后重启树莓派。
步骤2:找到连接的传感器设备

重启后,树莓派会自动识别DS18B20,相关设备文件会放在/sys/bus/w1/devices/目录下。你可以用命令查看:

ls /sys/bus/w1/devices/

输出里会有一个以28-开头的目录(28就是DS18B20的专属家族代码),这个目录名就是传感器的唯一ID(比如28-00000abcdef)。

步骤3:读取传感器的身份信息

有两种方式可以获取这些信息,一种是直接读系统文件,另一种是用Python库快速集成到你的程序里:

方法一:直接读取系统文件(适合快速验证)

进入传感器对应的目录:

cd /sys/bus/w1/devices/28-XXXXXXXXXXXX

(把上面的XXXXXXXXXXXX换成你实际看到的ID)

然后查看name文件,里面直接包含了传感器的家族码和唯一序列号:

cat name

另外,DS18B20的家族码0x28对应的就是德州仪器(原达拉斯半导体)的这款数字温度传感器,通过这个代码就能确定制造商和型号。

方法二:用Python库读取(适合集成到你的LCD程序)

如果你想用Python获取信息并显示到LCD上,推荐用w1thermsensor库,它封装了所有1-Wire传感器的操作逻辑,能直接返回型号、序列号等信息。

首先安装库:

pip install w1thermsensor

然后写一段测试代码:

from w1thermsensor import W1ThermSensor

# 获取所有连接的DS18B20传感器
sensors = W1ThermSensor.get_available_sensors([W1ThermSensor.THERM_SENSOR_DS18B20])

for sensor in sensors:
    print(f"传感器型号: {sensor.model}")
    print(f"制造商家族码: 0x{sensor.family_code:02X}")
    print(f"唯一序列号: {sensor.id}")
    print(f"当前温度: {sensor.get_temperature()}°C")

运行这段代码,就能看到你需要的所有信息,直接把这些输出逻辑替换成LCD显示的代码就行。

步骤4:整合到LCD显示程序

假设你用的是常见的16x2 I2C LCD,用RPLCD库控制的话,这里给你一个简单的整合示例:

from w1thermsensor import W1ThermSensor
from RPLCD.i2c import CharLCD

# 初始化LCD(I2C地址通常是0x27或0x3F,根据你的模块调整)
lcd = CharLCD('PCF8574', 0x27)

# 获取第一个连接的DS18B20传感器信息
sensor = W1ThermSensor()

# 在LCD上显示信息
lcd.clear()
lcd.write_string(f"Model: {sensor.model}")
lcd.cursor_pos = (1, 0)
lcd.write_string(f"ID: {sensor.id[:8]}...")  # 因为ID太长,只显示前8位加省略号

这样传感器一连接,程序启动后就会自动在LCD上显示型号和序列号啦。

补充小提示
  • 如果你的树莓派连接了多个DS18B20,上面的Python代码会自动识别每个传感器的独立信息,适合多传感器场景。
  • DS18B20的家族码是固定的0x28,对应制造商是德州仪器(TI),型号就是DS18B20,所以通过家族码就能直接确定这些信息。

内容的提问来源于stack exchange,提问作者ALFA

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.28 10:00:02