#include "DHTesp.h"
const int DHT_PIN =32;
DHTesp dhtSensor;
void setup() {
// put your setup code here, to run once:
Serial.begin(115200);
pinMode(13, OUTPUT);//r1
pinMode(26, OUTPUT);//y1
pinMode(2, OUTPUT);//r2
pinMode(14, OUTPUT);//g1
pinMode(4, OUTPUT);//g2;
pinMode(5, OUTPUT);//y2
pinMode(34, INPUT);
dhtSensor.setup(DHT_PIN, DHTesp::DHT22);
pinMode(12, OUTPUT);//trigger
pinMode(18, INPUT);//echo
}
void loop()
{
int hcase=digitalRead(34);
if(hcase==1)
{
digitalWrite(13, HIGH);
digitalWrite(4, HIGH);
delay(2000);
digitalWrite(13, LOW);
digitalWrite(4,LOW);
}
hcase=digitalRead(34);
if(hcase==1)
{
digitalWrite(26, HIGH);
digitalWrite(5, HIGH);
delay(2000);
digitalWrite(26, LOW);
digitalWrite(5,LOW);
}
hcase=digitalRead(34);
if(hcase==1)
{
digitalWrite(14, HIGH);
digitalWrite(2, HIGH);
delay(2000);
digitalWrite(14, LOW);
digitalWrite(2, LOW);
}
hcase=digitalRead(34);
if(hcase==1)
{
digitalWrite(5, HIGH);
digitalWrite(26, HIGH);
delay(2000);
digitalWrite(26, LOW);
digitalWrite(5,LOW);
}
else{
int distance;
int duration;
TempAndHumidity data = dhtSensor.getTempAndHumidity();
Serial.println("Temp: " + String(data.temperature) + "°C");
Serial.println("Humidity: " + String(data.humidity) + "%");
delay(1000);
digitalWrite(12, HIGH);
delayMicroseconds(10);
digitalWrite(12, LOW);
duration = pulseIn(18, HIGH);
distance=(duration*0.0343)/2;
Serial.println("Distance:"+ String(distance) +" metres");
Serial.println("------------------------------------");
delay(1000);
}
}