Arduino Nano - Matriz de LEDs

Este tutorial explica cómo usar Arduino Nano con una matriz de LEDs. En detalle, aprenderemos:

Una vez que eso esté hecho, puedes ajustar rápidamente el código para adaptarlo a otras matrices LED, como la matriz LED 16x8, la matriz LED 64x8...

Hardware Requerido

1×Official Arduino Nano
1×Alternatively, DIYables ATMEGA328P Nano Development Board
1×Cable USB A a Mini-B
1×FC-16 LED Matrix 32x8
1×FC-16 LED Matrix 8x8
1×Generic LED Matrix 8x8
1×Cables Puente
1×Conector de Alimentación DC
1×5V Power Adapter for Arduino Nano
1×(Recomendado) Placa de Expansión de Terminales de Tornillo para Arduino Nano
1×(Recomendado) Placa de Expansión Breakout para Arduino Nano
1×(Recomendado) Divisor de Alimentación para Arduino Nano

Or you can buy the following kits:

1×DIYables Sensor Kit (30 sensors/displays)
1×DIYables Sensor Kit (18 sensors/displays)
Divulgación: Algunos de los enlaces proporcionados en esta sección son enlaces de afiliado de Amazon. Podemos recibir una comisión por las compras realizadas a través de estos enlaces sin costo adicional para usted. Apreciamos su apoyo.

Acerca de la matriz LED

Las pantallas de matriz LED se conocen comúnmente como pantallas LED o pantallas de matriz de puntos.

pantalla de matriz LED

Las matrices LED vienen en muchas variedades. La matriz LED basada en MAX7219 es una opción popular para su uso con Arduino Nano. Tiene las siguientes características:

  • Cada bloque consta de una matriz de LEDs de 8x8 (64 LEDs) y un controlador MAX7219.
  • Dos formas comunes de bloques son el módulo genérico y el módulo FC-16.
  • Una matriz de LEDs puede estar formada por uno o varios bloques conectados en cascada.
  • Puede adquirir matrices de LEDs preensambladas con múltiples bloques (p. ej., 4 en 1, 8 en 1).
  • Alternativamente, puede comprar bloques individuales y conectarlos para crear una matriz de LEDs del tamaño deseado.
  • El tamaño de la matriz de LEDs utilizada debe declararse en el código de Arduino Nano.

Pinout de la matriz de LEDs

Pinout de la matriz de LEDs

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

  • Grupo de pines de entrada:
    • VCC: conectado a la fuente de alimentación de 5 V.
    • GND: conectado a tierra.
    • DIN: Pin de datos, conectado al pin MOSI del SPI del Arduino Nano.
    • CS: Selección de chip, conectado a cualquier pin digital del Arduino Nano.
    • CLK: Pin de reloj, conectado al pin MOSI del SPI del Arduino Nano.
  • Grupo de pines de salida:
    • VCC: conectado al VCC en el siguiente bloque.
    • GND: conectado a GND en el siguiente bloque.
    • DOUT: Salida de datos, conectada al pin DIN del siguiente bloque.
    • CS: conectado a CS en el siguiente bloque.
    • CLK: conectado a CLK en el siguiente bloque.

Diagrama de Cableado

Si la matriz LED está hecha de un solo bloque:

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

This image is created using Fritzing. Click to enlarge image

Esquema de cableado genérico para la matriz LED 8x8 de Arduino Nano

This image is created using Fritzing. Click to enlarge image

Si la matriz LED está preconstruida a partir de varios bloques:

  • Conecta el grupo de pines de entrada al Arduino Nano
  • Deja el grupo de pines de salida sin conectar
Diagrama de cableado de la matriz de LEDs para Arduino Nano

This image is created using Fritzing. Click to enlarge image

Si la matriz LED está formada por varios bloques por ti mismo:

  • Conecta los grupos de pines de entrada del primer bloque al Arduino Nano
  • Conecta los grupos de pines de salida de cada bloque a los grupos de pines de entrada del bloque siguiente
  • Deja el grupo de pines de salida del último bloque sin conectar
Diagrama FC-16 del cableado de la matriz de LEDs 32x8 para Arduino Nano

This image is created using Fritzing. Click to enlarge image

Ver La mejor forma de alimentar Arduino Nano y otros componentes.

Debido al alto consumo de corriente de la pantalla (hasta 1 A a brillo máximo):

  • No lo alimentes desde el pin 5V de un Arduino Nano.
  • Utiliza una fuente de alimentación externa de 5V.
  • Tanto el Arduino Nano como la matriz de LEDs pueden alimentarse con un único adaptador de 5V.

Dado que Arduino Nano está conectado a la matriz de LEDs a través de los pines SPI:

  • Los pines 13 (SCK) y 11 (MOSI) en Arduino Nano deben utilizarse. Si se está utilizando una placa Arduino Nano diferente, consulte la documentación oficial para obtener los pines SPI equivalentes.
  • El pin 3 (CS) puede asignarse a cualquier pin del Arduino Nano.

Cómo programar para una matriz LED

No es una tarea simple gestionar la matriz de LEDs. Afortunadamente, hay bibliotecas disponibles que lo hacen mucho más fácil. A continuación se presenta una guía paso a paso sobre cómo escribir código para Arduino Nano para controlar la matriz de LEDs:

  • Incluir bibliotecas:
#include <MD_Parola.h> #include <MD_MAX72xx.h>
  • Especifique el tipo de hardware que se está utilizando: GENERIC_HW o FC16_HW.
#define HARDWARE_TYPE MD_MAX72XX::FC16_HW
  • Especifica la cantidad de bloques LED utilizados. Por ejemplo, una matriz LED 4 en 1 contiene cuatro bloques.
#define MAX_DEVICES 4
  • Especifique el pin conectado al pin CS de la matriz LED. Por ejemplo, el pin D3.
#define CS_PIN 3
  • Crear un objeto MD_Parola para la pantalla de la matriz LED.
MD_Parola ledMatrix = MD_Parola(HARDWARE_TYPE, CS_PIN, MAX_DEVICES);
  • Código en la función setup():
void setup() { ledMatrix.begin(); // initialize the object ledMatrix.setIntensity(0); // set the brightness of the LED matrix display (from 0 to 15) ledMatrix.displayClear(); // clear led matrix display }
  • Muestra texto, valores numéricos y efectos animados: echa un vistazo a la siguiente sección

Arduino Nano - Código de la matriz de LEDs

Este código es aplicable a una matriz LED FC-16 de 32×8 que consta de cuatro bloques. Sin embargo, puede adaptarse a 8×8, 16×8, 64×8 y otros tamaños con facilidad.

/* * Este código de Arduino Nano fue desarrollado por es.newbiely.com * Este código de Arduino Nano se proporciona al público sin ninguna restricción. * Para tutoriales completos y diagramas de cableado, visite: * https://es.newbiely.com/tutorials/arduino-nano/arduino-nano-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 3 // 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

  • Conecta Arduino Nano a la matriz de LEDs según el diagrama de cableado.
  • Conecta el Arduino Nano a un PC mediante un cable USB.
  • Haz clic en el icono de Bibliotecas en la barra izquierda del IDE de Arduino.
  • Busca “MD_MAX72XX” y luego localiza la biblioteca MD_MAX72XX.
  • Pulsa el botón Instalar.
  • Busca “MD_Parola”, luego localiza la biblioteca MD_Parola.
  • Pulsa el botón Instalar.
Biblioteca MD_Parola para Arduino Nano
  • Se le pedirá que instale la biblioteca “MD_MAX72XX”
  • Haz clic en el botón Instalar todo para instalar la dependencia.
Biblioteca MD_MAX72XX para Arduino Nano
  • Copia el código y ábrelo con Arduino IDE.
  • Haz clic en el botón Cargar en el IDE para enviar el código al Arduino Nano.
  • Observa el mensaje que muestra la matriz LED.

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

Si un mensaje es demasiado largo para mostrarse en una matriz LED, se puede utilizar el efecto de desplazamiento de texto. Esta técnica permite que el texto se desplace a lo largo de la pantalla. El efecto de desplazamiento de texto permite que el mensaje se mueva a través de la matriz LED, incluso si es demasiado largo para caber.

Este código para Arduino Nano ilustra cómo desplazar un mensaje a través de la matriz de LEDs.

/* * Este código de Arduino Nano fue desarrollado por es.newbiely.com * Este código de Arduino Nano se proporciona al público sin ninguna restricción. * Para tutoriales completos y diagramas de cableado, visite: * https://es.newbiely.com/tutorials/arduino-nano/arduino-nano-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 3 // 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 explorar efectos de texto adicionales, por favor consulte la 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!