Arduino Nano - Fita LED NeoPixel

A fita LED RGB NeoPixel é uma linha de LEDs em que a cor e o brilho de cada um podem ser ajustados de forma independente. Este tutorial ensina como usar um Arduino Nano para controlar a fita LED RGB NeoPixel. Em detalhes, vamos aprender:

Todos os LEDs da fita podem ser controlados com apenas um pino digital do Arduino Nano.

Hardware Necessário

1×Official Arduino Nano
1×Alternatively, DIYables Nano V3.0 Development Board
1×Cabo USB A para Mini-B
1×NeoPixel RGB Fita LED
1×1000uF Capacitor
1×470Ω Resistor
1×Fonte de Alimentação 5V
1×Conector de Alimentação DC
1×Fios Jumper
1×(Recomendado) Placa de Expansão com Bornes de Parafuso para Arduino Nano
1×(Recomendado) Placa de Expansão Breakout para Arduino Nano
1×(Recomendado) Divisor de Alimentação para Arduino Nano

Or you can buy the following kits:

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.

Sobre a Fita LED RGB NeoPixel

Pinagem da Fita LED NeoPixel

A Fita LED RGB NeoPixel tem três pinos:

  • Pino GND: deve ser conectado ao GND (0V)
  • Pino VCC: deve ser conectado aos 5V de uma fonte de energia externa
  • Pino Din: é o pino que recebe o sinal de controle e deve ser conectado a um pino digital do Arduino Nano.
Pinagem do NeoPixel

※ Nota:

A ordem dos pinos pode ser diferente entre os fabricantes. É fundamental usar sempre os rótulos impressos na Fita LED.

Diagrama de Ligação

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

This image is created using Fritzing. Click to enlarge image

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

Como Programar a Fita LED RGB NeoPixel

  • Crie um objeto NeoPixel.
#define PIN_NEO_PIXEL 2 // Arduino Nano 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)
  • Especifique a cor de cada LED individual (conhecido como pixel).
NeoPixel.setPixelColor(pixel, NeoPixel.Color(255, 0, 0));
  • Ajuste o brilho de toda a fita.
NeoPixel.setBrightness(100); // a value from 0 to 255

※ Nota:

  • NeoPixel.setBrightness() é usada para ajustar o brilho de todos os pixels da fita LED. Para definir o brilho de cada pixel individual, podemos escalar os valores de cor (R,G, B) com a mesma proporção.
  • Os valores definidos por NeoPixel.setBrightness() e NeoPixel.setPixelColor() só serão aplicados quando NeoPixel.show() for chamada.

Código Arduino Nano

O código abaixo executa as seguintes sequências:

  • 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 por dois segundos
  • Repete esse processo indefinidamente
/* * Este código de Arduino Nano foi desenvolvido por pt.newbiely.com * Este código de Arduino Nano é disponibilizado ao público sem nenhuma restrição. * Para tutoriais completos e diagramas de ligação, visite: * https://pt.newbiely.com/tutorials/arduino-nano/arduino-nano-neopixel-led-strip */ #include <Adafruit_NeoPixel.h> #define PIN_NEO_PIXEL 2 // The Arduino Nano 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); 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

  • Clique no ícone Libraries na barra esquerda do Arduino IDE.
  • Pesquise “Adafruit NeoPixel” e localize a biblioteca NeoPixel da Adafruit.
  • Em seguida, pressione o botão Install para instalar a biblioteca NeoPixel.
Biblioteca NeoPixel do Arduino Nano
  • Copie o código e abra-o no Arduino IDE.
  • Clique no botão Upload no Arduino IDE para enviar o código ao Arduino Nano.
  • Veja o efeito de LED.

※ Nota:

Para qualquer efeito de LED mais elaborado, 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!