Lição 98-6: Jogo de LED gangorra com Arduino
O projeto de LED gangorra é um exercício clássico para iniciantes que ensina um dos conceitos mais importantes da programação Arduino: fazer duas saídas alternarem em um ritmo temporizado. Usando apenas dois LEDs, dois resistores e alguns fios jumper, você construirá um circuito onde um LED verde e um LED vermelho se alternam ao acender, imitando o movimento de subida e descida de uma gangorra de parquinho. É uma montagem simples, mas introduz os blocos de construção fundamentais — definições de pinos, constantes de temporização e chamadas sequenciais de digitalWrite() — que aparecem em quase todo sketch Arduino que você escreverá.
Como o padrão gangorra é realmente apenas "ligue uma coisa, desligue-a, ligue a outra coisa, desligue-a, repita", a mesma estrutura se expande para dezenas de usos práticos. Aqui estão algumas ideias para despertar sua imaginação:
- Luzes indicadoras alternadas — um par "seguro / alerta" em um painel de controle que alterna entre um e outro.
- Simulação de passagem de nível — duas lâmpadas piscando alternadamente conforme um trem se aproxima.
- Placa de direção de duas faixas — um display de seta "vá por aqui / vá por ali" para uma entrada de garagem ou estacionamento.
- Decoração natalina — LEDs vermelhos e verdes trocando de lugar para um efeito piscante festivo.
- Base de aprendizado — as habilidades de temporização e sequenciamento aqui são as mesmas que você usará depois para semáforos, luzes de pedestres e animações com múltiplos LEDs.
Como Funciona o Efeito Gangorra
Um LED é um diodo que emite luz, e seu símbolo é um triângulo apontando para uma linha. A linha reta é o cátodo (negativo), e a parte de trás do triângulo é o ânodo (positivo). Em um LED físico, a perna mais longa é o ânodo e a perna mais curta, de lado reto, é o cátodo. A corrente flui do ânodo para o cátodo, então o ânodo se conecta ao pino do seu Arduino e o cátodo se conecta através de um resistor ao terra (no vídeo em 02:29).
O resistor importa. Um LED pequeno típico quer aproximadamente 2 V através dele e cerca de 10 mA de corrente. Se seu Arduino fornece 5 V, os 3 V restantes devem ser dissipados pelo resistor. Usando a lei de Ohm, R = V / I = 3 V / 0,01 A = 300 Ω. Qualquer valor de cerca de 300 Ω até 1000 Ω funcionará — valores mais altos simplesmente deixam o LED mais fraco (no vídeo em 03:49).
Para a gangorra, os dois LEDs são ligados de forma idêntica: cada ânodo vai para seu próprio pino do Arduino, e cada cátodo passa por seu próprio resistor até um trilho de terra compartilhado. A única diferença entre os dois é a qual pino eles estão conectados.
Hardware e Componentes
- 1 × placa Arduino (Uno, Nano, Mega ou similar)
- 2 × LEDs — um vermelho, um verde (quaisquer duas cores funcionam)
- 2 × resistores, 300 Ω a 1000 Ω (220 Ω ou 330 Ω são escolhas comuns)
- 1 × protoboard
- Fios jumper (fios DuPont)
- Cabo USB para programação e alimentação
É isso — sem botões, sem potenciômetros, sem sensores. Esta é deliberadamente a lista de peças mais enxuta possível para que você possa focar inteiramente na lógica do código.
Guia de Ligação
A ligação é simétrica e fácil de seguir. Insira ambos os LEDs na protoboard. Conecte o ânodo (perna mais longa) do LED verde ao pino 2 do Arduino e o ânodo do LED vermelho ao pino 3 do Arduino. Cada cátodo (perna mais curta) se conecta a uma extremidade de seu próprio resistor, e a outra extremidade de ambos os resistores se junta a um trilho comum que vai para o pino GND do Arduino (no vídeo em 27:45).
Como ambos os LEDs compartilham o mesmo trilho de terra, apenas um fio de terra é necessário da protoboard de volta ao Arduino. Os dois fios de sinal — um para o pino 2, um para o pino 3 — são as únicas conexões que mudam entre os dois LEDs.
Explicação do Código
O sketch é intencionalmente curto para que cada linha seja significativa. Aqui estão as partes que você realmente vai querer ajustar:
Definições de Pinos
const int greenLEDPin = 2;//define a pin for green LED
const int redLEDPin = 3;//define a pin for red LED
Essas duas constantes dizem ao Arduino a quais pinos os LEDs estão conectados. Se você ligou seus LEDs a pinos diferentes — digamos pino 8 e pino 9 — este é o único lugar que você precisa alterar. A palavra-chave const significa que o valor é fixo durante a vida útil do programa e não pode ser acidentalmente sobrescrito depois.
Constante de Temporização
const int ON_TIME = 500;Este valor único controla quanto tempo cada LED permanece aceso, em milissegundos. O padrão de 500 significa que cada LED fica aceso por meio segundo, então um ciclo completo de verde e depois vermelho leva um segundo. Reduza para 200 para um piscar rápido, ou aumente para 1000 para um ritmo lento e deliberado de um segundo por LED (no vídeo em 30:17). Como ambos os LEDs compartilham essa constante, eles sempre permanecem sincronizados — a gangorra permanece equilibrada.
Configuração
Dentro de setup(), os dois pinos são declarados como saídas com pinMode(), e o monitor serial é iniciado a 9600 bauds para que você possa ver as mensagens de estado dos LEDs passando. Isso é executado uma vez, quando a placa é ligada.
O Loop
A função loop() é onde a gangorra acontece. Ela executa quatro ações em sequência: liga o LED verde, espera ON_TIME milissegundos, desliga-o, e então faz o mesmo para o LED vermelho. Quando o loop chega ao fim, ele recomeça do topo automaticamente — esse é todo o comportamento de "gangorra". Não há variável de estado nem condição a verificar, porque o padrão é puramente sequencial.
Projeto ao Vivo e Demonstração
Depois que o código for carregado, você verá o LED verde acender por meio segundo, depois o LED vermelho, depois verde novamente, infinitamente. Abrir o monitor serial (Ferramentas → Monitor Serial, ou Ctrl+Shift+M) mostra "Green LED ON" e "Red LED ON" impressos enquanto o padrão é executado, o que é uma maneira prática de confirmar que a temporização corresponde ao que você definiu.
Tente alterar ON_TIME para 200 e recarregar — os LEDs alternarão visivelmente mais rápido. Defina como 1000 e a gangorra se torna uma alternância lenta e deliberada. Você também pode desconectar o Arduino do USB e alimentá-lo com uma bateria ou um adaptador de 5 V; o sketch funciona de forma idêntica porque já está armazenado na memória da placa.
Projetos relacionados deste vídeo
- Lição 98-1: Como Ligar e Desligar um LED com Arduino
- Lição 98-2: Como Ligar e Desligar um LED Usando um Botão de Pressão com Arduino
- Lição 98-3: Como Ligar/Desligar um LED Toggle Usando um Botão de Pressão com Arduino
- Lição 98-4: Fazer um LED Desvanecer Usando Arduino: Controle de Brilho
- Lição 98-5: Desvanecer a Luz Quando um Botão É Pressionado Usando Arduino
- Lição 98-7: Luz Caminhante Usando Arduino e 5 LEDs
- Lição 98-8: Luz Caminhante com Botão de Pressão e LEDs com Arduino
- Lição 98-9: Medidor de Nível de Tensão com LEDs Usando Arduino ou luz caminhante com potenciômetro
- Lição 98-10: Semáforo com Arduino
Capítulos
- [00:00] Visão geral dos 10 projetos de LED com Arduino
- [01:22] Introdução ao curso passo a passo de Arduino
- [02:29] Entendendo os LEDs: símbolo, ânodo e cátodo
- [03:49] Calculando o resistor em série do LED com a lei de Ohm
- [27:32] Apresentando o projeto de LED gangorra
- [27:45] Diagrama de ligação do projeto gangorra
- [28:28] Explicando o código da gangorra
- [30:06] Demonstrando a gangorra com diferentes temporizações
- [30:47] Visão geral do projeto de luz caminhante
- [36:41] Luz caminhante controlada por botão de pressão
- [42:25] Medidor de barra de tensão com LEDs e potenciômetro
- [49:25] Projeto de semáforo com Arduino
This code has not been parsed yet. Please return to the admin panel to parse it.
Coisas que você pode precisar
-
AmazonasSunFounder Arduino Learning Kit on AliExpresss.click.aliexpress.com
-
Amazonas
-
Amazonas
-
Amazonas
Recursos e referências
-
DocumentaçãoDocumentação para o Kit de Aprendizado 3 em 1 IoT/Carro Inteligente/SunFounderdocs.sunfounder.com
-
Externo
-
Externo
-
Externo
Arquivos📁
Bibliotecas do Arduino (zip)
-
Código fonte do kit de aprendizado Smart Car 3 em 1 da SunFounder
3in1-kit-main-v2.zip12.80 MB
Manual do Usuário
-
Manual de montagem do SunFounder 3-em-1 Arduino Smart CarEste documento mostra a montagem passo a passo do SunFounder 3-em-1 Arduino Smart Car
SunFounder_car_assembly_manual.pdf1.20 MB