Impela ubabonile abenzi bekhombisa amaphrojekthi besebenzisa lawa masethi ama-RGB LED izikhathi ezingaphezu kwesisodwa. Ukusetshenziswa kwale micu kungasukela emhlobisoni olula ongashintsha umbala ngokuya ngomcimbi othile wangaphandle, ukusetshenziselwa imijaho yezibani, nokunye okuningi. Kungakho kulesi sihloko sizokwethula lonke ulwazi olubaluleke kakhulu okufanele wazi ngalo i-neopixel nokuthi ingahlanganiswa kanjani futhi lawula nge-Arduino.
Iyini i-Neopixel?
I-Neopixel ayilutho ngaphandle kophawu lokuthengisa olubhalisiwe lwe-Adafruit Industries. Kodwa-ke, igama elijwayelekile lalezi zingxenye lingama-RGB LED angakwazi ukubhekana nawo (isb: SK6812, WS2811, WS2812,…). Ngamanye amazwi, isifunda esinengqondo esinalezi zibani ezinemibala ezosebenza njengomphumela wesiginali yokulawula, ebonisa imibala ehlukene, yenza ukulandelana okuthile kwamandla, njll.
Kubalulekile ukuthi wazi ukuthi i-RGB LED ngayinye eyakha i-matrix isebenzisa izikhonkwane ezi-4 noma izixhumi, i-pinout yakho es:
- 5V: ukunikezwa kwezinga eliphezulu.
- GND: amandla ezingeni eliphansi noma phansi.
- I-DIN: phinina ukuze uthole ulwazi lombala.
- YENZA: phini ukuze uthumele ulwazi lombala.
Ngaphezu kwalokho, ihlanganisa isekethe ye-elekthronikhi enenkumbulo ekwaziyo gcina amabhayithi angu-3, owodwa ngombala ngamunye. Ukuze uthole ulwazi olwengeziwe, ungafunda imininingwane noma imibhalo yemodeli ethile oyithengile, njengoba kungase kube nokuhluka.
Ungathenga kuphi i-Neopixel
Akusikho isidingo thenga i-neopixel noma izakhi ezifanayo zamaphrojekthi akho e-DIY, ungazithola kwezinye izitolo ezikhethekile zikagesi noma naku-Amazon. Ezinye izincomo mayelana nalokhu yilezi:
Hlanganisa i-Neopixel nge Arduino UNO
para hlanganisa i-Neopixel, nanoma yiluphi olunye uhlobo, nebhodi lakho le-Arduino bese uqala ukudala ikhodi ku-Arduino IDE ukuze ukwazi ukulawula imibala nokukhanya, uzodinga:
- Ipuleti Arduino UNO Isambiso3
- Uhlobo lwe-Neopixel LED matrix
- 470 ukumelana Ω
- I-electrolytic capacitor engu-1000 µF ≥I-6.3V.
- Ibhodi lesinkwa
- Izintambo zokuxhuma
- I-5V ku-1A amandla kagesi nesixhumi
Ukuxhumana phakathi kwe-Neopixel matrix kanye Arduino UNO Kunjengoba kubonakala esithombeni esidlule. Uma usuxhunyiwe, into elandelayo ukuqala nge- Ikhodi ye-IDE ye-Arduino. Kulokhu kufanele usebenzise umtapo wolwazi obizwa ngokuthi I-Adafruit NeoPixel ongayilanda lapha, bese uqala ukuhlola nokulungisa izibonelo eziza nayo. Isibonelo, ungaqala ngo-Simple, lapho ungathola khona okuthile okufana nalokhu:
#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 } }