Tabla de contenido:

Magic Hercules - Driver para LED digitales: 10 pasos
Magic Hercules - Driver para LED digitales: 10 pasos

Video: Magic Hercules - Driver para LED digitales: 10 pasos

Video: Magic Hercules - Driver para LED digitales: 10 pasos
Video: This sprocket carries extra water!! #mtb #mountainbike #shorts 2024, Noviembre
Anonim
Magic Hercules - Controlador para LED digitales
Magic Hercules - Controlador para LED digitales

Vista rápida:

El módulo Magic Hercules es un conversor entre el conocido y simple protocolo SPI al protocolo NZR. Las entradas del módulo tienen una tolerancia de +3,3 V, por lo que puede conectar de forma segura cualquier microcontrolador que funcione a un voltaje de +3,3 V.

El uso del protocolo SPI para controlar LED digitales es un enfoque innovador entre las soluciones actuales, como las bibliotecas listas para usar para Arduino. Sin embargo, permite cambiar a cualquier plataforma independientemente de la familia de microcontroladores (como ARM: STM / Cypress PSoC, Raspberry Pi, AVR, PIC, Arduino) e independientemente del lenguaje de programación (por ejemplo, C, Arduino C ++, Python u otro que admite el protocolo SPI). Este enfoque para programar LED digitales es extremadamente fácil de usar para principiantes, ya que todo lo que necesita es conocimiento del protocolo SPI.

El módulo MH también permite varios modos de probar tiras de LED digitales, incluida la prueba del orden de color en el diodo (RGB, BGR, RGBW, etc.), la prueba de las tiras o pantallas completas (hasta 1024 LED).

Paso 1: ¿Por qué estoy trabajando en el módulo Magic Hercules?

¿Por qué estoy trabajando en el módulo Magic Hercules?
¿Por qué estoy trabajando en el módulo Magic Hercules?

Llevo mucho tiempo trabajando con LED digitales como WS2812, WS2815 o SK6812, a los que suelo llamar Magic LED.

Probé muchas tiras, anillos y pantallas (incluso las mías) basadas en Magic LED (incluso con el tipo RGBW). Usé Arduino, Nucleo (con STM), Raspberry Pi y mis propias placas con microcontroladores AVR.

Independientemente de la plataforma, escribir un programa para controlar los LED mágicos es difícil (debido a la necesidad de un software de protocolo NZR), a menos que esté utilizando bibliotecas listas para usar que lo hagan fácil, pero que aún no sea del todo óptimo en términos de uso del código, interrumpir respuestas o utilización de memoria, y solo funcionan en plataformas específicas (es imposible portarlas, por ejemplo, de Raspberry a microcontroladores AVR).

Debido al hecho de que suelo usar varias plataformas, necesitaba que el código del programa fuera lo más compatible posible con Arduino, Raspberry Pi, ARM / STM (Nucleo) o AVR, especialmente cuando se trata de efectos de iluminación.

Llevo mucho tiempo trabajando en el canal de youtube y he preparado más de una guía sobre programación de diodos digitales en lenguaje C para microcontroladores AVR (pero hasta ahora solo en polaco por ahora). A menudo tengo contacto con principiantes que luchan con la programación de LED mágicos. Por supuesto, algunos, dependiendo de la plataforma, eligen bibliotecas listas para sus proyectos únicos. Sin embargo, muchas personas buscan otras soluciones o intentan aprender los secretos de la programación y yo soy uno de ellos.

Paso 2: conversión de SPI a NZR

Conversión de SPI a NZR
Conversión de SPI a NZR

Decidí preparar un módulo que hará el trabajo sucio para el usuario usando el protocolo NZR. El módulo que actuará como convertidor de SPI a NZR y, al igual que SPI, se puede utilizar en cualquier plataforma con facilidad. La captura de pantalla anterior muestra la conversión de señales SPI al protocolo NZR en el módulo Magic Hercules.

Paso 3: Módulo Magic Hercules como probador de tiras LED digitales

Módulo Magic Hercules como probador de tiras LED digitales
Módulo Magic Hercules como probador de tiras LED digitales

Al conectar LED digitales a diferentes sistemas, se debe recordar la tolerancia de voltaje adecuada para diferentes microcontroladores. La mayoría de los pines de E / S de los microcontroladores ARM funcionan en el estándar +3,3 V, mientras que los microcontroladores AVR funcionan en el estándar TTL. Debido a esto, los pines de entrada del módulo Magic Hercules tienen una tolerancia de +3,3 V, por lo que se pueden conectar de forma segura, por ejemplo, a una Raspberry P o cualquier microcontrolador basado en ARM alimentado a +3,3 V.

Como mencioné antes, suelo trabajar con diferentes tipos de LED digitales. Dependiendo del fabricante, los colores individuales de los LED pueden estar en diferentes posiciones, p. Ej. RGB, BGR, GRB, RGBW, GRBW, etc. No es raro que la documentación del fabricante mencione la secuencia RGB, pero en realidad se ve diferente. He equipado el módulo Hércules con una prueba de secuencia de colores para que no haya problemas para descubrir rápidamente cómo escribir un programa para el orden de color correcto. Varias funciones adicionales del probador le permiten verificar rápidamente si la tira de LED digital funciona, si todos los colores de cada LED a lo largo de la tira (¡hasta 1024 LED!) Funcionan correctamente (sin píxeles muertos). Y todo ello sin conectar un microcontrolador y escribir ningún programa.

Paso 4: Módulo Magic Hercules - Nueva solución universal para LED digitales

Módulo Magic Hercules: nueva solución universal para LED digitales
Módulo Magic Hercules: nueva solución universal para LED digitales

No creo que haya tal cosa todavía, controlar LED digitales usando un protocolo SPI simple y común, que puede operarse en cualquier plataforma o familia de microcontroladores.

Por supuesto, hay muchas formas de controlar los LED digitales, algunas son más óptimas y otras son menos óptimas. El módulo Magic Hercules es otra opción y muy práctica para mí. Creo que a alguien le puede gustar esta solución inusual. Recientemente despegué en la plataforma de crowdfunding - kickstarter, donde preparé una descripción más amplia del módulo Magic Hercules en varios videos, incluyendo lo fácil que es trabajar con él en Arduino, Nucleo (STM), Raspberry Pi y en AVR y PIC. microcontroladores. Si desea apoyar el proyecto Magic Hercules, consulte esto:

Proyecto del módulo My Magic Hercules en kickstarter

Preparé un programa en lenguaje C, un simple efecto stargate, que se basa en operaciones de tabla y envío secuencial del búfer en el bucle principal. Gracias al módulo Magic Hercules, pude transferir fácilmente el código fuente a otros lenguajes y plataformas - verifique los siguientes pasos - códigos fuente.

Paso 5: Módulo Magic Hercules con Atmega32 y C

Video que contiene un diagrama simplificado, presentación de la conexión en ATB 1.05a (AVR Atmega32), código fuente (en Eclipse C / C ++ IDE) y el efecto final en forma de efecto de luz stargate.

Enlace al video en youtube

Paso 6: Módulo Magic Hercules con Arduino y Arduino C ++

Video que contiene un diagrama simplificado, presentación de conexión en placa Arduino 2560, código fuente en Arduino IDE y el efecto final en forma de efecto de luz stargate.

Enlace al video en youtube

Paso 7: Módulo Magic Hercules con PIC y C

Video que contiene un diagrama simplificado, presentación de la conexión en ATB 1.05a con pantalla PIC (PIC24FJ64GA004 a bordo), código fuente en MPLAB y el efecto final en forma de efecto de luz stargate.

Enlace al video en youtube

Paso 8: Módulo Magic Hercules con Raspberry Pi y Python

Video que contiene un diagrama simplificado, presentación de conexión en Raspberry Pi 4, código fuente en Python y el efecto final en forma de efecto de luz Stargate.

Enlace al video en youtube

Paso 9: Módulo Magic Hercules con ARM - STM32 Nucleo y C

Video que contiene un diagrama simplificado, presentación de la conexión en la placa STM32 Nucleo, código fuente en STM32CubeIDE y el efecto final en forma de efecto de luz stargate.

Enlace al video en youtube

Paso 10:

Imagen
Imagen

Creo que MH puede ser un módulo extremadamente amigable para principiantes, independientemente de la plataforma y el idioma que utilicen. Basta con conocer el conocido protocolo SPI, y la posibilidad de empezar a comprobar si la tira de LED digital funciona y qué secuencia de colores tiene es solo una ventaja.

Si quieres participar en mi proyecto en kickstarter, consulta este enlace:

Proyecto del módulo My Magic Hercules en kickstarter

Recomendado: