#include <DHT.h>
#include <LiquidCrystal_I2C.h>
#define DHT_PIN 19
#define DHT_TIP DHT22
#define SDA 12
#define SCL 13
DHT dht_sensor(DHT_PIN, DHT_TIP);
LiquidCrystal_I2C lcd(0x27,20,4);
void setup(){
Serial.begin(9600);
dht_sensor.begin();
Wire.begin(SDA, SCL);
lcd.init();
lcd.backlight();
lcd.setCursor(2,0);
lcd.print("TERMO HIGROMETRO");
lcd.setCursor(3,3);
lcd.print("GIULIA ANDRADE");
}
void loop(){
float humi = dht_sensor.readHumidity();
float tempC = dht_sensor.readTemperature();
float tempF = dht_sensor.readTemperature(true);
float tempK = tempC + 273;
if ( isnan(tempC) || isnan(tempF) || isnan(humi)) {
Serial.println("falha ao ler o sensor dht!");
lcd.setCursor(3,1);
lcd.print("Falha ao ler o");
lcd.setCursor(5,2);
lcd.print("sensor DHT");
} else {
Serial.print("Umidade: ");
Serial.print(humi);
Serial.print("%");
Serial.print(" | ");
Serial.print("Temperatura: ");
Serial.print(tempC);
Serial.print("°C ~ ");
Serial.print(tempF);
Serial.print("°F ~ ");
Serial.print(tempK);
Serial.println("K");
lcd.setCursor(0,1);
lcd.print("Umidade: ");
lcd.print(humi);
lcd.print("%");
lcd.setCursor(0,2);
lcd.print("Temperatura: ");
lcd.print(tempC);
lcd.print("C");
}
delay(2000);
}