#include "DHT.h"
#include <LiquidCrystal.h>
#define DHTPIN 2
#define DHTTYPE DHT22 // DHT 22 (AM2302), AM2321
LiquidCrystal lcd(8, 9, 4, 5, 6, 7);
DHT dht(DHTPIN, DHTTYPE);
void setup() {
Serial.begin(115200);
lcd.begin(16,2);
Serial.println(F("Ejemplo DHT22!"));
dht.begin();
}
void loop() {
float temperatureC = dht.readTemperature();
float temperatureF = dht.readTemperature(true);
float humidity = dht.readHumidity();
float heat = dht.computeHeatIndex(temperatureF, humidity);
// Compruebe si alguna lectura falló y salga antes (para volver a intentarlo).
if (isnan(temperatureC) || isnan(temperatureF) || isnan(humidity)) {
Serial.println(F("Error al leer el sensor!"));
return;
}
// Cursor en la primera posición de la primera fila
lcd.setCursor(0,0);
lcd.print("C:");
lcd.print(temperatureC);
// Cursor en la 11° posición de la primera fila
lcd.setCursor(10,0);
lcd.print("F:");
lcd.print(temperatureF);//1 decimal
// Cursor en la primera posición de la 2° fila
lcd.setCursor(0,1);
lcd.print("H:");
lcd.print(humidity); //1 decimal
// Cursor en la 11° posición de la 2° fila
lcd.setCursor(10,1);
lcd.print("Q:");
lcd.print(heat);
delay(200);
Serial.print(F("Humedad: "));
Serial.print(humidity);
Serial.print(F("% Temperatura: "));
Serial.print(temperatureC);
Serial.print(F("°C - "));
Serial.print(temperatureF);
Serial.println(F("°F "));
Serial.println(F("Q: "));
Serial.print(heat);
// Espere unos segundos entre mediciones.
delay(2000);
}