// Programa para mostrar conteo binario en LEDs // LEDs conectados en pines: 25, 26, 27, 14, 12, 13 // Pin 25 es el menos significativo (bit 0) // Definición de pines de LEDs (del menos significativo al más significativo) const int pin_leds[] = {25, 26, 27, 14, 12, 13}; const int num_leds = 6; // Variable para el conteo int contador = 0; void setup() { // Configurar pines de LEDs como salidas for (int i = 0; i < num_leds; i++) { pinMode(pin_leds[i], OUTPUT); } // Inicializar comunicación serie para debug Serial.begin(115200); Serial.println("Iniciando conteo binario en LEDs"); } void loop() { // Mostrar el número actual en binario mostrar_binario(contador); // Imprimir en consola para debug Serial.print("Contador: "); Serial.print(contador); Serial.print(" - Binario: "); Serial.println(contador, BIN); // Incrementar contador contador++; // Reiniciar cuando llegue al máximo (2^6 = 64) if (contador >= 64) { contador = 0; } // Pausa de 1 segundo delay(1000); } // Función para mostrar un número en binario en los LEDs 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); } } }