我有一个Pico运行‘pimoroni-picow-v1.19.1-micropython’并连接了一个DHT11。在运行main.py时,我总是得到一个输出,而不是读取。
DHT11按以下方式连接:
DOUT - GP28 GND - GND (32) VCC-3v3 (30)
从dht.py安装这里
然后,我以main.py的形式运行这个程序:
from machine import Pin, I2C
import utime as time
from dht import DHT11, InvalidChecksum
while True:
time.sleep(5)
pin = Pin(28, Pin.OUT, Pin.PULL_DOWN)
sensor = DHT11(pin)
t = (sensor.temperature)
h = (sensor.humidity)
print("Temperature: {}".format(sensor.temperature))
print("Humidity: {}".format(sensor.humidity))我的产出总是:
温度: 湿度:
我尝试过多个引脚,并尝试过来自其他DHT11 repos的代码,在调用sensor.temperature之后,它们似乎都提供了相同的输出。
我在谷歌上搜索过“”,结果很少,没有一个能说明我可能做错了什么。有什么想法吗?
发布于 2022-11-06 05:16:43
刚刚测试了这个和它的工作,一个微妙的差别,但与所使用的针无关。
您不需要安装任何外部模块,因为在dht模块中有一个内置模块
我不确定正确的术语,但你在哪里使用过:
sensor.temperature
sensor.humidity它应该是:
sensor.temperature()
sensor.humidity()下面是一个有用的例子
from machine import Pin
import time
import dht
sensor = dht.DHT11(Pin(4))
while True:
sensor.measure()
print("Temperature: {}°C Humidity: {}% ".format(sensor.temperature(), sensor.humidity()))
time.sleep(2)https://stackoverflow.com/questions/74235580
复制相似问题