#include "DHTesp.h"
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
#define UTC_OFFSET 0
#define UTC_OFFSET_DST 0
#define LED 2
const int DHT_PIN = 15;
const int min_temp = 10;
const int min_hum = 10;
const int max_temp = 40;
const int max_hum = 60;
DHTesp dhtSensor;
LiquidCrystal_I2C LCD = LiquidCrystal_I2C(0x27, 16, 2);
void setup() {
Serial.begin(115200);
dhtSensor.setup(DHT_PIN, DHTesp::DHT22);
LCD.init();
LCD.backlight();
pinMode(LED, OUTPUT);
}
void printTempAndHumidity() {
TempAndHumidity data = dhtSensor.getTempAndHumidity();
LCD.setCursor(0, 0);
LCD.println("Temp: " + String(data.temperature, 2) + "°C");
LCD.setCursor(0, 1);
LCD.println("Humidity: " + String(data.humidity, 1) + "%");
if((data.temperature < min_temp && data.humidity < min_hum) || (data.temperature > max_temp && data.humidity > max_hum)) {
digitalWrite(LED, HIGH);
}
else digitalWrite(LED, LOW);
}
void loop() {
printTempAndHumidity();
delay(250);
}