//Incluimos las librerias
#include "DHTesp.h"
#include <Wire.h>
#include <RTClib.h>
RTC_DS1307 rtc;
//Decaramos el variable que almacena el pin a conectar el DHT11
int pinDHT = 2;
//Instanciamos el DHT
DHTesp dht;
void setup() {
Serial.begin(115200);
//Inicializamos el dht
dht.setup(pinDHT, DHTesp::DHT22);
Wire.begin(5,4);
rtc.begin();
// Si el RTC no está configurado, configúralo con la hora actual.
if (!rtc.isrunning()) {
rtc.adjust(DateTime(F(__DATE__), F(__TIME__)));
}
// Configura la hora deseada (formato: año, mes, día, hora, minuto, segundo)
DateTime nuevaHora(2023, 10, 25, 14, 30, 0);
rtc.adjust(nuevaHora);
Serial.println("Hora configurada.");
}
void loop() {
//Obtenemos el arreglo de datos (humedad y temperatura)
TempAndHumidity data = dht.getTempAndHumidity();
//Mostramos los datos de la temperatura y humedad
DateTime now = rtc.now();
Serial.print(now.year(), DEC);
Serial.print('/');
Serial.print(now.month(), DEC);
Serial.print('/');
Serial.print(now.day(), DEC);
Serial.print(" ");
Serial.print(now.hour(), DEC);
Serial.print(':');
Serial.print(now.minute(), DEC);
Serial.print(':');
Serial.print(now.second(), DEC);
Serial.println();
delay(2000);
Serial.println("Temperatura: " + String(data.temperature, 2) + "°C");
Serial.println("Humedad: " + String(data.humidity, 1) + "%");
Serial.println("---");
delay(1000);
}