Omet navegació

Neopixels Anells de Leds

Les tires de NeoPixels són agrupacions en forma de tira o anell (strip or ring en anglés) més o menys allargada amb leds RGB que comparteixen el càtode (GND) i l'anòde (+) però tenen un circuit integrat que connectem a un GPIO de Wemos, usant les funcions que hi ha programes a les llibreries poden engegar diferents leds RGB.  Anem a veure com es connecten els anells NeoPixel de 12 leds.

Primer del tot, cal soldar 4 pins a les exides GND , 5V  , DIN (Digital Input), i DOUT (Digital Output), per poder connectar cables al nostre Wemos  i fer el muntatge següent:

Ring 12 Leds Wemos

Ara has de posar la llibreria  Adafruit_NeoPixel.

Descarrega-la i copia-la a la carpeta libraries de la teua /home/«usuari»/Arduino/libraries en lliurex.

Prova el programa aquest:

#include <Adafruit_NeoPixel.h>

Adafruit_NeoPixel MATRIX_HEX = Adafruit_NeoPixel(12, 19, NEO_GRB + NEO_KHZ800);
// Adafruit_NeoPixel MATRIX_HEX = Adafruit_NeoPixel(num leds, pin anell, NEO_GRB + NEO_KHZ800);     

void setup() {
  Serial.begin(115200);
  pinMode(19, OUTPUT);
  MATRIX_HEX.begin();

}

void loop() {
  // Primera matriu de colors
    MATRIX_HEX.setPixelColor(0, 0x009900);
    MATRIX_HEX.setPixelColor(1, 0x009900);
    MATRIX_HEX.setPixelColor(2, 0x009900);
    MATRIX_HEX.setPixelColor(3, 0x009900);
    MATRIX_HEX.setPixelColor(4, 0x009900);
    MATRIX_HEX.setPixelColor(5, 0x009900);
    MATRIX_HEX.setPixelColor(6, 0x009900);
    MATRIX_HEX.setPixelColor(7, 0x009900);
    MATRIX_HEX.setPixelColor(8, 0x009900);
    MATRIX_HEX.setPixelColor(9, 0x009900);
    MATRIX_HEX.setPixelColor(10, 0x009900);
    MATRIX_HEX.setPixelColor(11, 0x009900);
    MATRIX_HEX.show(); // Mostra la matriu
    delay(2000); // Espera 2 segons

    // Segona matriu de colors
    MATRIX_HEX.setPixelColor(0, 0xE6E6FA);
    MATRIX_HEX.setPixelColor(1, 0xE6E6FA);
    MATRIX_HEX.setPixelColor(2, 0xE6E6FA);
    MATRIX_HEX.setPixelColor(3, 0xE6E6FA);
    MATRIX_HEX.setPixelColor(4, 0xE6E6FA);
    MATRIX_HEX.setPixelColor(5, 0xE6E6FA);
    MATRIX_HEX.setPixelColor(6, 0xE6E6FA);
    MATRIX_HEX.setPixelColor(7, 0xE6E6FA);
    MATRIX_HEX.setPixelColor(8, 0xE6E6FA);
    MATRIX_HEX.setPixelColor(9, 0xE6E6FA);
    MATRIX_HEX.setPixelColor(10, 0xE6E6FA);
    MATRIX_HEX.setPixelColor(11, 0xE6E6FA);
    MATRIX_HEX.show(); // Mostra la matriu
    delay(2000); // Espera 2 segons

}// final programa

Fixat que el programa escriu dos matrius per posar colors i la identificació dels leds comença 
per 0 no per 1 , per això el darrer led és el 11 ( que és el dotzé).
Per triar el color que posarem en cada pixel cal posar el color en codi hexadecimal.

Per triar això anem a la pàgina https://www.w3schools.com/colors/colors_mixer.asp i triem bé
un color directament mirem el codi html hexadecimal #FF0000 (roig) i canviem el símbol # pel
símbol 0x per deixar-lo amb el codi numèric hexadecimal 0xFF0000

Si cal triar una mescla de colors, ho fem i amb el color triat fem el mateix i el posem al codi 0xcolor
color mixer

Creat amb eXeLearning (Finestra nova)