Uso de un módulo de 4 Matrices LED 8x8 con MAX7219 y Arduino

Introducción

Las Matrices LED son un medio popular para mostrar datos visuales debido a su flexibilidad y visibilidad. Este tutorial se centra en cómo controlar un módulo de 4 matrices LED 8x8 con el controlador MAX7219 y una placa Arduino. Aprenderás a configurar este módulo y mostrar texto que se desplaza en la matriz. Ya sea que estés trabajando en un tablero de mensajes, una pantalla de información de tiempo real o simplemente experimentando con Arduino y LEDs, este tutorial será de gran ayuda.

Materiales Necesarios

  1. Placa Arduino (Por ejemplo, Arduino Uno)
  2. Módulo de 4 Matrices LED 8x8 con controlador MAX7219
  3. Cables jumper
  4. Fuente de 5V 2A

Módulo de Matriz LED 8x8 con MAX7219

Este módulo permite controlar una matriz de LEDs 8x8. Está basado en el chip MAX7219 que es un controlador compacto, serial input/output de uso común para la visualización de LED a 7 segmentos y matrices de LEDs. Puede soportar hasta 64 LEDs (8 dígitos de 7 segmentos, 8 LEDs por dígito). El MAX7219 se encarga de la multiplexación, el control de la intensidad y otros detalles, reduciendo la carga sobre el microcontrolador y simplificando la programación.

Una de las grandes ventajas del uso de controladores MAX7219 con matrices de LED 8x8 es su capacidad para funcionar en serie, lo que significa que puedes encadenar varios módulos juntos.

La ventaja de conectar varios módulos en serie es que puedes controlar un gran número de LEDs utilizando solo unos pocos pines en tu placa Arduino. Esto es posible porque cada módulo MAX7219 se encarga de gestionar su matriz de LEDs 8x8. Cuando varios módulos se encadenan, solo tienes que enviar tus datos en serie a través de un único pin de datos (MOSI) y cada módulo irá recogiendo sus datos correspondientes. 

Diagrama

Conecta el módulo de matrices de LED de la siguiente manera:

  • VCC a una fuente de 5V
  • GND a GND de la fuente y de Arduino
  • DIN a PIN 11 de Arduino (MOSI)
  • CS a PIN 10 de Arduino (SS)
  • CLK a PIN 13 de Arduino (SCK)

Preparación del entorno

Las bibliotecas "MD_MAX72XX" y "MD_Parola" son necesarias para interactuar con el módulo de matriz LED MAX7219 utilizando Arduino. Puedes instalarlas desde el Gestor de Bibliotecas en el entorno de desarrollo de Arduino (IDE). Simplemente ve al menú Sketch -> Include Library -> Manage Libraries... y busca "MD_MAX72XX" y "MD_Parola". Haz clic en Install para instalar las bibliotecas.

LED Matrix Editor

Es una herramienta en línea para editar y crear animaciones para matrices de LEDs 8x8. Es gratuita y fácil de usar. 

https://xantorohara.github.io/led-matrix-editor/

Esta herramienta te proporciona una interfaz gráfica intuitiva y fácil de usar que te permite crear animaciones de manera rápida y sencilla. Lo más interesante es que una vez que hayas diseñado tu animación, la herramienta generará automáticamente los arreglos de bytes correspondientes. Estos arreglos se pueden copiar directamente en tu código Arduino, facilitando enormemente el proceso de programación.

Para ilustrar su uso, en este tutorial creamos una animación de una carita feliz. Aquí puedes ver una imagen del diseño resultante.

Programación 

Una vez que hayas instalado las librerías necesarias, puedes copiar y pegar el siguiente código en tu entorno Arduino IDE. Durante la fase de configuración inicial (es decir, dentro de la función setup), este código se encargará de iluminar todos los LEDs de las matrices para que puedas asegurarte de que funcionan correctamente.

Posteriormente, en el bucle principal del programa (es decir, dentro de la función loop), se mostrará el texto "Tecneu" y una carita feliz. Estos elementos se desplazarán continuamente de derecha a izquierda, creando un atractivo efecto de movimiento en las matrices de LEDs.

A continuación, se detalla cada sección del código:

Inclusión de bibliotecas y configuraciones: Las bibliotecas MD_Parola, MD_MAX72xx y SPI se incluyen al principio del programa. Se definen las macros de configuración de hardware específicas para el módulo, incluyendo el tipo de hardware (FC16_HW), el número de dispositivos (4) y los pines a los que están conectados los pines de reloj (CLK), los pines de datos (DATA) y los pines de selección de chip (CS).

Variables Globales: Se definen las instancias de las bibliotecas MD_Parola y MD_MAX72XX, así como un sprite de 8x8 para una carita feliz en un array de 8 bytes.

Función setup: En la función de configuración, se inicializa y se limpia el módulo MAX7219 y se encienden todos los LEDs en la cadena de módulos de matriz de LED. Luego inicia la biblioteca MD_Parola para prepararla para mostrar texto.

Función loop: Dentro del bucle principal, el programa muestra el texto "Tecneu " desplazándose hacia la izquierda en la matriz de LED con la velocidad definida por la variable 'Speed'. Entre cada iteración del bucle, también muestra la carita feliz en la matriz de LED y espera a que termine de animarse antes de repetir el ciclo.

Resultados

Una vez que hayas cargado el código en tu Arduino, podrás ver la animación que has creado reproducida en tus matrices de LEDs. Este código es totalmente personalizable, por lo que te animamos a que experimentes con él. Puedes probar a cambiar el texto que se muestra, ajustar la velocidad de desplazamiento o incluso crear y añadir tus propios sprites. Disfruta explorando las posibles modificaciones y viendo cómo afectan a tu animación.

 

Conclusiones 

En este tutorial, has adquirido habilidades valiosas en el uso de matrices LED con el controlador MAX7219. Este conocimiento te servirá como base sólida para tus futuros proyectos con Arduino, permitiéndote dar vida a tus creaciones con animaciones LED dinámicas.

Manejar matrices LED y aprender a controlarlas con un Arduino es un paso fundamental en el mundo de la electrónica y la programación de microcontroladores. Puedes usar este conocimiento para crear tableros de mensajes, indicadores de estado de sistemas, relojes digitales, y mucho más.

Esperamos que este tutorial te haya resultado útil y te haya inspirado para llevar tus proyectos al siguiente nivel. ¡Felices experimentos!

 

 

Productos Relacionados

Ver artículo

 

ArduinoMatriz led

Deja un comentario