Reloj Arcade Retro: Temporizador Interactivo Arduino con Animaciones de Arcade
Componentes y Suministros
- Arduino Mega 2560 × 1
Herramientas y Máquinas Necesarias
- Impresora 3D (genérica) – Para la carcasa (archivos en Thingiverse)
Aplicaciones y Servicios en Línea
- Arduino IDE (versión 1.0.6 recomendada)
Sobre este Proyecto
Introducción: Reloj Arcade Retro
Construye un reloj de mesita interactivo con pantalla táctil, animaciones de personajes clásicos de arcade (Donkey Kong Mario, Space Invaders, Pac-Man) y alarma con sonido personalizable grabado por ti.
Cuatro Programas Incluidos
- Arcade Clock: Animaciones DK Mario, Space Invaders y Pac-Man.
- Pacman Clock: Juego interactivo de Pac-Man/Ms. Pac-Man con funciones de reloj.
- DK Clock: Juego interactivo de Donkey Kong con funciones de reloj.
- Tumble Ghost: Juego estilo Flappy Bird con fantasma de Pac-Man.
Paso 1: Reunir Materiales
- Arduino Mega 2560
- Shield Pantalla Táctil Arduino – Expansion board 3.2" Mega Touch LCD
- Pantalla Táctil – 3.2" TFT LCD + touchscreen para Arduino Mega 2560
- Módulo RTC – DS3231 (reloj en tiempo real con batería)
- Módulo Grabadora de Voz – ISD1820 (para alarma personalizada)
- Filamento PLA para impresora 3D
- Resina epoxi de dos componentes (para pegar carcasa)
- Cable USB 2m + cargador USB (alimentación)
- Pistola de silicona caliente
- Bridas × 3
Componentes Opcionales para Atenuación Automática de Luz (recomendado para mesita):
- Resistencia 270 kΩ
- Diodo Zener 3.3V
- Resistencia 47 Ω / 0.5W
- LDR (Fotorresistencia)
Paso 2: Imprimir la Carcasa 3D
Archivos e instrucciones en Thingiverse. Diseñado para Creality Ender 3.
Paso 3: Montar el Circuito
1. Reloj en Tiempo Real (RTC DS3231)
Montar en la parte trasera del Arduino Mega con espuma y silicona para aislar. Conexiones: SDA→20, SCL→21, VCC→5V, GND→GND. Dos patas pueden soldarse directo al Arduino.
2. Módulo de Grabación de Sonido (ISD1820)
Igual: espuma + silicona en la parte trasera. Pin de disparo (PLAYE) → D8 del Arduino. Alimentación: VCC→5V, GND→GND.
3. Atenuador Automático de Luz Trasera (Opcional)
La pantalla TFT tiene la luz trasera cableada a 3.3V fijo. Para control PWM:
- LDR: Taladra dos agujeros de 3mm en la carcasa trasera, pasa patas del LDR, fija con silicona. Solda cables y conecta a A7 con resistencia 270kΩ a GND (divisor de tensión).
- Modificación Pantalla TFT: Identifica pin 19 (LED_A). Retira plástico base, dobla el pin hacia afuera. Verifica que el shield encaje.
- Circuito Control: Solda resistencia 47Ω al pin LED_A doblado → cable a D9 (PWM) del Mega. Solda diodo Zener 3.3V (cátodo al pin LED_A, ánodo a GND) para proteger de sobretensión.
4. Pantalla TFT y Shield
Conecta pantalla al shield, y shield sobre el Arduino Mega. El RTC mantiene la hora con su batería. La alarma se guarda en EEPROM del Arduino.
Paso 4: Cargar el Código
Librerías Requeridas (incluidas en zips del tutorial)
UTFT.hyURTouch.h(Rinky-Dink Electronics)Time.hDS1307RTC.hWire.hyEEPROM.h(incluidas en IDE 1.0.6)
Variaciones de Pantalla TFT – Solución de Problemas
- Sainsmart: Edita
initlcd.h: cambiaLCD_Write_COM_DATA(0x01, 0x2B3F)a0x3B3F. - Chipset Controlador (SSD1289 vs ILI9341): Si pantalla en blanco, cambia en el código:
UTFT myGLCD(SSD1289, ...)→UTFT myGLCD(ILI9341_16, ...). - Eje Y Invertido: Busca
yT = myTouch.getY();(dos ocurrencias) y cámbialo ayT = 240 - myTouch.getY();.
Archivos Gráficos
Los bitmaps (.c/.h) deben estar en la misma carpeta que el sketch .ino al compilar.
Configuración Inicial
- Sube el código.
- Presiona centro de pantalla → menú setup.
- Ajusta hora y alarma (formato 24h).
- Pulsa SAVE.
Probar Alarma
Graba sonido en ISD1820: mantén REC y habla/reproduce audio al micrófono. Prueba con botón PLAY-E. En menú setup, pon hora y alarma a pocos minutos, activa alarma (SET) y SAVE. Al sonar, toca centro de pantalla para apagar.
Calibración Táctil
Si botones no coinciden, usa sketch de calibración de librería URTouch.
Paso 5: Ensamblaje Final
- Alimentación Externa: Taladra agujero trasero, pasa cable USB, suelda VCC/GND/D+/D- al conector USB del Mega (protección sobrecorriente + permite reprogramar sin abrir). Pega aislamiento con silicona. Pon brida 6-8 cm del conector como tensor.
- Montar Electrónica: Coloca circuito en panel frontal guiado por 4 agujeros. Enciende para centrar imagen. Pega con silicona.
- Ensamblaje Final: Une panel frontal y trasero, tira del cable USB para tensar. Conecta a cargador USB. ¡Listo!
Código Principal (Arcade Clock V1)
El código completo es extenso (~1500 líneas). Incluye: gestión RTC DS3231, animaciones de 6 sprites moviéndose en pantalla (fantasma, Mario, mono, Pac-Man, alien, cañón), reloj digital 7-segmentos gigante, alarma con ISD1820, menú setup táctil, atenuación automática por LDR, y 4 modos de juego. Ver sección "Code" para descarga de los 4 sketches + librerías.
Proceso de manufactura
- Reloj de cuco: historia, artesanía y evolución moderna
- Reloj POV con Arduino: Construye una pantalla LED de persistencia de visión
- Reloj de Palabras DIY con Arduino: Construye una Pantalla Elegante en Tiempo Real
- TeleBall: Consola Retro Portátil DIY – Construye tu Propio Breakout y Tenis con Arduino
- Construye un Reloj Maestro LED Personalizado con Alarma – Visible desde 12 Metros
- Consola Retro Ingegno – Juegos de 8 Bits Redefinidos
- Reloj de Palabras en Italiano con Arduino Nano, NeoPixel, LCD y RTC
- Construye un Reloj Berlín con Arduino UNO – Reloj de Matriz LED DIY
- Reloj Espejo Infinito: Elegancia infinita y hora precisa
- Construye un Secuenciador LED con Temporizador 555 y Contador 4017 – División de Frecuencia y Antirrebote
- Generador de reloj en Verilog: Guía de diseño e implementación