我可以在mega2560上使用多重DHT22读取单独的温度/湿度吗?

时间:2017-05-05 20:20:27

标签: c++ android-layout arduino android-sensors

好吧,我一直在建立一个组织培养实验室。它有三个隔间,一个用于新文化,第二个用于植物植物,第三个用于完全成长的植物。我有两个Arduino超大板,其中一个已经设置好监控灯和温度,并在8通道板上控制4个继电器。我有三个Dht22用于第二块巨型板,但我不知道如何使它们以我想要的方式工作。我希望每个人都能阅读并报告每个隔间一个 - 所以我可以通过通风控制基于湿度的气流。如何让三个dht22工作并分别阅读?任何有关代码的帮助表示赞赏。

1 个答案:

答案 0 :(得分:1)

您是否尝试过简单地创建多个dht对象并单独轮询它们?

#include "DHT.h"

#define DHTPINA 2     // what digital pin the first one's connected to
#define DHTPINB 3     // what digital pin the second one's connected to

#define DHTTYPE DHT22   // DHT 22  (AM2302), AM2321

DHT dhtA(DHTPINA, DHTTYPE);
DHT dhtB(DHTPINA, DHTTYPE);

void setup() {
  Serial.begin(9600);
  Serial.println("DHTxx test!");

  dhtA.begin();
  dhtB.begin();
}

void loop() {
  delay(2000);
  float tA = dhtA.readTemperature();
  float tB = dhtB.readTemperature();

  Serial.print("Temp A:")
  Serial.print(tA)
  Serial.print("Temp B:")
  Serial.print(tB)
}

改编自this