#include <LiquidCrystal_I2C.h>
#include "DHTesp.h"
LiquidCrystal_I2C lcd(0x27, 16, 2); // I2C address 0x27, 16 column and 2 rows
const int DHT_PIN = 15;
DHTesp dhtSensor;
int sw = 32;
int sw1 = 33;
int sw2 = 35;
int led = 14;
int led1 = 12;
int Relayauto = 13;
int Relayman = 12;
int Relayman1 = 14;
int led_status = 0;
int led1_status = 0;
int Relayauto_status = 0;
void setup() {
lcd.init(); // initialize the lcd
lcd.backlight();
Serial.begin(115200);
dhtSensor.setup(DHT_PIN, DHTesp::DHT22);
pinMode(18, OUTPUT);
pinMode(5, OUTPUT);
pinMode(13, OUTPUT);
pinMode(12, OUTPUT);
pinMode(14, OUTPUT);
pinMode(sw, INPUT_PULLUP);
pinMode(led, OUTPUT);
pinMode(sw1, INPUT_PULLUP);
pinMode(led1, OUTPUT);
pinMode(sw2, INPUT_PULLUP);
}
void loop() {
TempAndHumidity data = dhtSensor.getTempAndHumidity();
Serial.println("Temp: " + String(data.temperature, 1) + "C");
Serial.println("Humidity: " + String(data.humidity, 1) + "%");
//Serial.println("---");
//delay(2000);
lcd.clear(); // clear display
lcd.setCursor(1, 0); // move cursor to (0, 0)
lcd.print("Temp: " + String(data.temperature, 1) + "C"); // print message at (0, 0)
lcd.setCursor(1, 1); // move cursor to (2, 1)
lcd.print("Humidity: " + String(data.humidity, 1) + "%"); // print message at (2, 1)
delay(1000); // display the above for two seconds
//lcd.clear(); // clear display
//lcd.setCursor(2, 0); // move cursor to (3, 0)
// lcd.print("LCD I2C MODE"); // print message at (3, 0)
//lcd.setCursor(6, 1); // move cursor to (0, 1)
//lcd.print("16x2"); // print message at (0, 1)
//delay(2000); // display the above for two seconds
/* if(data.temperature>32)
{
digitalWrite(18, HIGH);
}
else
{
digitalWrite(18, LOW);
}
if(data.humidity<15)
{
digitalWrite(5, HIGH);
}
else
{
digitalWrite(5, LOW);
}
*/
if(digitalRead(sw)==0){
if(led_status==0){
digitalWrite(led,1);
led_status =1;
}else{
digitalWrite(led,0);
led_status = 0;
}
}
if(digitalRead(sw1)==0){
if(led1_status==0){
digitalWrite(led1,1);
led1_status =1;
}else{
digitalWrite(led1,0);
led1_status = 0;
}
delay(250);
}
if(data.temperature>32)
{
digitalWrite(18, HIGH);
}
else
{
digitalWrite(18, LOW);
}
if(data.humidity<50)
{
digitalWrite(5, HIGH);
}
else
{
digitalWrite(5, LOW);
}
}