#include <DHT.h>
#define DHT_PINO_DO_SENSOR 21
#define DHT_TIPO_DE_SENSOR DHT22
#include <LiquidCrystal_I2C.h>
#include <Wire.h>
#define SDA 15
#define SCL 16
LiquidCrystal_I2C lcd(0x27,20,4);
int dataPin = 12;
int latchPin = 13;
int clockPin = 14;
DHT dht_sensor (DHT_PINO_DO_SENSOR, DHT_TIPO_DE_SENSOR);
void setup() {
Serial.begin(9600);
dht_sensor.begin();
pinMode(latchPin, OUTPUT);
pinMode(clockPin, OUTPUT);
pinMode(dataPin, OUTPUT);
Wire.begin(SDA,SCL);
lcd.init();
lcd.backlight();
lcd.setCursor(3,0);
lcd.print("Termo Higrometro");
lcd.setCursor(1,1);
lcd.print("Umidade: 40.00%");
lcd.setCursor(0,2);
lcd.print("Temperatura: 24.00C");
lcd.setCursor(6,3);
lcd.print("RAFAEL");
}
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 do sensor DHT!");
} else {
Serial.print("Umidade relativa do ar: ");
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");
}
delay(2000);
}