En este espacio tienes acceso a las librerías necesarias para que se pueda ejecutar de forma segura:
#include <DHT.h>
#include <DHT_U.h>
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
// Configuración de la pantalla LCD: Dirección I2C 0x27
LiquidCrystal_I2C lcd(0x27, ______, ______); // PISTA 1: Número de columnas y filas
int LEDazul = 6;
int LEDrojo = 5;
int LEDamarillo = 11;
int LEDverde = 3;
int SensorLuz = A1;
int SensorHyT = 2;
int Temperatura;
int Humedad;
int valorSensorLuz;
int porcentajeLuz;
DHT dht(SensorHyT, DHT11);
void setup(){
// Inicializamos la pantalla LCD I2C
lcd.________(); // PISTA 2: Comando para iniciar la pantalla
lcd.backlight();
dht.begin();
pinMode(LEDazul, _________); // PISTA 3: ¿Un LED es entrada o salida?
pinMode(LEDrojo, _________);
pinMode(LEDamarillo, _________);
pinMode(LEDverde, _________);
}
void loop(){
Temperatura = dht.__________________(); // PISTA 4: Función para leer temperatura
Humedad = dht.__________________(); // PISTA 5: Función para leer humedad
valorSensorLuz = ______________(SensorLuz); // PISTA 6: Comando para leer un pin A (analógico)
// PISTA 7: Convertir lectura. ¿Cuál es el valor máximo del conversor analógico de Arduino (10 bits)?
porcentajeLuz = map(valorSensorLuz, 0, ________, 0, 100);
if (porcentajeLuz > 80) {
digitalWrite(LEDazul, ________); // PISTA 8: Comando para enviar voltaje (encender)
} else {
digitalWrite(LEDazul, ________); // PISTA 9: Comando para quitar voltaje (apagar)
}
if (Temperatura > 30) {
digitalWrite(LEDrojo, HIGH);
} else {
digitalWrite(LEDrojo, LOW);
}
if (Humedad > 80) {
digitalWrite(LEDamarillo, HIGH);
} else {
digitalWrite(LEDamarillo, LOW);
}
// PISTA 10: Operador lógico AND (Y) para que todas las condiciones se deban cumplir
if ((porcentajeLuz < 80) ______ (Temperatura < 30) ______ (Humedad < 80)) {
digitalWrite(LEDverde, HIGH);
} else {
digitalWrite(LEDverde, LOW);
}
// --- PRESENTACIÓN EN PANTALLA LCD I2C ---
lcd.________(); // PISTA 11: Comando para limpiar la pantalla y evitar "fantasmas"
// Fila 1 (Arriba): Temperatura y Humedad
lcd.setCursor(0, ______); // PISTA 12: Coordenada Y para la primera fila (¡recuerda que se cuenta desde el 0!)
lcd.print("T:");
lcd.print(Temperatura);
lcd.print("C ");
lcd.setCursor(8, 0);
lcd.print("H:");
lcd.print(Humedad);
lcd.print("%");
// Fila 2 (Abajo): Porcentaje de Luz
lcd.setCursor(0, ______); // PISTA 13: Coordenada Y para la segunda fila
lcd.print("Luz: ");
lcd.print(porcentajeLuz);
lcd.print("%");
delay(1000);
}