In questo post vedremo come collegare ed utilizzare un anello di led indirizzabili WS2812 con Arduino.
Per prima cosa, se non l'avete già, dovrete procurarvi questi led.
Io me li sono procurati da HiletGo su Amazon.
Per chi non conoscesse questi led, non sono dei led qualsiasi, ma sono led indirizzabili.
Questo significa che pur essendo collegati "in serie" posso controllare ognuno di loro indipendentemente dagli altri,
potendo quindi dando ad ognuno un colore diverso.
Se volete maggiori informazioni, vi rimando ad un altro post dove li avevo già utilizzati (in formato strip).
Ecco ad esempio cosa potete fare con questi led, in questo banalissimo progetto faccio "correre" un led di colore rosso sui led illuminati di blu.
Il primo passo per cominciare è scaricare ed installare la libreria Neopixel.
Poi realizzate il collegamento che vedete qui sotto,
come vedete sono sufficienti 3 fili, in quanto il pin "DO" del ring è l'uscita della serie, e può essere utilizzato per collegare altri led.
Dopo aver collegato l'anello di led, caricate questo codice nel vostro Arduino:
- #include <Adafruit_NeoPixel.h>
- #ifdef __AVR__
- #include <avr/power.h>
- #endif
- #define PinNeopixel 6
- #define NeopixelLedNum 12
- #define DelayVal 100
- Adafruit_NeoPixel pixels = Adafruit_NeoPixel(NeopixelLedNum, PinNeopixel, NEO_GRB + NEO_KHZ800);
- void setup() {
- pixels.begin();
- }
- void loop() {
- //il primo neopixel è lo 0, il secondo l'1 e così via
- for (int i = 0; i < NeopixelLedNum; i++) {
- int PrevLed = i - 1;
- if (PrevLed == -1) PrevLed = 11;
- // la funzione pixels.Color imposta il colore RGB del led, in quest'ordine, quindi Red, Green, Blue
- // il range è da 0 a 255, dove 0 è spento e 255 è la massima intensità
- pixels.setPixelColor(PrevLed, pixels.Color(0, 0, 255 ));
- pixels.setPixelColor(i, pixels.Color(255, 0, 0 ));
- // Funzione per inviare inviare ai NeoPixel il colore scelto in precedenza
- pixels.show();
- delay(DelayVal);
- }
- }
Questo è tutto,
per qualsiasi domanda lascia pure un commento.
Seguimi sulle mie pagine per rimanere sempre aggiornato sui nuovi post!
per qualsiasi domanda lascia pure un commento.
Seguimi sulle mie pagine per rimanere sempre aggiornato sui nuovi post!
Nessun commento:
Posta un commento
Lascia un commento qui sotto, ti risponderò il prima possibile!