传感器介绍
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)
运行结果如图。
发表评论