#include "DHTesp.h"
const int DHT_PIN= 15; // Pin del sensor DHT22
const int LED1_PIN = 4; // Pin del LED 1
const int LED2_PIN = 5; // Pin del LED 2
const int LED3_PIN = 18; // Pin del LED 3
const int LED4_PIN = 19; // Pin del LED 4
unsigned int count=0;
unsigned long lastReadTime = 0;
const unsigned long readInterval = 1000;
DHTesp dhtSensor;
void setup() {
Serial.begin(115200);
dhtSensor.setup(DHT_PIN, DHTesp::DHT22);
pinMode(LED1_PIN, OUTPUT); // Configurar pines de LEDs como salidas
pinMode(LED2_PIN, OUTPUT);
pinMode(LED3_PIN, OUTPUT);
pinMode(LED4_PIN, OUTPUT);
}
void loop() {
unsigned long currentTime = millis();
if (currentTime - lastReadTime >= readInterval) {
lastReadTime = currentTime;
TempAndHumidity data = dhtSensor.getTempAndHumidity(); // Leer datos de sensor
float temperaturaaa = dhtSensor.getTemperature();
Serial.println(temperaturaaa);
Serial.println(data.humidity);
Serial.println("Temperatura: " + String(data.temperature, 1) + "°C");
Serial.println("Humedad: " + String(data.humidity, 2) + "%");
Serial.print("Vuelta ");
Serial.println(count);
count++;
digitalWrite(LED1_PIN, LOW);
digitalWrite(LED2_PIN, LOW);
digitalWrite(LED3_PIN, LOW);
digitalWrite(LED4_PIN, LOW);
// Encender LEDs según el rango de temperatura
if (data.temperature >= 0 && data.temperature <= 10) {
digitalWrite(LED1_PIN, HIGH);
} else if (data.temperature > 10 && data.temperature <= 20) {
digitalWrite(LED1_PIN, LOW);
digitalWrite(LED2_PIN, HIGH);
} else if (data.temperature >= 21 && data.temperature <= 30) {
digitalWrite(LED2_PIN, LOW);
digitalWrite(LED3_PIN, HIGH);
} else if (data.temperature > 30){
digitalWrite(LED3_PIN, LOW);
digitalWrite(LED4_PIN, HIGH);
}else{
digitalWrite(LED1_PIN, HIGH);
digitalWrite(LED2_PIN, HIGH);
digitalWrite(LED3_PIN, HIGH);
digitalWrite(LED4_PIN, HIGH);
}
delay(2500);
}
}