Arduino UNO R4 - Piscar vários LEDs

Arduino UNO R4 piscar vários LEDs

Este guia mostra como programar um Arduino UNO R4 para fazer vários LEDs piscarem em frequências diferentes, sem usar a função delay(). Ele oferece o código de duas maneiras:

Vamos demonstrar com três LEDs. Você pode ajustar isso facilmente para dois LEDs, quatro LEDs ou mais.

Sobre o LED

Explore nosso guia completo sobre LEDs, que aborda como conectar o hardware, como eles funcionam, como configurá-los com o Arduino UNO R4 e os passos de programação. Saiba mais aqui:

Diagrama de Ligação

Diagrama de Ligação de vários LEDs com Arduino UNO R4

This image is created using Fritzing. Click to enlarge image

Veja A melhor forma de alimentar o Arduino Uno R4 e outros componentes.

Código Arduino UNO R4 - Piscar Vários LEDs

Para piscar vários LEDs ao mesmo tempo, não devemos usar a função delay(). Essa função impede que o restante do código seja executado, o que significa que não conseguimos piscar LEDs diferentes juntos. Devemos usar a função millis() para controlar o tempo.

Para iniciantes, gerenciar os timestamps ao piscar vários LEDs pode ser difícil. Felizmente, a biblioteca ezLED torna isso mais fácil, cuidando do gerenciamento dos timestamps dentro da própria biblioteca. Isso significa que os usuários não precisam se preocupar em gerenciar os timestamps ao usar a biblioteca. Além disso, usar um grupo de LEDs pode deixar o código mais claro e mais curto.

/* * Este código de Arduino UNO R4 foi desenvolvido por pt.newbiely.com * Este código de Arduino UNO R4 é disponibilizado ao público sem nenhuma restrição. * Para tutoriais completos e diagramas de ligação, visite: * https://pt.newbiely.com/tutorials/arduino-uno-r4/arduino-uno-r4-blink-multiple-led */ #include <ezLED.h> // ezLED library by ArduinoGetStarted.com #define PIN_LED_1 7 // The Arduino UNO R4 pin connected to LED 1 #define PIN_LED_2 8 // The Arduino UNO R4 pin connected to LED 2 #define PIN_LED_3 9 // The Arduino UNO R4 pin connected to LED 3 ezLED led1(PIN_LED_1); // create ezLED object that attach to pin PIN_LED_1 ezLED led2(PIN_LED_2); // create ezLED object that attach to pin PIN_LED_2 ezLED led3(PIN_LED_3); // create ezLED object that attach to pin PIN_LED_3 void setup() { Serial.begin(9600); led1.blink(800, 200); // 800ms ON, 200ms OFF, blink immediately led2.blink(500, 500); // 500ms ON, 500ms OFF, blink immediately led3.blink(500, 500, 500); // 500ms ON, 500ms OFF, blink after 500ms } void loop() { led1.loop(); // MUST call the led1.loop() function in loop() led2.loop(); // MUST call the led2.loop() function in loop() led3.loop(); // MUST call the led3.loop() function in loop() // DO SOMETHING HERE }

Passos Rápidos

Siga estas instruções passo a passo:

  • Se esta é a primeira vez que você usa o Arduino Uno R4 WiFi/Minima, consulte o tutorial sobre como configurar o ambiente para o Arduino Uno R4 WiFi/Minima na Arduino IDE.
  • Conecte o Arduino Uno R4 aos LEDs de acordo com o diagrama fornecido.
  • Conecte a placa Arduino Uno R4 ao seu computador usando um cabo USB.
  • Abra a Arduino IDE no seu computador.
  • Selecione a placa Arduino Uno R4 apropriada (por exemplo, Arduino Uno R4 WiFi) e a porta COM.
  • Clique no ícone Libraries no lado esquerdo da Arduino IDE.
  • Digite "ezLED" na caixa de pesquisa e encontre a biblioteca de LED criada por Arduino UNO R4GetStarted.
  • Clique no botão Install para adicionar a biblioteca ezLED.
Biblioteca de LED para Arduino UNO R4
  • Copie o código fornecido e cole-o na Arduino IDE.
  • Para carregar o código em uma placa Arduino UNO R4, clique no botão Upload na Arduino IDE.
Como fazer upload do código do Arduino UNO R4 na Arduino IDE
  • Veja se o LED está ligado ou desligado.

Código Arduino UNO R4 - Piscar Vários LEDs usando array

Podemos melhorar o código acima usando um array de LEDs. O código abaixo usa o array para gerenciar os objetos LED.

/* * Este código de Arduino UNO R4 foi desenvolvido por pt.newbiely.com * Este código de Arduino UNO R4 é disponibilizado ao público sem nenhuma restrição. * Para tutoriais completos e diagramas de ligação, visite: * https://pt.newbiely.com/tutorials/arduino-uno-r4/arduino-uno-r4-blink-multiple-led */ #include <ezLED.h> // ezLED library by ArduinoGetStarted.com #define NUM_LED 3 // three LEDs #define PIN_LED_1 7 // The Arduino UNO R4 pin connected to LED 1 #define PIN_LED_2 8 // The Arduino UNO R4 pin connected to LED 2 #define PIN_LED_3 9 // The Arduino UNO R4 pin connected to LED 3 ezLED ledArray[NUM_LED] = { ezLED(PIN_LED_1), // create ezLED object that attach to pin PIN_LED_1 ezLED(PIN_LED_2), // create ezLED object that attach to pin PIN_LED_2 ezLED(PIN_LED_3) // create ezLED object that attach to pin PIN_LED_3 }; void setup() { Serial.begin(9600); ledArray[0].blink(800, 200); // 800ms ON, 200ms OFF, blink immediately ledArray[1].blink(500, 500); // 500ms ON, 500ms OFF, blink immediately ledArray[2].blink(500, 500, 500); // 500ms ON, 500ms OFF, blink after 500ms } void loop() { for (int i = 0; i < NUM_LED; i++) ledArray[i].loop(); // MUST call the led.loop() function in loop() // DO SOMETHING HERE }

Usando a biblioteca ezLED, podemos piscar vários LEDs de forma flexível, assim:

  • Fazer vários LEDs piscarem em velocidades diferentes.
  • Fazer vários LEDs começarem a piscar em momentos diferentes.
  • Fazer cada LED piscar durante um tempo específico.
  • Fazer cada LED piscar um certo número de vezes.

Veja o código de exemplo na biblioteca.

Vídeo

※ 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!