Arduino UNO R4 - Matriz de LEDs

Este tutorial te enseña cómo usar Arduno UNO R4 con módulos externos de matriz LED. En detalle, aprenderemos:

Luego, simplemente puedes modificar el código para otras matrices LED, como la matriz LED de 16x8 o de 64x8.

Matriz LED de Arduino UNO R4

Si quieres aprender a usar Arduino R4 con la matriz LED integrada, consulta Arduino UNO R4 - Built-in LED Matrix

Acerca de la Matriz LED

Pantalla de matriz LED

Existen varios tipos de matrices LED. La matriz LED basada en MAX7219 se utiliza comúnmente con Arduino UNO R4. Esta matriz LED incluye varias características:

  • El componente básico de una matriz de LEDs se llama un bloque.
  • Cada bloque contiene una cuadrícula de 8x8 LEDs, para un total de 64 LEDs, y está controlado por un chip MAX7219.
  • Existen dos tipos principales de bloques: el módulo genérico y el módulo FC-16.
  • Una matriz de LEDs puede tener solo un bloque o expandirse conectando varios bloques entre sí, como una cadena.
  • También puedes comprar matrices de LEDs que ya tienen varios bloques conectados, como configuraciones de 4 bloques o 8 bloques.
  • Alternativamente, puedes comprar bloques individuales y conectarlos tú mismo para crear una matriz de LEDs del tamaño que necesites.
  • En tu programa de Arduino UNO R4, debes especificar el tamaño de la matriz de LEDs que estás usando.

Disposición de pines

Disposición de pines de la matriz de LEDs

Una matriz de LEDs está formada por uno o más bloques. Cada bloque tiene dos conjuntos de pines:

  • Grupo de Pines de Entrada:
    • VCC: Conéctalo al 5V.
    • GND: Conéctalo al GND.
    • DIN: Este es el pin de datos. Conéctalo al pin SPI MOSI en el Arduino UNO R4.
    • CS: Selección de chip. Conéctalo a cualquier pin digital en el Arduino UNO R4.
    • CLK: Pin de reloj. Conéctalo al pin SPI CLK en el Arduino UNO R4.
  • Grupo de Pines de Salida:
    • VCC: Conéctalo a VCC en el módulo siguiente.
    • GND: Conéctalo a GND en el módulo siguiente.
    • DOUT: Salida de datos. Esto se conecta al pin DIN en el siguiente módulo.
    • CS: Conéctalo a CS en el módulo siguiente.
    • CLK: Conéctalo a CLK en el módulo siguiente.

Diagrama de Cableado

Si la matriz de LEDs consta de solo un bloque:

  • Conecta los grupos de pines de entrada al Arduino UNO R4.
  • Deja los grupos de pines de salida sin conectar.
Diagrama de cableado de la matriz LED 8x8 FC-16 para Arduino UNO R4

This image is created using Fritzing. Click to enlarge image

Diagrama genérico de cableado de la matriz LED 8x8 para Arduino UNO R4

This image is created using Fritzing. Click to enlarge image

Si la matriz de LEDs ya viene ensamblada en varios bloques:

  • Conecta el grupo de pines de entrada al Arduino UNO R4.
  • Deja sin conectar el grupo de pines de salida.
Diagrama de cableado de la matriz LED del Arduino UNO R4

This image is created using Fritzing. Click to enlarge image

Si ensamblas la matriz de LEDs a partir de varias piezas:

  • Conecta el grupo de pines de entrada del primer bloque al Arduino UNO R4.
  • Conecta el grupo de pines de salida de cada bloque al grupo de pines de entrada del bloque siguiente.
  • Deja sin conexión el grupo de pines de salida del último bloque.
Arduino UNO R4 32x8 matriz de LEDs - diagrama de cableado FC-16

This image is created using Fritzing. Click to enlarge image

Diagrama genérico de cableado para matriz LED 32×8 en Arduino UNO R4

This image is created using Fritzing. Click to enlarge image

Ver La mejor forma de alimentar Arduino Uno R4 y otros componentes.

La pantalla consume mucha potencia, hasta 1 amperio al brillo máximo.

  • Evita usar el pin de 5V del Arduino UNO R4 para la alimentación.
  • En su lugar, conecta una fuente de alimentación externa de 5V. El Arduino UNO R4 y la matriz LED pueden ser alimentados por el mismo adaptador de 5V.

El Arduino UNO R4 se conecta a la matriz de LEDs mediante pines SPI.

  • Utiliza el pin 13 (SCK) y el pin 11 (MOSI) en Arduino UNO R4. Si usas una placa Arduino UNO R4 diferente, consulta la guía oficial para los mismos pines SPI.
  • Puedes usar cualquier otro pin para el pin 3 (CS).

Cómo programar para una matriz de LEDs

Controlar la matriz de LEDs puede ser un desafío. Afortunadamente, existen bibliotecas que simplifican esta tarea. Aquí están los pasos para programar un Arduino UNO R4 para controlar la matriz de LEDs.

  • Incluir bibliotecas:
#include <MD_Parola.h> #include <MD_MAX72xx.h>
  • Elija el tipo de hardware que está utilizando: GENERIC_HW o FC16_HW.
#define HARDWARE_TYPE MD_MAX72XX::FC16_HW
  • Determine cuántos bloques LED se utilizan. Por ejemplo, una matriz LED 4 en 1 contiene 4 bloques.
#define MAX_DEVICES 4
  • Configura el pin conectado al pin CS en la matriz de LEDs. Por ejemplo, utiliza el pin D9.
#define CS_PIN 9
  • Crea una nueva versión de la clase MD_Parola para la pantalla de matriz de LEDs.
MD_Parola ledMatrix = MD_Parola(HARDWARE_TYPE, CS_PIN, MAX_DEVICES);
  • Configura el código en la función setup().
void setup() { ledMatrix.begin(); // Initialize the LED matrix ledMatrix.setIntensity(0); // Set the display brightness (range 0-15) ledMatrix.displayClear(); // Clear the display screen }
  • Muestra texto, números y efectos animados: vea la parte siguiente.

Arduino UNO R4 - Código de la matriz de LEDs

El código proporcionado es para una matriz LED FC-16 de 32x8 con cuatro bloques. Sin embargo, puede modificarse para otros tamaños, como 8x8, 16x8, 64x8, etc.

/* * Este código de Arduino UNO R4 fue desarrollado por es.newbiely.com * Este código de Arduino UNO R4 se proporciona al público sin ninguna restricción. * Para tutoriales completos y diagramas de cableado, visite: * https://es.newbiely.com/tutorials/arduino-uno-r4/arduino-uno-r4-led-matrix */ #include <MD_Parola.h> #include <MD_MAX72xx.h> #define HARDWARE_TYPE MD_MAX72XX::FC16_HW #define MAX_DEVICES 4 // 4 blocks #define CS_PIN 9 // The Arduino UNO R4 pin connected to the CS pin of LED matrix // create an instance of the MD_Parola class MD_Parola ledMatrix = MD_Parola(HARDWARE_TYPE, CS_PIN, MAX_DEVICES); void setup() { ledMatrix.begin(); // initialize the object ledMatrix.setIntensity(15); // set the brightness of the LED matrix display (from 0 to 15) ledMatrix.displayClear(); // clear LED matrix display } void loop() { ledMatrix.setTextAlignment(PA_LEFT); ledMatrix.print("Left"); // display text delay(2000); ledMatrix.setTextAlignment(PA_CENTER); ledMatrix.print("Center"); // display text delay(2000); ledMatrix.setTextAlignment(PA_RIGHT); ledMatrix.print("Right"); // display text delay(2000); ledMatrix.setTextAlignment(PA_CENTER); ledMatrix.setInvert(true); ledMatrix.print("Invert"); // display text inverted delay(2000); ledMatrix.setInvert(false); ledMatrix.print(1234); // display number delay(2000); }

Pasos R\u00e1pidos

Sigue estas instrucciones paso a paso:

  • Si esta es la primera vez que usas la placa Arduino Uno R4 WiFi/Minima, consulta el tutorial sobre configurar el entorno para Arduino Uno R4 WiFi/Minima en el IDE de Arduino.
  • Conecta la placa Arduino Uno R4 a tu computadora usando un cable USB.
  • Inicia el IDE de Arduino en tu computadora.
  • Selecciona la placa adecuada de Arduino Uno R4 (p. ej., Arduino Uno R4 WiFi) y el puerto COM.
  • En el IDE de Arduino, haz clic en el icono Bibliotecas en la barra lateral izquierda.
  • Busca "MD_Parola" y localiza la biblioteca MD_Parola.
  • Haz clic en el botón Instalar.
Librería MD_Parola para Arduino UNO R4
  • Debe instalar la biblioteca MD_MAX72XX. Por favor haga clic en el botón Instalar todo.
Biblioteca MD_MAX72XX para Arduino UNO R4
  • Copia el código anterior y ábrelo usando Arduino IDE.
  • Haz clic en el botón Cargar en Arduino IDE para cargar el código en Arduino UNO R4.
  • Observa la pantalla en la matriz LED.

Código de la matriz LED para Arduino UNO R4 – Texto que se desplaza

Cuando necesites mostrar un mensaje largo en una pantalla de matriz LED y no quepa, puedes usar el efecto de desplazamiento de texto.

Este código de Arduino UNO R4 demuestra cómo hacer que un mensaje se desplace a través de la matriz de LEDs.

/* * Este código de Arduino UNO R4 fue desarrollado por es.newbiely.com * Este código de Arduino UNO R4 se proporciona al público sin ninguna restricción. * Para tutoriales completos y diagramas de cableado, visite: * https://es.newbiely.com/tutorials/arduino-uno-r4/arduino-uno-r4-led-matrix */ #include <MD_Parola.h> #include <MD_MAX72xx.h> #define HARDWARE_TYPE MD_MAX72XX::FC16_HW #define MAX_DEVICES 4 // 4 blocks #define CS_PIN 9 // The Arduino UNO R4 pin connected to the CS pin of LED matrix // create an instance of the MD_Parola class MD_Parola ledMatrix = MD_Parola(HARDWARE_TYPE, CS_PIN, MAX_DEVICES); void setup() { ledMatrix.begin(); // initialize the object ledMatrix.setIntensity(15); // set the brightness of the LED matrix display (from 0 to 15) ledMatrix.displayClear(); // clear led matrix display ledMatrix.displayScroll("Hello, DIYables", PA_CENTER, PA_SCROLL_LEFT, 100); } void loop() { if (ledMatrix.displayAnimate()) { ledMatrix.displayReset(); } }

Para ver más efectos de texto, ve a Referencia de la biblioteca MD_Parola.

Video Tutorial

Estamos considerando crear tutoriales en video. Si considera que los tutoriales en video son importantes, suscríbase a nuestro canal de YouTube para motivarnos a crear los videos.

Tutoriales Relacionados

※ NUESTROS MENSAJES

  • No dude en compartir el enlace de este tutorial. Sin embargo, por favor no use nuestro contenido en otros sitios web. Hemos invertido mucho esfuerzo y tiempo en crear el contenido, ¡por favor respete nuestro trabajo!