树莓派 Pico 上使用 DS18B20 温度传感器

传感器介绍

1、DS18B20 温度传感采用单总线的接口方式,与微处理器连接时仅需要一条口线即可实现微处理器与 DS18B20 的双向通讯。单总线具有经济性好,抗干扰能力强,适合于恶劣环境的现场温度测量。
2、测量温度范围宽,测量精度高 DS18B20 的测量范围为 -55 ℃ ~+ 125 ℃ ; 在 -10~+ 85°C 范围内,精度为 ± 0.5°C 。
3、持多点组网功能,多个 DS18B20 可以并联在唯一的单线上,实现多点测温。
4、工作电源: 3.0~5.5V。DS18B20 也可以通过内部寄生电路从数据线上获取电源。因此,当数据线上的时序满足一定的要求时,可以不接外部电源,从而使系统结构更趋简单,可靠性更高。
5、负压特性电源极性接反时,温度计不会因发热而烧毁,但不能正常工作。

硬件连接

DS18B20 模块的 VCC 脚接树莓派 Pico 的 3V3。
DS18B20 模块的 GND 脚接树莓派 Pico 的 GND。
DS18B20 模块的 DQ 脚接树莓派 Pico 的 GP28。

编程

系统是带相关的库的,所以直接使用就可以了。

import machine, onewire, ds18x20, time
ds_pin=machine.Pin(28)
ds_sensor = ds18x20.DS18X20(onewire.OneWire(ds_pin))

roms = ds_sensor.scan()
print('Found DS devices: ', roms)

while True:
    ds_sensor.convert_temp()
    time.sleep_ms(750)
    for rom in roms:
        # print(rom)
        print(ds_sensor.read_temp(rom))
    time.sleep(2)

运行结果如图。

你还可以:
查看系列教程中的其他文章
购买本教程所用到的 Pico 套件



坐沙发

发表评论

你的邮件地址不会公开


*