Tabla de contenido:
- Paso 1: Recopilación de herramientas y componentes
- Paso 2: Construyendo el Circuito en Protoboard
- Paso 3: soldadura
- Paso 4: Prueba de la primera mitad terminada del circuito
- Paso 5: construcción de la segunda mitad
- Paso 6: el resultado
Video: Pantalla de matriz de LED con desplazamiento de 48 x 8 con Arduino y Shift Registers: 6 pasos (con imágenes)
2024 Autor: John Day | [email protected]. Última modificación: 2024-01-30 08:44
¡Hola a todos
Este es mi primer Instructable y se trata de hacer una matriz de LED de desplazamiento programable de 48 x 8 usando un Arduino Uno y registros de cambio 74HC595. Este fue mi primer proyecto con una placa de desarrollo Arduino. Fue un desafío que me dio mi maestro. En el momento de aceptar este desafío, ni siquiera sabía cómo hacer parpadear un LED usando un arduino. Entonces, creo que incluso un principiante puede hacer esto con un poco de paciencia y comprensión. Comencé con una pequeña investigación sobre registros de desplazamiento y multiplexación en arduino. Si es nuevo en los registros de desplazamiento, le recomiendo que aprenda los conceptos básicos de la multiplexación y la conexión en cadena de registros de desplazamiento antes de comenzar con las matrices. Eso le ayudará mucho a comprender el código y el funcionamiento de la pantalla de desplazamiento.
Paso 1: Recopilación de herramientas y componentes
Componentes
- 1. Arduino Uno R3 - 1
- 2. 74HC595 Registros de desplazamiento serie a paralelo de 8 bits. - 7
- 3. Transistores BC 548 / 2N4401 - 8
- 4. Resistencias de 470 ohmios - número de columnas + 8
- 5. Pref Board 6x4 pulgadas - 4
- 6. Cables codificados por colores: según sea necesario
- 7. Soportes de CI - 7
- 8. Matriz de LED monocolor de cátodo común 8x8 de 5 mm o 3 mm - 6
- 9. Encabezados masculinos y femeninos: según sea necesario.
Herramientas necesarias
- 1. Kit de soldadura
- 2. Multímetro
- 3. Pistola de pegamento
- 4. Bomba desoldadora
- 5. Fuente de alimentación de 5V
Paso 2: Construyendo el Circuito en Protoboard
Lo primero que debe hacer antes de construir el prototipo es obtener un diagrama de pines de su matriz de 8x8 y marcar un punto de referencia para identificar los pines en todas sus matrices. Esto podría ayudarlo a ensamblar el circuito.
He adjuntado un diagrama de pines del módulo de matriz que he usado aquí. En mi módulo, las filas eran los pines negativos. Este diagrama de pines sigue siendo el mismo para la mayoría de los módulos del mercado.
Se muestra en el circuito que se usa un solo registro de desplazamiento para controlar las 8 filas y para controlar las columnas, usamos un registro de desplazamiento para cada 8 columnas.
Construyamos una pantalla de desplazamiento simple de 8 x 8 en la placa de pruebas.
El circuito se divide en dos partes: control de fila y control de columna. Primero construyamos el control de columna.
El pin 4 de arduino está conectado al pin 14 (SER) del registro de desplazamiento. (Este es el pin de entrada de datos en serie del registro de desplazamiento. Los niveles lógicos necesarios para encender los LED se alimentan a través de este pin
El pin 3 de arduino está conectado al pin 12 (RCLK) del registro de desplazamiento. (Vamos a nombrar este pin como el pin del reloj de salida. Los datos en la memoria de los registros de desplazamiento se envían a la salida cuando se activa este reloj)
El pin 2 de arduino está conectado al pin 11 (SRCLK) del registro de desplazamiento. (Este es el pin del reloj de entrada que cambia los datos a la memoria)
VCC + 5V se le da al registro de desplazamiento a través de su Pin 16 y el mismo está conectado al Pin 10. (¿Por qué? El Pin 10 es el Pin SRCLR, que borra los datos en el registro de desplazamiento cuando se activa. Es un pin activo bajo, por lo que para mantener los datos en la memoria del registro de desplazamiento, este pin debe recibir + 5V todo el tiempo)
La tierra está conectada tanto al pin GND (pin 8 del registro de desplazamiento) como al pin OE (pin 13 del registro de desplazamiento). (¿Por qué? El pin de habilitación de salida debe activarse para dar salidas de acuerdo con la señal de reloj. Es un pin bajo activo al igual que el pin SRCLR, por lo que debe mantenerse en el estado de base todo el tiempo para habilitar el salidas.)
Los pines de la columna de la matriz están conectados al registro de desplazamiento como se muestra en el diagrama del circuito con una resistencia de 470 ohmios entre la matriz y el registro de desplazamiento
Ahora, para el circuito de control de hileras.
El pin 7 de arduino está conectado al pin 14 (SER) del registro de desplazamiento
El pin 5 de arduino está conectado al pin 11 (SRCLK) del registro de desplazamiento
El pin 6 de arduino está conectado al pin 12 (RCLK) del registro de desplazamiento
Se da VCC + 5V al Pin 16 y al Pin 10 como se describe arriba
La tierra está conectada al Pin 8 y al Pin 13
Como mencioné anteriormente, las filas eran los pines negativos en mi caso. Es mejor considerar los pines negativos de su matriz como las filas de su pantalla. La conexión a tierra debe cambiarse a estos pines negativos utilizando transistores BC548 / 2N4401 que están controlados por los niveles lógicos de salida del registro de desplazamiento. Entonces, cuantos más pines negativos, más transistores necesitamos
Proporcione las conexiones de las filas como se muestra en el diagrama del circuito
Si ha logrado hacer el prototipo de pantalla de matriz de 8 x 8, simplemente puede replicar la parte del circuito para el control de columna y extender la matriz a cualquier número de columnas. Solo necesita agregar un 74HC595 por cada 8 columnas (un módulo de 8 x 8) y conectarlo en cadena con el anterior.
Encadenamiento de los registros de turno para agregar más columnas
La conexión en cadena en ingeniería eléctrica es un esquema de cableado en el que se conectan varios dispositivos en una secuencia.
El mecanismo es simple: los pines SRCLK (reloj de entrada. Pin 11) y RCLK (reloj de salida. Pin 12) se comparten entre todos los registros de desplazamiento encadenados, mientras que cada PIN QH (Pin 9) del registro de desplazamiento anterior en el La cadena se utiliza como entrada en serie para el siguiente registro de desplazamiento a través del PIN SER (Pin 14).
En palabras simples, al encadenar los registros de desplazamiento, se pueden controlar como un registro de desplazamiento único con una memoria más grande. Por ejemplo, si conecta en cadena dos registros de desplazamiento de 8 bits, funcionarán como un solo registro de desplazamiento de 16 bits.
El código
En el código alimentamos las columnas con los respectivos niveles lógicos según la entrada mientras escaneamos a lo largo de las filas. Los caracteres de la A a la Z se definen en el código como niveles lógicos en una matriz de bytes. Cada carácter tiene 5 píxeles de ancho y 7 píxeles de alto. He dado una explicación más detallada sobre el funcionamiento del código como comentarios en el código mismo.
El código Arduino se adjunta aquí.
Paso 3: soldadura
Para que el circuito soldado sea más fácil de entender, lo hice lo más grande posible y proporcioné tableros separados para los controladores de fila y columna y los conecté entre sí usando encabezados y cables. Puede hacerlo mucho más pequeño soldando los componentes más cerca entre sí o, si es bueno en el diseño de PCB, también puede hacer un PCB personalizado más pequeño.
Asegúrese de colocar una resistencia de 470 ohmios en cada pin que conduzca a la matriz. Utilice siempre encabezados para conectar las matrices LED a la placa. Es mejor no soldarlos directamente a la placa, ya que la exposición prolongada al calor puede dañarlos permanentemente.
Como hice tableros separados para los controles de fila y columna, extendí los cables de un tablero a otro para conectar las columnas. Aquí, el tablero en la parte superior es para controlar las filas y el tablero en la parte inferior es para controlar las columnas.
solo necesita un único 74HC595 para conducir las 8 filas. Pero según el número de columnas, se deben agregar más registros de desplazamiento, no hay un límite teórico para el número de columnas que puede agregar a esta matriz. ¿Qué tan grande puedes hacerlo? ¡Avísame cuando llegues!;)
Paso 4: Prueba de la primera mitad terminada del circuito
Pruébelo siempre a la mitad para encontrar posibles errores como conexiones sueltas, conexión de pines incorrecta, etc. Muchas personas que me pidieron ayuda para encontrar el error en su matriz se habían equivocado con la asignación de pines fila-columna del módulo de matriz. Compruébelo dos veces antes de soldar y use cables codificados por colores para distinguir los pines fácilmente.
Paso 5: construcción de la segunda mitad
Extienda el mismo circuito de control de columna. Las filas están conectadas en serie con la anterior.
Los pines SRCLK y RCLK se toman en paralelo y el QH (Salida de datos en serie. Pin 9) del último registro de desplazamiento del circuito terminado se conecta al SER (Entrada de datos en serie. Pin 14) del siguiente registro de desplazamiento. La potencia VCC y GND también se comparten entre todos los circuitos integrados.
Paso 6: el resultado
Una vez que haya terminado de soldar, el siguiente paso es hacer un estuche para su pantalla. Siempre es mejor diseñar una carcasa personalizada con Fusion 360 o cualquier otra herramienta de diseño 3D e imprimir la carcasa en 3D. Como no tenía acceso a la impresión 3D en ese momento, hice una caja de madera con la ayuda de un amigo que es bueno en carpintería.
Espero que hayas disfrutado leyendo este instructivo. Publique las imágenes de su versión de este proyecto en la sección de comentarios a continuación y si tiene alguna pregunta, no dude en hacerla aquí o envíe un correo electrónico a [email protected]. Estaré feliz de poder ayudarte.
Recomendado:
ESP32 WordClock con desplazamiento en matriz de LED: 5 pasos (con imágenes)
ESP32 Scrolling WordClock en LED Matrix: En este proyecto creo un Scrolling WordClock con un ESP32, LED Matrix y una caja de puros. Un WordClock es un reloj que indica la hora en lugar de simplemente imprimirlo en la pantalla o tener manecillas que se puedan leer. Este reloj te dirá que son 10 minutos pa
Pantalla de desplazamiento de matriz de puntos LED de bricolaje con Arduino: 6 pasos
Pantalla de desplazamiento de matriz de puntos LED de bricolaje con Arduino: Hola Instrumento Este es mi primer Instructable. En este Instructable, mostraré cómo hago una pantalla de desplazamiento de matriz de puntos LED de bricolaje usando Arduino como MCU.Este tipo de pantallas aparecen en estaciones de tren, estaciones de autobuses, calles y muchos más lugares. Allí
DESPLAZAMIENTO DE SEGUIDORES DE INSTAGRAM EN PANTALLA DE MATRIZ DE PUNTOS LED DE 8X32 UTILIZANDO ESP32: 4 Pasos
DESPLAZAMIENTO DE SEGUIDORES DE INSTAGRAM EN PANTALLA DE MATRIZ DE PUNTOS LED 8X32 USANDO ESP32: Este es mi segundo instructivo y lo siento por mi divertido inglés. En este instructivo vamos a desplazar a nuestros seguidores de Instagram en una pantalla led de matriz de puntos de 8X32
Pantalla LED de desplazamiento 16x64 P10 con microcontrolador PIC16F877: 5 pasos (con imágenes)
Pantalla LED de desplazamiento 16x64 P10 usando el microcontrolador PIC16F877: En este instructivo, se describe cómo conectar la pantalla de matriz LED de 16 x 64 (p10) con el microcontrolador PICI6F877A. Los datos se envían al microcontrolador a través de UART que se almacena en la EEPROM y los datos se mostrarán en la pantalla de matriz LED. Eso
El molesto eliminador de clics de la rueda de desplazamiento (desplazamiento suave): 5 pasos
El molesto eliminador de clics de la rueda de desplazamiento (desplazamiento suave): ¿te molesta el sonido de la rueda de desplazamiento? Bueno, ¡aquí está tu oportunidad de sacar ese clic de ese pergamino! si rompes tu mouse, no es mi culpa. Estoy haciendo este mod con un mouse logitech. no estoy seguro de que funcione en otro mouse b