Sensor DHT11 y pantalla LCD

Indice

  1. DHT11 y pantalla lcd

1. DHT11 y pantalla lcd

#include <LiquidCrystal_I2C.h> // Librería LCD I2C
#include "DHT.h" // Librería del sensor DHT

#define DHTPIN 2 // Pin conectado al sensor DHT11
#define DHTTYPE DHT11 // Tipo de sensor DHT

LiquidCrystal_I2C lcd(0x3F, 16, 2);  // Dirección I2C 0x3F, 16 columnas y 2 filas
DHT dht(DHTPIN, DHTTYPE);

void setup()
{
  dht.begin();     // inicializa el sensor
  lcd.init();      // inicializa el LCD
  lcd.backlight(); // enciende la retroiluminación
}

void loop()
{
  delay(2000); // espera unos segundos entre mediciones
  float humi  = dht.readHumidity();    // lee la humedad
  float tempC = dht.readTemperature(); // lee la temperatura

  lcd.clear();

  // verifica si alguna lectura falló
  if (isnan(humi) || isnan(tempC)) {
    lcd.setCursor(0, 0);
    lcd.print("Error"); // muestra error si no hay lectura
  } else {
    lcd.setCursor(0, 0);  // empieza a imprimir en la primera fila
    lcd.print("Temp: ");
    lcd.print(tempC);     // imprime la temperatura
    lcd.print((char)223); // imprime el carácter °
    lcd.print("C");
    lcd.setCursor(0, 1);  // empieza a imprimir en la segunda fila
    lcd.print("Humi: ");
    lcd.print(humi);      // imprime la humedad
    lcd.print("%");
  }
}