#include <Wire.h>
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27, 16, 2); // Dirección I2C de la pantalla LCD y tamaño (ajusta según tu configuración)
void setup() {
lcd.init(); // Inicializar la pantalla LCD (opcional, pero a veces necesario)
lcd.begin(16, 2); // Inicializar la pantalla LCD con 16 columnas y 2 filas
lcd.backlight(); // Encender la retroiluminación de la pantalla (opcional)
// Mostrar mensaje de bienvenida
lcd.setCursor(0, 0);
lcd.print("U.P.I.I.T.A.");
lcd.setCursor(0, 1);
lcd.print("I.P.N.");
delay(5000); // Mantener el mensaje por 5 segundos
lcd.clear(); // Limpiar la pantalla
// Mostrar mensaje con animación
lcd.setCursor(0, 0);
lcd.print("Pastillero");
lcd.setCursor(0, 1);
lcd.print("electrónico");
// Animación de pastilla y corazón latiendo
for (int i = 0; i < 5; i++) {
lcd.setCursor(15, 1);
lcd.print("*"); // Pastilla
delay(500);
lcd.setCursor(15, 1);
lcd.print(" "); // Borrar pastilla
delay(500);
lcd.setCursor(14, 1);
lcd.print(">"); // Corazón latiendo
delay(500);
lcd.setCursor(14, 1);
lcd.print(" "); // Borrar corazón
delay(500);
}
lcd.clear(); // Limpiar la pantalla
// Mostrar mensaje con efecto de movimiento de letras
lcd.setCursor(0, 0);
lcd.print("Hecho en México");
lcd.setCursor(0, 1);
lcd.print(" por Fernando M.");
for (int i = 0; i < 16; i++) {
lcd.scrollDisplayLeft(); // Desplazar la pantalla hacia la izquierda
delay(500); // Esperar 0.5 segundos
}
for (int i = 0; i < 16; i++) {
lcd.scrollDisplayRight(); // Desplazar la pantalla hacia la derecha
delay(500); // Esperar 0.5 segundos
}
lcd.clear(); // Limpiar la pantalla
// Mostrar mensaje de bienvenida final
lcd.setCursor(0, 0);
lcd.print("BIENVENIDO");
lcd.setCursor(0, 1);
lcd.print(" ");
delay(10000); // Mantener el mensaje por 10 segundos
lcd.clear(); // Limpiar la pantalla
// Detener la ejecución del programa
while (true) {
// No hacer nada
}
}
void loop() {
// El loop no se ejecuta en este caso
}