//Importamos librerias para OLED
#include <Wire.h>
#include <Adafruit_GFX.h>
#include <Adafruit_SSD1306.h>
#include "DHTesp.h"
//Definimos las medidas en pixeles de ancho y alto de la pantalla
#define SCREEN_WIDTH 128
#define SCREEN_HEIGHT 64
//Crear el objeto para manejar la pantalla
Adafruit_SSD1306 oled(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, -1);
int sensorLCD = 13;
DHTesp sensor;
void setup() {
Serial.begin(115200);
Serial.println("Hello, ESP32!");
//Iniciamos la pantalla OLED
oled.begin(SSD1306_SWITCHCAPVCC, 0x3C);
sensor.setup(sensorLCD, DHTesp::DHT22);
}
void loop() {
TempAndHumidity datos =sensor.getTempAndHumidity();
Serial.println("Temperatura: "+String(datos.temperature, 1)+"°C");
delay(1000);
Serial.println("Humedad: "+String(datos.humidity, 1)+"%");
delay(1000);
if (datos.temperature < 50){
//limpiar display
oled.clearDisplay();
//tamaño letra
oled.setTextSize(1);
//color letra
oled.setTextColor(WHITE);
//punto xy
oled.setCursor(0,1);
//Texto
oled.println("Temperatura: "+String(datos.temperature, 1)+"C");
oled.setCursor(0,15);
oled.println("Humedad: "+String(datos.humidity, 1)+"%");
//mostrar
oled.display();
}else{
oled.clearDisplay();
//tamaño letra
oled.setTextSize(1);
//color letra
oled.setTextColor(WHITE);
//punto xy
oled.setCursor(30,1);
//Texto
oled.println("Alerta!!!!");
oled.setCursor(0,15);
oled.println("Temperatura: "+String(datos.temperature, 1)+"C");
//mostrar
oled.display();
}
}