#include <LiquidCrystal.h>
#include <DHT.h>
LiquidCrystal lcd(2, 3, 9, 10, 11, 12);
//Pines de Arduino donde va conectada la pantalla (RS, E, D4, D5, D6, D7)
#define DHTPIN 7
#define DHTTYPE DHT22
DHT dht(DHTPIN, DHTTYPE); //esta funcion recibe los datos de ^DHTPIN^ pero en formato del DHTTYPE//
void setup()
{
lcd.begin(16, 2); //Inicializamos la pantalla con 16 columnas y 2 filas
dht.begin();
}
void loop()
{
float h = dht.readHumidity();
float t = dht.readTemperature();
float f = dht.readTemperature(true);
if (isnan(h) || isnan(t) || isnan(f))
{
lcd.write("¡Fallo en la lectura del sensor DHT!");
return;
}
float hif = dht.computeHeatIndex(f,h); //sensacion termica
float hic = dht.computeHeatIndex(t,h); //Sensacion termica farenheit
lcd.setCursor(0,0);
lcd.write("H rel:");
lcd.setCursor(0,1);
lcd.print(h);
delay(2000);
lcd.clear();
lcd.setCursor(0,0);
lcd.write("Temperatura: ");
lcd.setCursor(0,1);
lcd.print(t);
lcd.write(" Celsius");
delay(2000);
lcd.clear();
lcd.setCursor(0,0);
lcd.write("Temperatura: ");
lcd.setCursor(0,1);
lcd.print(f);
lcd.write(" Fahrenheit");
delay(2000);
lcd.clear();
lcd.setCursor(0,0);
lcd.write("S termica: ");
lcd.setCursor(0,1);
lcd.print(hic);
lcd.write(" C ");
delay(2000);
lcd.clear();
lcd.setCursor(0,0);
lcd.write("S termica: ");
lcd.setCursor(0,1);
lcd.print(hif);
lcd.write(" F");
delay(2000);
lcd.clear();
}