Os NeoPixels son Leds RGB 'direccionables'. Eso quere dicir que con só unha liña de datos podemos elixir a cor individual de cada led dentro dunha tira na que están conectados en serie con outros led.

Vamos por partes: Un led RGB é a combinación de tres led: R (vermello), G (verde) e B (azul). Cambiando a intensidade de cada un podemos obter calquera cor do arco cromático.

En cada NeoPixel combínase un led GRB (G e R están cambiados de orde) cun pequenísimo chip que almacena os datos necesarios para formar a cor solicitada.

A intensidade de cada cor defínese mediante un byte e polo tanto pode ter valores entre 0 e 255. Polo tanto, a cada NeoPixel envíanselle 24 bits na seguinte orde: 8 bits para o verde, 8 para o vermello e 8 para o azul. Polo tanto cada NeoPixel pode mostrar : 256 x 256 x 256 = _________________  cores diferentes.

O funcionamento é moi sinxelo:

O microcontrolador calcula a combinación RGB que ten que enviar a cada NeoPixel.

A continuación comeza enviando a información para o primeiro led da tira en formato GRB. Cando o primeiro led xa recibiu os seus 24 bits, comeza a pasar ó segundo led os bits recibidos e así sucesivamente. Cando cada neoPixel está 'cheo' pasa os novos bits que chegan ó seguinte.

Unha vez enviados todos os bits, o microcontrolador mantén a liña de datos en nivel baixo por un período mínimo de 300 microsegundos. Este é ó sinal para que todos os neopixels mostren a súa nova cor.

Esta tecnoloxía empregase para os xogos de luces de nadal en Vigo.

Visita o catálogo de NeoPixel de Adafruit

Afortunadamente unha librería encargase do envío dos bits e do cálculo de tempos: https://learn.adafruit.com/adafruit-neopixel-uberguide/arduino-library-use

Sigue o exemplo en TinkerCad co profesor.

Última modificación: xoves, 23 de maio de 2024, 8:41 AM