将两个传感器dht11和dht22连接到相同的nodemcu模块esp-12e

时间:2016-09-26 00:52:22

标签: c++ c arduino esp8266 nodemcu

我有一个项目,我需要将两个传感器DHT11和DHT22连接到模块nodemcu esp-12e。 有没有办法在同一个模块中同时使用这两个传感器?

2 个答案:

答案 0 :(得分:1)

如果您需要实施示例,请使用以下步骤:

  • https://github.com/adafruit/DHT-sensor-library/

  • 获取DHT库
  • 使用下面的代码段,但不要忘记设置您的引脚:

    #include "DHT.h"
    #define DHT11PIN 2
    #define DHT22PIN 3
    
    DHT dht11(DHT11PIN, DHT11 );
    DHT dht22(DHT22PIN, DHT22 );
    
    void setup() {
      Serial.begin(9600);
      Serial.println("DHTxx test!");
    
      dht11.begin();
      dht22.begin();
    }
    
    void loop() {
      delay(2000);
      float h11 = dht11.readHumidity();
      float t11 = dht11.readTemperature();
      float f11 = dht11.readTemperature(true);
    
      float h22 = dht22.readHumidity();
      float t22 = dht22.readTemperature();
      float f22 = dht22.readTemperature(true);
      //do print them..
    }
    

答案 1 :(得分:0)

当然,有。

两个传感器都是数字传感器。因此,只要ESP12e确实有足够的数字引脚,就可以获得两个不同的传感器数据。

从每个的数字IO引脚中选择一个数据输入,并将其编程为输入。你需要有相关的数据通信库。基本上,在arduino中,你可以做到这一点,包括:

#include <DHT.h>

检查以下链接以跟进:

http://www.micropik.com/PDF/dht11.pdf

https://www.adafruit.com/product/385