En este proyecto vamos a diseñar una pantalla de matriz de LED de 8x8, para eso vamos a conectar un módulo de matriz de LED de 8x8 con Arduino Uno. Una matriz de LED de 8x8 contiene 64 LED (diodos emisores de luz) que están dispuestos en forma de matriz, de ahí el nombre de matriz de LED.
Estas matrices se pueden hacer conectando 64 LED, sin embargo, ese proceso lleva mucho tiempo. Ahora un día están disponibles en formas compactas como se muestra en la imagen de abajo. Estos módulos compactos están disponibles en diferentes tamaños y muchos colores. El costo del módulo es el mismo que el costo de 64 LED, por lo que para los aficionados es más fácil de trabajar.
La matriz de LED desnuda tiene 16 salidas de pines con 8 positivos comunes y otros 8 negativos comunes. Para conectar esta matriz directamente a un UNO, necesitamos ahorrar 16 pines en el UNO. Con los pines de salida bajos en UNO, no podemos prescindir de 16 PIN. Entonces necesitamos conectar esta matriz a un chip controlador. Este chip controlador junto con la matriz viene como un conjunto que se muestra en la siguiente figura.
Este módulo se interconectará con Arduino para mostrar alfabetos, de ahí la pantalla de matriz. En primer lugar, para la interconexión de la matriz LED con Arduino, necesitamos descargar una biblioteca diseñada específicamente para LED MATRIX. Esta biblioteca estará disponible en:
Después de descargar el archivo Zip, extraiga el contenido a la carpeta ARDUINO. (Vaya al disco local donde está instalado el software ARDUINO NIGHTLY, abra la carpeta, busque la carpeta llamada "biblioteca", extraiga el contenido del archivo zip en esa carpeta, reinicie el programa, ahora podrá usar las funciones para la interfaz de matriz)
Componentes requeridos
Hardware: Arduino Uno, fuente de alimentación (5v), condensador de 100 uF (conectado a través de la fuente de alimentación)
Software: Arduino Nightly
Diagrama de circuito y explicación
Las conexiones que se realizan entre Arduino Uno y el módulo de matriz LED se muestran en la siguiente tabla.
PIN2 ------------------ LOAD o CHIPSELECT del módulo LED
PIN3 ------------------ RELOJ del módulo LED
PIN4 ------------------ DATAIN del módulo LED
+ 5V ------------------ VCC del módulo LED
GND ------------------ GND del módulo LED
El diagrama de circuito de la pantalla de matriz LED de 8 * 8 se muestra en la siguiente figura.
Ahora, para usar los futuros especiales llamados al instalar una nueva biblioteca, necesitamos establecer algunos comandos en el programa y se indican a continuación.
#include "LedControlMS.h" #define NBR_MTX 1 LedControl lc = LedControl (4,3,2, NBR_MTX); lc.writeString (0, "CIRCUITDIGEST"); lc.clearAll (); |
Primero, necesitamos llamar al archivo de encabezado para conectar una matriz de LED a Arduino Uno. Eso es ”#include" LedControlMS.h "”, este archivo de encabezado llama a las funciones especiales de la biblioteca.
Tenemos una característica con estos módulos que podemos conectar muchos módulos en serie y programarlos juntos como una sola pantalla. Esta función es útil cuando necesitamos una unidad de visualización que pueda mostrar varios caracteres a la vez. Por lo tanto, debemos decirle al controlador cuántas pantallas estamos conectando.
En este módulo hay principalmente tres pines; El flujo de datos de UNO al módulo tiene lugar con estos tres pines. Los pines son DATAIN (pin de recepción de datos), CLOCK (pin de reloj) y CHIPSELECT (pin de recepción de comandos).
Ahora tenemos que decirle a UNO dónde estamos conectando estos pines. Esto se hace mediante el comando “LedControl lc = LedControl (4,3,2, NBR_MTX); ”. “Lc.writeString (0," CIRCUITDIGEST ");”, este comando se usa para decirle a UNO qué caracteres se mostrarán en la matriz de LED. Con lo anterior, la pantalla muestra "CIRCUITDIGEST", con cada carácter una vez.
Necesitamos borrar la memoria del chip de visualización antes de enviar cualquier otro dato, esto se hace con el comando ”lc.clearAll ();".
De esta manera podemos conectar fácilmente una matriz LED de 8x8 a Arduino Uno.