MicroPython TPYBoard v202 连接DS18B20测温 esp8266 | 典型实例 | 技术支持 | MicroPython


当前位置:首页>技术支持>典型实例>MicroPython TPYBoard v202 连接DS18B20测温 esp8266

MicroPython TPYBoard v202 连接DS18B20测温 esp8266

 

实验目的


学习使用DS18B20测温模块获取温度

 

实验器材

 

TPYBoard v202 1

DS18B20温度传感器1

DS18B20 扩展板 1

micro USB数据线 1

杜邦线 若干

 

DS18B20温度传感器

 

DS18B20是常用的数字温度传感器,具有体积小,硬件开销低,抗干扰能力强,精度高的特点。实物图如下:

1.jpg

 

硬件连接

2.jpg

DS18B20的平面面对自己时,从左到右依次是GND(地)、DQ(数字输出口)、VDD(电源)。(注意:切勿正负极接反,DS18B20会被烧毁)将DS18B20对应插入扩展板上,如下图:

3.png

网上也有卖的DS18B20和扩展板结合一起的成品的模块。如果你只有一个DS18B20温度传感器的话,使用TPYBoard v202引脚驱动的话,DS18B20DO引脚需要接一个4.7K的上拉电阻,否则获取不到数据。

TPYBoard v202DS18B20扩展板的接线图,如下:

TPYBoard v202

DS18B20扩展板

3.3V

VCC

G4

DO

GND

GND

 

4.png

程序源码如下:

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)