Descripción

El sensor Neopixel es un LED RGB (Red-Green-Blue) WS2812 o WS2813 como el que se encuentra integrado en el módulo Nonthue M0 Main. Al ser RGB se pueden combinar los colores rojo, verde, azul, cada uno de ellos en 256 valores distintos permitiendo lograr más de 16 millones de combinaciones. Además para programarlo requiere una única línea de señal (aparte de la alimentación) y se pueden conectar multitud de ellos en serie. Se puede usar como indicador, para decoración o hasta para crear Displays.

Uso del sensor NEOPIXEL

En este ejemplo conectaremos el sensor Neopixel para que cambie de rojo a verde y termine en azul. Luego de grabar el programa, el Neopixel se enciende de color rojo, al pasar un segundo ( «time.sleep(1)» ) cambia al color verde. Una vez que llega al color azul, luego de que pase otro segundo, repite la misma secuencia una y otra vez.

Conexión

Conectamos el sensor Neopixel al pin D32. Solo usaremos un LED, en la imagen de la izquierda vemos como podría conectarse un segundo Neopixel.

La función neopixel.NeoPixel(pixel_pin, num_pixels, brightness=0.3, auto_write=False) se usa para configurarlo.

Ejemplo para Circuitpython

Copia este ejemplo en Mu Editor y guárdalo en módulo Nonthue Main. Asegúrate que el archivo se llame code.py. Para probarlo solamente hace falta conectar el sensor NeoPixel en el pin previamente definido.

Atención: en el ejemplo está definido el pin NEOPIXEL que es el LED integrado en el módulo Nonthue. Para usar el NEOPIXEL externo es necesario cambiar el nombre por el pin donde se conectó (por ejemplo D32).

Ejemplo para Arduino

Copia este ejemplo al editor de Arduino, compílalo y guárdalo. Recuerda que debes elegir en el menú Herramientas la tarjeta «Eltech Nonthue M0«.

Otros pines que podemos utilizar

Para el ejemplo anterior se pueden utilizar todos los pines digitales (color violeta en PINOUT).

Tip: Debemos tener en cuenta que los pines cuentan en su mayoría con múltiples funciones y alguna de ellas las podemos estar utilizando ya en nuestro programa. Los resultados podrían verse afectados por ello.