🔴 Tutorial - Programa de LEDs (1leds.ino)
📋 Descripción: Este programa hace que los LEDs muestren un conteo binario secuencial, donde cada LED representa un bit del número binario.
🔌 Conexiones del Hardware
LEDs conectados:
| Pin ESP32 |
Posición del Bit |
Valor del Bit |
Color LED |
Descripción |
| 13 |
Bit 5 (MSB) |
32 |
🔴 Rojo |
Bit más significativo |
| 12 |
Bit 4 |
16 |
🟡 Amarillo |
- |
| 14 |
Bit 3 |
8 |
🟢 Verde |
- |
| 27 |
Bit 2 |
4 |
🔴 Rojo |
- |
| 26 |
Bit 1 |
2 |
🟡 Amarillo |
- |
| 25 |
Bit 0 (LSB) |
1 |
🟢 Verde |
Bit menos significativo |
Diagrama de LEDs
13
12
14
27
26
25
MSB ← → LSB
⚙️ Funcionamiento del Programa
1. Inicialización
- Configura todos los pines de LEDs como salidas
- Inicializa la comunicación serie para debug
- Inicia el contador en 0
2. Bucle Principal
- Muestra el número actual en binario en los LEDs
- Imprime el valor decimal y binario en la consola
- Incrementa el contador
- Reinicia cuando llega a 63 (2^6 - 1)
- Espera 1 segundo antes de continuar
🔢 Ejemplos de Secuencia
| Decimal |
Binario |
LEDs Encendidos |
Descripción |
| 0 |
000000 |
Ninguno |
Estado inicial |
| 1 |
000001 |
Pin 25 |
Solo el LSB |
| 2 |
000010 |
Pin 26 |
Segundo bit |
| 3 |
000011 |
Pin 25, 26 |
Primeros dos bits |
| 63 |
111111 |
Todos |
Máximo valor |
💻 Código Clave
Función para mostrar binario:
void mostrar_binario(int numero) {
// Apagar todos los LEDs primero
for (int i = 0; i < num_leds; i++) {
digitalWrite(pin_leds[i], LOW);
}
// Encender LEDs según los bits del número
for (int i = 0; i < num_leds; i++) {
// Verificar si el bit i está activo
if (numero & (1 << i)) {
digitalWrite(pin_leds[i], HIGH);
}
}
}
🔧 Instalación y Uso
Requisitos:
- ESP32
- 6 LEDs con resistencias (220Ω recomendado)
- Cables de conexión
- Arduino IDE o PlatformIO
Pasos de instalación:
- Conecta los LEDs a los pines especificados
- Abre el archivo 1leds.ino en Arduino IDE
- Selecciona la placa ESP32 en Herramientas → Placa
- Configura el puerto serie correcto
- Sube el código al ESP32
- Abre el Monitor Serie (115200 baudios)
📊 Salida del Monitor Serie
Iniciando conteo binario en LEDs
Contador: 0 - Binario: 0
Contador: 1 - Binario: 1
Contador: 2 - Binario: 10
Contador: 3 - Binario: 11
Contador: 4 - Binario: 100
...
Contador: 63 - Binario: 111111
Contador: 0 - Binario: 0
⚠️ Solución de Problemas
Problema: Los LEDs no se encienden
Solución: Verifica las conexiones y que las resistencias estén correctamente instaladas
Problema: El programa no se sube al ESP32
Solución: Mantén presionado el botón BOOT mientras presionas RESET, luego suelta RESET y después BOOT
Problema: No se ve salida en el Monitor Serie
Solución: Verifica que la velocidad esté configurada a 115200 baudios
🎯 Objetivos de Aprendizaje
- Entender la representación binaria de números
- Aprender a usar operadores bit a bit (&, <<)
- Manejar múltiples salidas digitales
- Implementar bucles y contadores
- Usar el Monitor Serie para debug
✅ ¡Felicidades! Has completado el tutorial del programa de LEDs. Ahora puedes ver cómo los números se representan en binario usando LEDs físicos.