Arduino - Fita LED NeoPixel

A fita LED RGB NeoPixel é uma fita de LEDs em que a cor e o brilho de cada LED podem ser controlados individualmente. Neste tutorial, vamos aprender a usar o Arduino para controlar a fita LED RGB NeoPixel. Para controlar todos os LEDs da fita NeoPixel, precisamos usar apenas um único pino do Arduino.

Sobre a Fita LED RGB NeoPixel

Pinagem

A Fita LED RGB NeoPixel tem três pinos:

  • Pino GND: precisa ser conectado ao GND (0V)
  • Pino VCC: precisa ser conectado ao 5V de uma fonte de alimentação externa
  • Pino Din: é o pino que recebe o sinal de controle. Ele deve ser conectado a um pino do Arduino.
Pinagem do NeoPixel

※ Nota:

A ordem dos pinos pode variar entre fabricantes. SEMPRE use as indicações impressas na Fita LED.

Diagrama de Ligação

Diagrama de Ligação do Arduino com fita LED RGB NeoPixel

This image is created using Fritzing. Click to enlarge image

Como Programar a Fita LED RGB NeoPixel

  • Declare um objeto NeoPixel
#define PIN_NEO_PIXEL 4 // Arduino pin that connects to NeoPixel #define NUM_PIXELS 30 // The number of LEDs (pixels) on NeoPixel Adafruit_NeoPixel NeoPixel(NUM_PIXELS, PIN_NEO_PIXEL, NEO_GRB + NEO_KHZ800);
  • Inicialize o NeoPixel
NeoPixel.begin(); // INITIALIZE NeoPixel strip object (REQUIRED)
  • Defina a cor de cada LED individualmente (chamado de pixel).
NeoPixel.setPixelColor(pixel, NeoPixel.Color(255, 0, 0));
  • Defina o brilho de toda a fita.
NeoPixel.setBrightness(100); // a value from 0 to 255

※ Nota:

  • NeoPixel.setBrightness() é aplicado a todos os pixels da fita LED. Para definir o brilho de cada pixel individualmente, podemos ajustar a escala do valor da cor.
  • Os valores definidos por NeoPixel.setBrightness() e NeoPixel.setPixelColor() só têm efeito quando NeoPixel.show() é chamado.

Código Arduino

O código abaixo faz o seguinte:

  • Acende os pixels em verde, um por um, com um atraso entre cada pixel
  • Apaga todos os pixels por dois segundos
  • Acende todos os pixels em vermelho ao mesmo tempo por dois segundos
  • Repete o processo acima infinitamente
/* * 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-neopixel-led-strip */ #include <Adafruit_NeoPixel.h> #ifdef __AVR__ #include <avr/power.h> // Required for 16 MHz Adafruit Trinket #endif #define PIN_NEO_PIXEL 4 // Arduino pin that connects to NeoPixel #define NUM_PIXELS 30 // The number of LEDs (pixels) on NeoPixel #define DELAY_INTERVAL 250 // 250ms pause between each pixel Adafruit_NeoPixel NeoPixel(NUM_PIXELS, PIN_NEO_PIXEL, NEO_GRB + NEO_KHZ800); void setup() { NeoPixel.begin(); // INITIALIZE NeoPixel strip object (REQUIRED) } void loop() { NeoPixel.clear(); // set all pixel colors to 'off'. It only takes effect if pixels.show() is called // turn pixels to green one by one with delay between each pixel for (int pixel = 0; pixel < NUM_PIXELS; pixel++) { // for each pixel NeoPixel.setPixelColor(pixel, NeoPixel.Color(0, 255, 0)); // it only takes effect if pixels.show() is called NeoPixel.show(); // send the updated pixel colors to the NeoPixel hardware. delay(DELAY_INTERVAL); // pause between each pixel } // turn off all pixels for two seconds NeoPixel.clear(); NeoPixel.show(); // send the updated pixel colors to the NeoPixel hardware. delay(2000); // off time // turn on all pixels to red at the same time for two seconds for (int pixel = 0; pixel < NUM_PIXELS; pixel++) { // for each pixel NeoPixel.setPixelColor(pixel, NeoPixel.Color(255, 0, 0)); // it only takes effect if pixels.show() is called } NeoPixel.show(); // send the updated pixel colors to the NeoPixel hardware. delay(2000); // on time // turn off all pixels for one seconds NeoPixel.clear(); NeoPixel.show(); // send the updated pixel colors to the NeoPixel hardware. delay(2000); // off time }

Passos Rápidos

  • Vá até o ícone Libraries na barra esquerda do Arduino IDE.
  • Pesquise “Adafruit NeoPixel” e encontre a biblioteca NeoPixel da Adafruit
  • Clique no botão Install para instalar a biblioteca NeoPixel.
Biblioteca NeoPixel no Arduino
  • Copie o código acima e abra-o no Arduino IDE
  • Clique no botão Upload no Arduino IDE para carregar o código no Arduino
  • Veja o efeito dos LEDs

※ Nota:

Para qualquer efeito de LED complicado, oferecemos o serviço de programação pago

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!