#include #include #include #define SCREEN_WIDTH 128 // Ancho píxeles #define SCREEN_HEIGHT 64 // Alto píxeles #define OLED_RESET -1 // Reset pin (no usado) Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, OLED_RESET); void setup() { Serial.begin(115200); // Para debug en Monitor Serie // Inicia I2C en pines default ESP32 (21 SDA, 22 SCL) if (!display.begin(SSD1306_SWITCHCAPVCC, 0x3C)) { // Dirección común: 0x3C Serial.println(F("Error: OLED no encontrado!")); for (;;); // Para siempre } display.clearDisplay(); display.setTextSize(2); // Tamaño texto display.setTextColor(SSD1306_WHITE); display.setCursor(0, 0); // Posición display.println("¡Hola ESP32!"); display.println("OLED OK!"); display.display(); // Muestra delay(1000); } void loop() { // Animación simple: corazón parpadeante display.clearDisplay(); display.setTextSize(1); display.setCursor(0, 0); display.println("¡Funciona!"); display.drawRect(20, 32, 20,20,SSD1306_WHITE); // Dibuja corazón en centro display.display(); delay(500); display.fillRect(20, 32, 20,20, SSD1306_WHITE); // Lleno display.display(); delay(500); }