dht11和esp8266都接上电后,dht11不工作

在测试stm32f103c8+dht11+esp8266连服务器通信的内容,现在dht11和esp8266的驱动代码应该没有问题,单独跑都能正常运行,但是一单给两者都接上了电,dht11模块会失效,不能正常运行,要拔掉esp8266接在开发板上的电源线才能工作,但是这样就不能上传数据到服务器了,问题出在哪里了,如何才能解决这个问题啊,拜托了

https://blog.csdn.net/gyscjl/article/details/86500725

请问你的问题解决了吗

不知道你这个问题是否已经解决, 如果还没有解决的话:
  • 你看下这篇博客吧, 应该有用👉 :利用单片机通过ESP8266把DHT11温湿度数据进行从发主机接收信息
  • 除此之外, 这篇博客: ESP8266之DHT11温湿度数据上传+手机App反向控制中的 ESP8266读取DHT11 部分也许能够解决你的问题, 你可以仔细阅读以下内容或者直接跳转源博客中阅读:

    在这里插入图片描述
    这里使用的是D4口。

    本demo 是利用arduino IDE开发,关于arduino IDE 的ESP8266环境配置可参考:环境配置:

    点击跳转

    安装库
    本案例使用一个非常简单易用且与ESP8266配合使用的是Simple DHT传感器库。可以通过Arduino IDE Library Manager轻松安装该库。
    在 arduino IDE上方选项处----> 工具—>管理库,然后直接搜索dht11即可。点击安装库,如下图:

    在这里插入图片描述

    测试程序:

    #include <SimpleDHT.h>
    
    // for DHT11, 
    //      VCC: 5V or 3V
    //      GND: GND
    //      DATA: 2
    int pinDHT11 = D4;
    SimpleDHT11 dht11(pinDHT11);
    
    void setup() {
      Serial.begin(115200);
    }
    
    void loop() {
      // start working...
      Serial.println("=================================");
      Serial.println("Sample DHT11...");
      
      // read without samples.
      byte temperature = 0;
      byte humidity = 0;
      int err = SimpleDHTErrSuccess;
      if ((err = dht11.read(&temperature, &humidity, NULL)) != SimpleDHTErrSuccess) {
        Serial.print("Read DHT11 failed, err="); Serial.println(err);delay(1000);
        return;
      }
      
      Serial.print("Sample OK: ");
      Serial.print((int)temperature); Serial.print(" *C, "); 
      Serial.print((int)humidity); Serial.println(" H");
      
      // DHT11 sampling rate is 1HZ.
      delay(1500);
    }
    

    正常工作的话,串口会正常输出的,如下图所示:

    在这里插入图片描述


如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^