Volver

Control de LED por Serie con Arduino: Envía Comandos para Parpadear

Introducción

¡Bienvenido al proyecto Control de LED por Serie! En este tutorial, aprenderás a controlar un LED conectado a un Arduino Uno enviando comandos simples a través del Monitor Serie. Este es un proyecto clásico para principiantes que combina dos conceptos fundamentales: la comunicación USART (Receptor-Transmisor Síncrono/Asíncrono Universal) y la salida GPIO (Entrada/Salida de Propósito General). Al finalizar, podrás encender y apagar un LED escribiendo “1” o “0” en el Monitor Serie, e incluso consultar el estado del LED con ”?”.

Usaremos Velxio, un simulador de circuitos y microcontroladores en el navegador con soporte analógico de precisión SPICE. ¡No necesitas hardware, solo tu navegador! Vamos a ello.

Recorrido del Circuito

Diagrama del circuito de control de LED por serie en el lienzo del simulador Velxio

El circuito es increíblemente simple. Solo necesitas dos componentes:

Detalles del Cableado

  1. Ánodo del LED (pata larga, pin A) se conecta al pin 13 del Arduino mediante un cable verde (#00cc00).
  2. Cátodo del LED (pata corta, pin C) se conecta a GND del Arduino mediante un cable negro (#000000).

¡Eso es todo! No se necesita resistencia porque el pin 13 del Arduino Uno ya tiene una resistencia limitadora de corriente integrada en la placa. En un circuito real, añadirías una resistencia de 220Ω en serie con el LED, pero para la simulación, esto funciona perfectamente.

Cómo Construirlo en Velxio

  1. Abre el ejemplo de Control de LED por Serie en Velxio.
  2. Verás el Arduino Uno y el LED ya colocados en el lienzo. Si quieres construirlo desde cero, usa el selector de componentes (que se muestra a continuación) para añadir un Arduino Uno y un LED.

Modal del selector de componentes de Velxio navegando por partes por categoría

  1. Haz clic en el Arduino Uno para seleccionarlo, luego haz clic en el pin 13. Arrastra un cable hasta el ánodo del LED (pin A).
  2. De manera similar, conecta el cátodo del LED (pin C) a cualquier pin GND del Arduino.
  3. Usa la barra de herramientas del lienzo para hacer zoom y desplazarte para una mejor vista.

Barra de herramientas del lienzo de Velxio sobre el área de visualización de la simulación

Recorrido del Código

Código fuente para el control de LED por serie en el editor Monaco de Velxio

Ahora examinemos el código que hace que esto funcione. Abre el editor de código en Velxio (verás el editor Monaco con resaltado de sintaxis).

// Serial LED Control
// Send "1" to turn LED ON, "0" to turn LED OFF.
// Demonstrates Serial input controlling hardware.

const int LED_PIN = 13;

void setup() {
  Serial.begin(9600);
  pinMode(LED_PIN, OUTPUT);
  digitalWrite(LED_PIN, LOW);

  Serial.println("=========================");
  Serial.println(" Serial LED Controller");
  Serial.println("=========================");
  Serial.println("Send '1' = LED ON");
  Serial.println("Send '0' = LED OFF");
  Serial.println("Send '?' = Status");
  Serial.println();
}

bool ledState = false;

void loop() {
  if (Serial.available() > 0) {
    char cmd = Serial.read();

    switch (cmd) {
      case '1':
        digitalWrite(LED_PIN, HIGH);
        ledState = true;
        Serial.println("[OK] LED is ON");
        break;
      case '0':
        digitalWrite(LED_PIN, LOW);
        ledState = false;
        Serial.println("[OK] LED is OFF");
        break;
      case '?':
        Serial.print("[STATUS] LED is ");
        Serial.println(ledState ? "ON" : "OFF");
        Serial.print("[STATUS] Uptime: ");
        Serial.print(millis() / 1000);
        Serial.println("s");
        break;
      default:
        if (cmd >= 32) { // ignore control chars
          Serial.print("[ERR] Unknown command: '");
          Serial.print(cmd);
          Serial.println("'  (use 1, 0, or ?)");
        }
        break;
    }
  }
}

Cómo Funciona

Ejecutando la Simulación

  1. Haz clic en el botón Ejecutar en la barra de herramientas del editor.

Barra de herramientas del editor de Velxio con controles de compilación y ejecución

  1. Abre el Monitor Serie (generalmente un botón en la barra de herramientas o un panel separado).
  2. Escribe 1 y presiona Enter – el LED verde debería encenderse.
  3. Escribe 0 – el LED se apaga.
  4. Escribe ? – verás el estado y el tiempo de actividad.

Conceptos Clave para Estudiantes

Este proyecto enseña varios conceptos importantes:

Problemas Comunes y Consejos de Depuración

Extensiones Sugeridas

Una vez que domines este proyecto, prueba estas mejoras:

  1. Añade un segundo LED en el pin 12 y contrólalo con comandos como ‘2’ y ‘3’.
  2. Usa PWM para controlar el brillo: envía un número del 0 al 255 para establecer el brillo del LED mediante analogWrite().
  3. Añade un botón como entrada: lee un pin digital y alterna el LED cuando se presione.
  4. Implementa un analizador de comandos que acepte cadenas como “ON” o “OFF” en lugar de caracteres individuales.
  5. Registra datos en el Monitor Serie: imprime lecturas de sensores o marcas de tiempo.

Conclusión

¡Acabas de construir un controlador de LED por Serie simple pero potente! Este proyecto es la base para innumerables proyectos de IoT y automatización donde controlas hardware mediante comandos de texto. Velxio facilita la experimentación sin necesidad de componentes físicos.

¿Listo para probarlo tú mismo? Abre el ejemplo de Control de LED por Serie en Velxio, ejecuta la simulación y comienza a enviar comandos. ¡Feliz experimentación!


Compartir en:
David Montero

Escrito por

David Montero

Creator of Velxio, the open-source circuit and Arduino simulator.

GitHub velxio.dev

Artículos relacionados


Artículo anterior
Escáner I2C con Arduino: Encuentra todos los dispositivos en el bus
Artículo siguiente
Eco Serie con Arduino: Aprende Comunicación USART