ESP32 常用的模块 3.1.18 dht

2020-06-161.1万
AI 快速预览详细 收起
本文介绍了如何在ESP32上使用dht模块读取DHT22和DHT11温湿度传感器的数据。首先,创建一个与引脚pin相连的DHT22或DHT11传感器对象,然后调用measure()方法读取并返回传感器的温湿度数据。文章还提供了具体的代码示例,帮助用户快速上手。

dht模块中提供了dnt系列温湿度传感器读取相关的函数,ESP32上支持dht的引脚有:IO0、IO2/D9、D0/IO4、IO5/D8、D1/IO16、LRCK/IO17、SCK/IO18、MISO/IO19、SDA/IO21、SCL/IO22、MOSI/IO23、IO25/D2、IO26/D3、IO27/D4。

函数

1. dht.DHT22(pin)

函数说明:创建一个与引脚pin相连的DHT22传感器对象。

pin:引脚

示例:

from machine import Pin
import dht

d = dht.DHT22(Pin(25))

1.1. dht.DHT22.humidity()

函数说明:读取并返回的传感器的湿度。
示例:

d.measure()
print(d.humidity())

1.2. dht.DHT22.temperature()

函数说明:读取并返回传感器的温度值。
示例:

d.measure()
print(d.temperature())

2. dht.DHT11()

与DHT22()函数类似,不再赘述。

综合示例

运行下面的示例前需要准备一个DHT11模块(点击购买DHT11),并且连接相关的硬件,连接如下图。
ESP32 常用的模块 3.1.18 dht图1
将如下代码保存为.py文件并运行。

from machine import Pin
import dht
import time

dht11 = dht.DHT11(Pin(25))
#dht22 = dht.DHT22(Pin(27))

while True:
  dht11.measure()
  print("dht11 humidity:",dht11.humidity())
  print("dht11 temperature:",dht11.temperature())
  #dht22.measure()
  #print("dht22 humidity:",dht22.humidity())
  #print("dht22 temperature:",dht22.temperature())
  time.sleep(0.5)

运行结果

ESP32 常用的模块 3.1.18 dht图2


创作许可协议

本项目采用 None(不开放任何权利,保留所有权利) 进行许可。

评论(1)
gada888
gada888
python写的代码真简练
- 没有更多了 -