我将DHT11连接到引脚D2 ESP8266。使用此代码。 在控制台中显示“读取失败”。我该如何解决?
DHT11在Arduino上测试,它运行正常。
#include "DHT.h"
#define DHT11PIN D2
DHT dht11(DHT11PIN, DHT11 );
void setup() {
Serial.begin(9600);
Serial.println("DHTxx test!");
dht11.begin();
}
void loop() {
delay(2000);
float h11 = dht11.readHumidity();
float t11 = dht11.readTemperature();
float f11 = dht11.readTemperature(true);
}
答案 0 :(得分:1)
Esp8266中没有D2引脚。它是nodemcu定义。所以你可以使用
#define DHT11PIN 4
DHT dht11(DHT11PIN, DHT11 );
其中D2连接到Esp8266中的第4个gpio。
或者,您可以将设备管理器中的板类型正确设置为NodeMCU并添加
#include "Arduino.h"
代码。