Voltar

Controle Serial de LED com Arduino: Envie Comandos para Piscar

Introdução

Bem-vindo ao projeto Controle Serial de LED! Neste tutorial, você aprenderá a controlar um LED conectado a um Arduino Uno enviando comandos simples pelo Monitor Serial. Este é um projeto clássico para iniciantes que combina dois conceitos fundamentais: comunicação USART (Receptor-Transmissor Universal Síncrono/Assíncrono) e saída GPIO (Entrada/Saída de Propósito Geral). Ao final, você será capaz de ligar e desligar um LED digitando “1” ou “0” no Monitor Serial, e até consultar o status do LED com ”?”.

Usaremos o Velxio, um simulador de circuitos e microcontroladores no navegador com suporte analógico preciso baseado em SPICE. Nenhum hardware necessário — apenas seu navegador! Vamos mergulhar.

Passo a Passo do Circuito

Diagrama do circuito do serial-led-control na tela do simulador Velxio

O circuito é incrivelmente simples. Você só precisa de dois componentes:

Detalhes da Fiação

  1. Anodo do LED (perna longa, pino A) conecta-se ao pino 13 do Arduino através de um fio verde (#00cc00).
  2. Catodo do LED (perna curta, pino C) conecta-se ao GND do Arduino através de um fio preto (#000000).

É isso! Nenhum resistor é necessário porque o pino 13 do Arduino Uno já possui um resistor limitador de corrente integrado na placa. Em um circuito real, você adicionaria um resistor de 220Ω em série com o LED, mas para simulação, isso funciona perfeitamente.

Como Construir no Velxio

  1. Abra o exemplo Controle Serial de LED no Velxio.
  2. Você verá o Arduino Uno e o LED já posicionados na tela. Se quiser construir do zero, use o seletor de componentes (mostrado abaixo) para adicionar um Arduino Uno e um LED.

Modal do seletor de componentes do Velxio navegando por peças por categoria

  1. Clique no Arduino Uno para selecioná-lo, depois clique no pino 13. Arraste um fio até o anodo do LED (pino A).
  2. Da mesma forma, conecte o catodo do LED (pino C) a qualquer pino GND do Arduino.
  3. Use a barra de ferramentas da tela para ampliar, reduzir e navegar para uma melhor visualização.

Barra de ferramentas da tela do Velxio acima da viewport de simulação

Passo a Passo do Código

Código-fonte do serial-led-control no editor Monaco do Velxio

Agora vamos examinar o código que faz isso funcionar. Abra o editor de código no Velxio (você verá o editor Monaco com realce de sintaxe).

// 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;
    }
  }
}

Como Funciona

Executando a Simulação

  1. Clique no botão Executar na barra de ferramentas do editor.

Barra de ferramentas do editor do Velxio com controles de compilar e executar

  1. Abra o Monitor Serial (geralmente um botão na barra de ferramentas ou um painel separado).
  2. Digite 1 e pressione Enter – o LED verde deve acender.
  3. Digite 0 – o LED apaga.
  4. Digite ? – você verá o status e o tempo de atividade.

Conceitos-Chave para Estudantes

Este projeto ensina vários conceitos importantes:

Armadilhas Comuns e Dicas de Depuração

Extensões Sugeridas

Depois de dominar este projeto, tente estas melhorias:

  1. Adicione um segundo LED no pino 12 e controle-o com comandos como ‘2’ e ‘3’.
  2. Use PWM para controlar o brilho: envie um número de 0 a 255 para definir o brilho do LED via analogWrite().
  3. Adicione um botão como entrada: leia um pino digital e alterne o LED quando pressionado.
  4. Implemente um analisador de comandos que aceite strings como “ON” ou “OFF” em vez de caracteres únicos.
  5. Registre dados no Monitor Serial: imprima leituras de sensores ou timestamps.

Conclusão

Você acabou de construir um controlador Serial de LED simples, porém poderoso! Este projeto é a base para inúmeros projetos de IoT e automação onde você controla hardware através de comandos de texto. O Velxio facilita a experimentação sem nenhum componente físico.

Pronto para testar você mesmo? Abra o exemplo Controle Serial de LED no Velxio, execute a simulação e comece a enviar comandos. Boas experiências!


Compartilhar em:
David Montero

Escrito por

David Montero

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

GitHub velxio.dev

Artigos relacionados


Artigo anterior
Scanner I2C com Arduino: Encontre Todos os Dispositivos no Barramento
Próximo artigo
Eco Serial com Arduino: Aprenda Comunicação USART