乐鑫技术交流
直播中

王玲

7年用户 1487经验值
私信 关注
[问答]

ESP8266&DHT22读取值问题如何解决?

我正在使用我已经使用了大约 2 年的技术制作一个简单的控制系统,现在没有任何问题。这是我第一次遇到困难。
1)ESP8266 Wemos D1,通过5.1V供电(外部12V 2A电源+降压得到5.1V,降压可以提供高达1.5A,比我需要的多得多)2)4x DHT22传感器
好吧
所以这是 ESP8266 上的 4 个传感器。我从 esp8266 板上的 5V 引脚为传感器供电。为了澄清,我也尝试在 wemos d1 板上使用 3.3V 引脚,没有任何区别。
- D2、D3、D4、D5(这里我说的是 wemos d1 板上的引脚,也就是说,引脚在板上的编号方式)
传感器线长约 1-1.5m,我为此使用了旧的 UTP 电缆。
这是我第一次在一块板上实际使用 4 个传感器,直到现在我最多只使用 1 或 2 个。正如您在附件中的图像中看到的,D2、D3 和 D4 引脚上的前 3 个传感器工作正常,只有 D5 引脚上的传感器给我带来了麻烦。我尝试切换传感器/电线以查看是否有帮助,我什至尝试连接一个只有 10 厘米长电线的单独传感器,但没有任何区别。
-arduino ide,我正在为 arduino 使用 DHT 库,到目前为止没有给我任何问题。
代码:全选for(int i=0;i<3;i++) {      

    sensor4_temperature = dht4.readTemperature(); // Gets the values of the temperature  

    if(!isnan(sensor4_temperature) && (0 < sensor4_temperature < 100)) break;

    else {

      delay(50);      

    }      

}

那么在这种情况下可能是什么问题呢?现在 pin D5 给我带来了问题,但昨天是 pin D4。我首先想到的是长电缆,但我读到有些人在长达 20 米的电缆上使用 DHT22 并且没有问题。即使这是原因,当我用短电缆连接传感器时,也没有任何区别。




更多回帖

发帖
×
20
完善资料,
赚取积分