[DHT11传感器连接到ESP8266时,可打印255个温度和湿度

问题描述 投票:0回答:2

[我正在尝试通过ESP8266将DHT11数据放到AdafruitIO上,但是它不起作用,并且一直像这样打印出来:

Read failFailed to read from DHT
Humidity: 255.00 %  Temperature: 255.00 *C
Humidity: 255.00 %  Temperature: 255.00 *C
Humidity: 255.00 %  Temperature: 255.00 *C
Read failFailed to read from DHT
Humidity: 255.00 %  Temperature: 255.00 *C
Humidity: 255.00 %  Temperature: 255.00 *C
Humidity: 255.00 %  Temperature: 255.00 *C
Read failFailed to read from DHT
Humidity: 255.00 %  Temperature: 255.00 *C
Humidity: 255.00 %  Temperature: 255.00 *C
Humidity: 255.00 %  Temperature: 255.00 *C

这是我的代码

#include "DHT.h"
#include "Arduino.h"

#define DHTPIN 5   

#define DHTTYPE DHT11   


DHT dht(DHTPIN, DHTTYPE);

void setup() {
  Serial.begin(9600); 
  Serial.println("DHTxx test!");

  dht.begin();
}

void loop() {
  float h = dht.readHumidity();
  float t = dht.readTemperature();
  if (isnan(t) || isnan(h)) {
    Serial.println("Failed to read from DHT");
  } else {
    Serial.print("Humidity: "); 
    Serial.print(h);
    Serial.print(" %\t");
    Serial.print("Temperature: "); 
    Serial.print(t);
    Serial.println(" *C");
  }
}

[在与ESP8266一起使用时会失败,但是当我在Arduino MEGA2560上对其进行测试时,它运行良好。

c arduino esp8266
2个回答
0
投票

是哪个ESP8266?是开发板还是ESP-01或类似产品?请提供更多信息,其中有太多的ESP8266开发板...

由于没有关于接线的图片,所以不能肯定地说,但是针脚号正确吗?我的arduino Uno克隆也有类似的问题,但是原因是连接/接线不良。

RandomNerd有很好的例子:ESP8266 DHT11/DHT22 Temperature and Humidity Web Server with Arduino IDE


0
投票

尽管取决于具体型号,但大多数ESP8266的输出电源引脚均为3.3V。大多数传感器(包括DHT11)更喜欢接近5V的输入。 (它声称可以使用3.5V-5.5V)

这在过去使我迷惑不解,我偷偷地怀疑这就是您遇到的问题。

© www.soinside.com 2019 - 2024. All rights reserved.