PROYECTO ESP32 - MAQUETA DE ENTRENAMIENTO ========================================== DESCRIPCIÓN GENERAL: ------------------- Proyecto educativo con ESP32 que incluye LEDs, pulsadores y pantalla OLED para aprender programación embebida y lógica digital. COMPONENTES HARDWARE: -------------------- - ESP32 (25mm x 50mm) - Microcontrolador principal - 6 LEDs conectados a Resistencias de 220 ohmios. - 4 pulsadores - Pantalla OLED 0.96" (128x64 píxeles) - Protoboard MB102 para conexiones - Resistencias pull-down 10kΩ para pulsadores CONFIGURACIÓN DE PINES: ---------------------- LEDs (Salidas): - Pin 25: LED verde (LSB - bit 0) - Pin 26: LED amarillo (bit 1) - Pin 27: LED rojo (bit 2) - Pin 14: LED verde (bit 3) - Pin 12: LED amarillo (bit 4) - Pin 13: LED rojo (MSB - bit 5) Pulsadores (Entradas): - Pin 19: Pulsador 1 (LSB - bit 0) - Pin 18: Pulsador 2 (bit 1) - Pin 17: Pulsador 3 (bit 2) - Pin 16: Pulsador 4 (MSB - bit 3) Pantalla OLED (I2C): - SDA: Pin 21 - SCL: Pin 22 - Dirección I2C: 0x3C Conectores ESP32: - USB Type-C: Lado izquierdo - Antena WiFi: Lado derecho ARCHIVOS DEL PROYECTO: --------------------- 1. 1leds/1leds.ino - Conteo binario automático de 0 a 63 - 6 LEDs muestran el patrón binario - Delay de 1 segundo entre cambios - Reinicio automático al llegar a 63 2. 2pulsadores/2pulsadores.ino - Lectura de 4 pulsadores con debounce - Control de LEDs según condiciones: * Par: LED pin 25 * Impar: LED pin 26 * Primo: LED pin 27 - Salida por consola serie - Resistencia al ruido eléctrico 3. 3oled/3oled.ino - Combina funcionalidad de pulsadores - Pantalla OLED muestra: * Número binario * Número decimal * PAR o IMPAR * PRIMO o NO PRIMO - Control de LEDs según condiciones - Salida dual: OLED + consola 4. esquema_esp32.svg - Diagrama visual de la maqueta - Disposición de componentes - Conexiones principales - Información de pines FUNCIONALIDADES: --------------- - Conteo binario visual con LEDs - Entrada por pulsadores (0-15 decimal) - Detección de propiedades numéricas - Visualización en pantalla OLED - Comunicación serie para debug - Debounce para lecturas estables BIBLIOTECAS REQUERIDAS: ---------------------- - Wire.h (comunicación I2C) - Adafruit_GFX.h (gráficos) - Adafruit_SSD1306.h (controlador OLED) CONFIGURACIÓN ESPECIAL: ---------------------- - Pines 19, 18, 17, 16: GPIO normales (sin funciones especiales) - Evitados pines de strapping (5, 2, 15) para mayor estabilidad - Debounce de 100ms para lecturas estables - Verificación múltiple de cambios de estado - Resistencia al ruido eléctrico DISPOSICIÓN FÍSICA: ------------------ - ESP32: Centro de la protoboard - LEDs: Arriba del ESP32 - Pulsadores: Abajo del ESP32 - OLED: Derecha de los pulsadores - USB: Lado izquierdo del ESP32 - Antena: Lado derecho del ESP32 EJEMPLOS DE USO: --------------- - Pulsadores soltados: 0000 (0 decimal) - PAR, NO PRIMO - Solo pin 19: 0001 (1 decimal) - IMPAR, NO PRIMO - Pines 19 y 18: 0011 (3 decimal) - IMPAR, PRIMO - Todos presionados: 1111 (15 decimal) - IMPAR, NO PRIMO OBJETIVOS EDUCATIVOS: -------------------- - Aprendizaje de programación embebida - Comprensión de lógica digital - Manejo de entradas y salidas - Comunicación I2C - Interfaz de usuario con OLED - Debugging con consola serie NOTAS TÉCNICAS: -------------- - Voltaje de trabajo: 3.3V - Corriente máxima por pin: 40mA - Frecuencia I2C: 100kHz (estándar) - Resolución OLED: 128x64 píxeles - Tiempo de debounce: 100ms - Baudrate serie: 115200 VERSIÓN: 1.0 FECHA: 2024 AUTOR: Proyecto educativo ESP32