#include <Wire.h> // Librería esencial para la comunicación I2C
#include <Adafruit_GFX.h> // Librería gráfica básica de Adafruit
#include <Adafruit_SSD1306.h> // Librería específica para el controlador SSD1306 de tu OLED
// Define el ancho y alto de tu pantalla OLED en píxeles.
// ¡No te preocupes si no lo sabes, 128x64 es el tamaño más común para este modelo!
#define SCREEN_WIDTH 128 // Ancho de la pantalla OLED
#define SCREEN_HEIGHT 64 // Alto de la pantalla OLED
// Este parámetro es para el pin de reseteo del OLED.
// En la mayoría de los módulos OLED I2C, este pin no se usa, por eso lo ponemos en -1.
#define OLED_RESET -1
// Aquí creamos el objeto principal para controlar tu pantalla OLED.
// Le pasamos las dimensiones y la interfaz I2C.
Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, OLED_RESET);
void setup() {
Serial.begin(115200); // Iniciamos la comunicación serial para ver mensajes de depuración en tu monitor serial.
// Intentamos inicializar la pantalla OLED. La dirección I2C 0x3C es la más común.
// SSD1306_SWITCHCAPVCC es un parámetro técnico para la inicialización del display.
if (!display.begin(SSD1306_SWITCHCAPVCC, 0x3C)) {
Serial.println(F("Error: ¡No se encontró la pantalla OLED! Revisa bien tus conexiones."));
for (;;); // Si hay un error, el programa se detiene aquí para que puedas verificar.
}
// Limpiamos la pantalla para asegurarnos de que no haya "basura" de arranques anteriores.
display.clearDisplay();
// Configuramos el color del texto. SSD1306_WHITE significa que los píxeles se encenderán (blanco).
display.setTextColor(SSD1306_WHITE);
// Configuramos el tamaño del texto. Un tamaño de 1 es el normal, legible y estándar.
display.setTextSize(1);
// Establecemos la posición donde empezará a escribir el texto (columna 0, fila 0).
display.setCursor(0, 0);
// ¡El mensaje de bienvenida de Mechatronicstore!
display.println("¡Hola y exito en");
display.println("tus proyectos!");
display.println(""); // Un salto de línea para separar.
display.println("Te desea:");
display.println("MECHATRONICSTORE");
// Este comando es crucial: envía todo lo que hemos "dibujado" al buffer de la pantalla
// para que se muestre físicamente en el OLED.
display.display();
}
void loop() {
// Para esta primera actividad, el mensaje que mostramos es estático.
// Esto significa que no hay cambios constantes, por lo que el loop() puede quedarse vacío.
// En las siguientes actividades, agregaremos más lógica aquí para hacer cosas dinámicas.
}Loading
aitewinrobot-esp32c3-supermini
aitewinrobot-esp32c3-supermini