Du har säkert sett tillverkare visa projekt med dessa uppsättningar av RGB-lysdioder vid mer än ett tillfälle. Tillämpningarna av dessa remsor kan sträcka sig från en enkel dekoration som kan ändra färg beroende på någon yttre händelse, till att användas för raser av ljus och mycket mer. Det är därför vi i den här artikeln kommer att presentera all den viktigaste informationen du bör veta om neopixeln och hur det kan integreras och styr med Arduino.
Vad är Neopixel?
Neopixel är inget annat än ett registrerat varumärke som tillhör Adafruit Industries. Den allmänna termen för dessa komponenter är dock individuellt adresserbara RGB-lysdioder (t.ex.: SK6812, WS2811, WS2812,...). Med andra ord är det en logisk krets med dessa färgade lampor som kommer att fungera som ett resultat av en styrsignal, som visar olika färger, utför vissa uppstartssekvenser, etc.
Det är viktigt att du vet att var och en av RGB-lysdioderna som utgör matrisen använder 4 stift eller kontakter, så din pinout är:
- 5V: högnivåförsörjning.
- GND: låg effektnivå eller jord.
- DIN: pin för att få färginformation.
- GÖR: fäst för att skicka färginformation.
Utöver det integrerar den en elektronisk krets med ett minne som kan lagra 3 byte, en för varje färg. För mer information kan du läsa databladet eller dokumentationen för den specifika modellen du har köpt, eftersom det kan finnas variationer.
Var kan man köpa Neopixel
Si buscas köp en neopixel eller liknande element för dina gör-det-själv-projekt, du kan hitta dem i vissa specialiserade elektronikbutiker eller även på Amazon. Några rekommendationer i detta avseende är:
Integrera Neopixel med Arduino UNO
till integrera Neopixel, eller något annat märke, med ditt Arduino-kort och börja skapa kod i Arduino IDE för att kunna styra färgerna och belysningen, du behöver:
- tallrik Arduino UNO Rev 3
- LED-matris av neopixeltyp
- 470 motstånd Ω
- 1000 µF elektrolytisk kondensator ≥6.3V.
- Bakbord
- Anslutningskablar
- 5V vid 1A strömförsörjning och kontakt
Kopplingen mellan Neopixel-matrisen och Arduino UNO Det är som på föregående bild. När du väl är ansluten är nästa sak att börja med Arduino IDE-kod. I det här fallet måste du använda ett bibliotek som heter Adafruit NeoPixel som du kan ladda ner härifrån, och börja testa och modifiera exemplen som följer med den. Du kan till exempel börja med Simple, där du får något som:
#include <Adafruit_NeoPixel.h> //Incluir la biblioteca #define PIN 6 //Pin en el que has conectado el Neopixel // Número de píxeles encadenados (en este caso 21, pero puedes modificarlo según necesites) #define NUMPIXELS 21 // Inicializamos el objeto "pixeles" Adafruit_NeoPixel pixels(NUMPIXELS, PIN, NEO_GRB + NEO_KHZ800); // Argumento 1 = Número de pixeles encadenados // Argumento 2 = Número del pin de Arduino utilizado con pin de datos // Argumento 3 = Banderas de tipo de pixel: // NEO_KHZ800 800 KHz bitstream (most NeoPixel products w/WS2812 LEDs) // NEO_KHZ400 400 KHz (classic 'v1' (not v2) FLORA pixels, WS2811 drivers) // NEO_GRB Pixels are wired for GRB bitstream (most NeoPixel products) // NEO_RGB Pixels are wired for RGB bitstream (v1 FLORA pixels, not v2) // NEO_RGBW Pixels are wired for RGBW bitstream (NeoPixel RGBW products) #define DELAYVAL 500 //timpo de espera en ms void setup() { pixels.begin(); // Inicializamos el objeto "pixeles" } void loop() { pixels.clear(); // Apagamos todos los LEDs // El primer pixel de una cadena es el #0, el segundo es el #1, y así sucesivamente hasta el n-1 for(int i=0; i<NUMPIXELS; i++) { // Modificamos el LED #i, encendiendolo con un color verde moderadamente brillante pixels.setPixelColor(i, pixels.Color(0, 150, 0)); pixels.show(); // Mandamos todos los colores con la actualización hecha delay(DELAYVAL); // Pausa antes de modificar el color del siguiente LED } }