Я пытаюсь запустить датчик DHT11 от моего Wemos D1 R1. У меня земля заземлена, а датчик подключен к выводу D2 с резистором между датчиком и линией питания. Я попытался подключить питание к выводу D3 и установить pinMode (D3, OUTPUT) и digitalWrite (D3, HIGH); но датчик не распознается. Если я подключу питание к выходному контакту 3.3 В на Wemos, он будет работать нормально. Я подключаю Wemos к USB моего компьютера. Может кто-нибудь сказать мне, почему Wemos не получает питание от контакта D3. Нужно ли подключать 9В к Wemos вместо питания компьютера? Ничего страшного, но было бы неплохо понять, почему и подключить его к другому контакту питания.
Это мой код, который активирует контакты и включает питание на вывод D3.
#include <DHTesp.h>
DHTesp dht;
pinMode(D3,OUTPUT);//make pin D3 a power outlet for 3.3v
void setup() {
Serial.begin(115200);
dht.setup(D2, DHTesp::DHT11);
digitalWrite(D3,HIGH);//make pin D3 hot
}
void loop() {
delay(8000);
float t = dht.getTemperature();
float f = (t*1.8) + 32;
if (isnan(t))
{
Serial.println("Failed to read from DHT2 sensor!"); **//when the sensor is powered by pin D3 this shows up but when powered by 3.3v it does get the sensor amount**
return;
}
Serial.print(", \"maintemp\": ");
Serial.print(f);
Serial.print("}\n");
delay(2000);
}