Arduino - LED - Piscar

Neste tutorial, aprendemos a controlar um LED usando o Arduino, a programar o Arduino para ligar/desligar o LED e a fazer o LED piscar

Hardware Necessário

1×Arduino Uno R3
1×Cabo USB 2.0 tipo A/B (para PC com USB-A)
1×Cabo USB 2.0 tipo C/B (para PC com USB-C)
1×LED Kit
1×LED (red)
1×LED Module
1×(Alternativa) Button and LED Kit
1×220Ω Resistor
1×Protoboard
1×Fios Jumper
1×(Recomendado) Shield com Bornes de Parafuso para Arduino Uno
1×(Recomendado) Sensors/Servo Expansion Shield for Arduino Uno
1×(Recomendado) Shield de Protoboard para Arduino Uno
1×(Recomendado) Case para Arduino Uno
1×(Recomendado) Placa Base de Prototipagem e Kit de Protoboard para Arduino Uno

Or you can buy the following kits:

1×DIYables STEM V3 Starter Kit (Arduino included)
1×DIYables Sensor Kit (18 sensors/displays)
Divulgação: Alguns dos links desta seção são links de afiliado da Amazon. Podemos receber uma comissão pelas compras feitas por meio desses links, sem custo adicional para você. Agradecemos o seu apoio.

Buy Note: Use the LED Module for easier wiring. It includes an integrated resistor.

Sobre o LED

Pinagem

O LED tem dois pinos:

  • Pino catodo(-): precisa ser conectado ao GND (0V)
  • Pino anodo(+): é usado para controlar o estado do LED
Pinagem do LED

Como Funciona

Depois de conectar o catodo(-) ao GND:

  • Se conectar o GND ao anodo(+), o LED fica DESLIGADO.
  • Se conectar o VCC ao anodo(+), o LED fica LIGADO.
Como o LED funciona

Além disso, se gerarmos um sinal PWM no anodo(+), o brilho do LED muda de acordo com o valor do PWM (descrito em detalhes neste tutorial)

※ Nota:

  • Para a maioria dos LEDs, precisamos usar um resistor. O resistor pode ser colocado entre o anodo(+) e o VCC ou entre o catodo(-) e o GND. O valor do resistor depende da especificação do LED.
  • Alguns tipos de LED têm um resistor embutido. Talvez não seja preciso usar um resistor com esses tipos de LED.

Arduino - LED

Quando um pino do Arduino é configurado como saída digital, a tensão do pino pode ser definida por programação para o valor GND ou VCC.

Ao conectar o pino do Arduino ao pino anodo(+) do LED (por meio de um resistor), podemos controlar o estado do LED por programação.

Diagrama de Ligação

Vamos ver dois exemplos:

  • O código de exemplo controla o LED embutido no Arduino/Genuino UNO.
  • A modificação do código Arduino controla o LED externo.
Diagrama de ligação do LED com Arduino

This image is created using Fritzing. Click to enlarge image

Como Programar

  • Configure um pino do Arduino no modo de saída digital usando a função pinMode(). Por exemplo, o pino 9:
pinMode(9, OUTPUT);
  • Coloque o pino em GND para DESLIGAR o LED usando a função digitalWrite():
digitalWrite(9, LOW);
  • Coloque o pino em VCC para LIGAR o LED usando a função digitalWrite():
digitalWrite(9, HIGH);

Código Arduino

Passos Rápidos

  • Conecte o Arduino ao PC por meio do cabo USB
  • Abra o Arduino IDE e selecione a placa e a porta corretas
  • Copie o código abaixo e cole-o no Arduino IDE
/* * Este código de Arduino foi desenvolvido por pt.newbiely.com * Este código de Arduino é disponibilizado ao público sem nenhuma restrição. * Para tutoriais completos e diagramas de ligação, visite: * https://pt.newbiely.com/tutorials/arduino/arduino-led-blink */ // the setup function runs once when you press reset or power the board void setup() { // initialize digital pin LED_BUILTIN as an output. pinMode(LED_BUILTIN, OUTPUT); } // the loop function runs over and over again forever void loop() { digitalWrite(LED_BUILTIN, HIGH); // turn the LED on (HIGH is the voltage level) delay(1000); // wait for a second digitalWrite(LED_BUILTIN, LOW); // turn the LED off by making the voltage LOW delay(1000); // wait for a second }
  • Clique no botão Upload do Arduino IDE para carregar o código no Arduino
Arduino IDE - Como carregar o código
  • Veja o resultado: o LED embutido alterna entre LIGADO/DESLIGADO a cada segundo.

Explicação do Código

Leia a explicação linha por linha nos comentários do código!

※ Nota:

O código acima usa delay(). Essa função impede o Arduino de fazer outras tarefas durante o tempo de espera. Se o seu projeto precisa fazer outras tarefas, evite bloquear o Arduino usando o método não bloqueante para Arduino.

Modificando o Código Arduino

Modificando o código para controlar o LED externo

Passos Rápidos

  • Conecte o LED ao Arduino conforme o diagrama de ligação acima.
  • Modifique o código:
    • Troque LED_BUILTIN por 9
    • Troque o delay de 1000 ms para 500 ms
    /* * Este código de Arduino foi desenvolvido por pt.newbiely.com * Este código de Arduino é disponibilizado ao público sem nenhuma restrição. * Para tutoriais completos e diagramas de ligação, visite: * https://pt.newbiely.com/tutorials/arduino/arduino-led-blink */ // the setup function runs once when you press reset or power the board void setup() { // initialize digital pin 9 as an output. pinMode(9, OUTPUT); } // the loop function runs over and over again forever void loop() { digitalWrite(9, HIGH); // turn the LED on (HIGH is the voltage level) delay(500); // wait for 500 milliseconds digitalWrite(9, LOW); // turn the LED off by making the voltage LOW delay(500); // wait for 500 milliseconds }
    • Clique no botão Upload do Arduino IDE para carregar o código no Arduino
    • Veja o resultado: o LED alterna entre LIGADO/DESLIGADO periodicamente. O LED pisca mais rápido.

    ※ Nota:

    Este tutorial traz um conhecimento aprofundado que ajuda você a entender o princípio de funcionamento. Para facilitar, você pode usar a biblioteca Arduino - LED.

Vídeo

Desafie-se

  • Conecte o LED a outro pino do Arduino e mude o tempo de piscar.
  • Ligue/desligue o LED com um botão. Dica: veja Arduino - Botão.

Conhecimento Adicional

Quais pinos do Arduino UNO podem ser usados como pino de saída para controlar o LED?
  • Do pino 0 ao pino 13
  • Do pino A0 ao pino A5

※ Nota:

Cada pino só pode fazer uma tarefa por vez. Se você já usou um pino para outra tarefa (por exemplo, entrada digital, entrada analógica, PWM, UART...), NÃO deve usá-lo como saída digital para controlar o LED. Por exemplo, se usamos a função Serial.println(), NÃO devemos usar os pinos 0 e 1 para nenhuma outra finalidade, porque esses pinos são usados pela Serial.

Extensibilidade

Este tutorial mostra como usar o pino de saída do Arduino para controlar um LED. Podemos aplicar este código para ligar/desligar quaisquer dispositivos, até mesmo máquinas grandes.

※ Nota:

para dispositivos/máquinas que usam uma fonte de alimentação de alta tensão ( > 5v) e/ou têm alto consumo de corrente, precisamos usar um relé entre o pino de saída e os dispositivos/máquinas - veja Arduino - Relé.

Referências de Funções

※ NOSSAS MENSAGENS

  • Fique à vontade para compartilhar o link deste tutorial. Porém, por favor, não use nosso conteúdo em outros sites. Investimos muito esforço e tempo para criar este conteúdo, por favor respeite nosso trabalho!