Hallo,
ich verstehe nicht ganz wie ich zwei DHT22 auslesen kann. Einen auslesen ist kein Problem, aber bei zwei gibt der nur den Wert von einem zwei mal aus. Ich habe es versucht (Sketch unten) aber irgendwas stört sich da gegenseitig. Mag mir jmd helfen, das ich das verstehe?
#include "DHT.h"
#define DHTPIN 4
#define DHTPIN 5
#define DHTTYPE DHT22
DHT dht (DHTPIN, DHTTYPE);
DHT dht2 (DHTPIN, DHTTYPE);
#include <DS3231.h>
DS3231 rtc(SDA, SCL);
Time t;
int LSR_1 = 2; //Leuchtstoffröhre Fach1
int LSR_2 = 3; //Leuchtstoffröhre Fach2
void setup()
{
Serial.begin(9600);
rtc.begin();
//rtc.setDOW(WEDNESDAY); //Setzt den Wochentag (großschreiben)
//rtc.setTime(12, 0, 0); //Setzt die Zeit (Stunde,Minute,Sekunde)
//rtc.setDate(1, 1, 2014); //Setzt das Datum (Tag,Monat,Jahr)
pinMode(LSR_1, OUTPUT);
pinMode(LSR_2, OUTPUT);
dht.begin();
dht2.begin();
}
void loop()
{
t = rtc.getTime(); //Liest den DS3231 frisch aus
Serial.print(rtc.getDOWStr()); //Gibt das Datum und die Zeit im Seriellen Monitor wieder
Serial.print(" ");
Serial.print(rtc.getDateStr());
Serial.print(" Zeit: ");
Serial.print(rtc.getTimeStr());
if((t.hour >= 19) && (t.hour < 20))
digitalWrite(LSR_1,LOW);
else
digitalWrite(LSR_1,HIGH);
if((t.hour >= 20) && (t.hour < 21))
digitalWrite(LSR_2,LOW);
else
digitalWrite(LSR_2,HIGH);
float h = dht.readHumidity(); //Luftfeuchte auslesen
float t = dht.readTemperature(); //Temperatur auslesen
Serial.print(" Luftfeuchte_1: "); //Gibt die Luftfeuchte aus
Serial.print(h);
Serial.print(" %\t");
Serial.print(" Temperatur_1: "); //Gibt die Luftfeuchte aus
Serial.print(t);
Serial.print(" C");
h = dht2.readHumidity();
t = dht2.readTemperature();
Serial.print(" Luftfeuchte_2: "); //Gibt die Luftfeuchte aus
Serial.print(h);
Serial.print(" %\t");
Serial.print(" Temperatur_2: "); //Gibt die Luftfeuchte aus
Serial.print(t);
Serial.println(" C");
delay(5000);
}