MicroPython TPYBoard v202 连接DS18B20测温 esp8266
实验目的
学习使用DS18B20测温模块获取温度
实验器材
TPYBoard v202 1块
DS18B20温度传感器1个
DS18B20 扩展板 1个
micro USB数据线 1条
杜邦线 若干
DS18B20温度传感器
DS18B20是常用的数字温度传感器,具有体积小,硬件开销低,抗干扰能力强,精度高的特点。实物图如下:
硬件连接
当DS18B20的平面面对自己时,从左到右依次是GND(地)、DQ(数字输出口)、VDD(电源)。(注意:切勿正负极接反,DS18B20会被烧毁)将DS18B20对应插入扩展板上,如下图:
网上也有卖的DS18B20和扩展板结合一起的成品的模块。如果你只有一个DS18B20温度传感器的话,使用TPYBoard v202引脚驱动的话,DS18B20的DO引脚需要接一个4.7K的上拉电阻,否则获取不到数据。
TPYBoard v202与DS18B20扩展板的接线图,如下:
TPYBoard v202 | DS18B20扩展板 |
3.3V | VCC |
G4 | DO |
GND | GND |
程序源码如下:
import machine import time,onewire,ds18x20 from machine import Pin def GetTemp(): roms = ds.scan()#扫描总线上的设备 ds.convert_temp()#获取采样温度 time.sleep_ms(750) for rom in roms: print(ds.read_temp(rom))#得到温度 if __name__=='__main__': ow=onewire.OneWire(Pin(4))#创建onewire总线 引脚4(G4) ds=ds18x20.DS18X20(ow) while True: GetTemp() time.sleep(2)