Tabla de contenido:

Matriz de LED de botón pulsador: 4 pasos
Matriz de LED de botón pulsador: 4 pasos

Video: Matriz de LED de botón pulsador: 4 pasos

Video: Matriz de LED de botón pulsador: 4 pasos
Video: 💡 Cómo hacer un Botón INTERRUPTOR (Toggle Button) con Arduino 【 2021 】 - Capítulo #28🔋 2024, Noviembre
Anonim
Matriz LED de pulsadores
Matriz LED de pulsadores

Este proyecto se puede considerar como otro proyecto introductorio de Arduino que es un poco más avanzado que el típico proyecto de 'parpadeo de un LED'. Este proyecto incorpora una matriz de LED, botones pulsadores, registros de cambio (que pueden guardar pines en su placa Arduino) y un concepto clave llamado multiplexación. ¡Espero que el tutorial te resulte esclarecedor y te desafíes a mejorarlo!

Suministros

(1x) Arduino Uno

(5x) Botones táctiles

(2x) Condensadores de 0,1 uF

(2x) Condensadores de 1 uF

(8x) 1k resistencias

(5x) resistencias de 10k

(2x) registros de cambio 74HC595

Cables de puente

Alambre negro

Cable rojo

Paso 1: Paso 1: Hacer una matriz de LED

Paso 1: hacer una matriz de LED
Paso 1: hacer una matriz de LED
Paso 1: hacer una matriz de LED
Paso 1: hacer una matriz de LED
Paso 1: hacer una matriz de LED
Paso 1: hacer una matriz de LED

El tutorial que utilicé para hacer la matriz LED de 8x8 en este proyecto se puede encontrar aquí. Existen configuraciones comunes para una matriz de LED:

a) Ánodo de fila común

b) Cátodo de fila común

Como utilicé la disposición de cátodo de fila común de la matriz, lo discutiré principalmente aquí y puede extender la misma lógica a la disposición de ánodo de fila común. En la disposición de cátodo de fila común, los cátodos de los LED (o terminales negativos, que es el lado más corto de un LED) están conectados entre sí en filas, mientras que los ánodos (o terminales positivos, que es el lado más largo de un LED) están conectados entre sí en columnas.. Para abordar un LED en particular, tire de la fila de cátodo en la que el cátodo de LED está en baja y tire de la columna de ánodo en la que el ánodo de LED está en alta.

Nota: Al hacer la matriz de LED que se muestra en el enlace anterior, asegúrese de conectar las columnas del ánodo con las resistencias de 1k ohmios antes de aplicar cualquier cantidad de voltaje a los LED.

Paso 2: Paso 2: Cableado de los botones pulsadores y registros de cambios

Paso 2: Cableado de los botones pulsadores y registros de cambios
Paso 2: Cableado de los botones pulsadores y registros de cambios
Paso 2: Cableado de los botones pulsadores y registros de cambios
Paso 2: Cableado de los botones pulsadores y registros de cambios
Paso 2: Cableado de los botones pulsadores y registros de cambios
Paso 2: Cableado de los botones pulsadores y registros de cambios
Paso 2: Cableado de los botones pulsadores y registros de cambios
Paso 2: Cableado de los botones pulsadores y registros de cambios

El cableado para los botones pulsadores y los registros de cambio se muestra arriba. Me gustaría señalar que los registros de desplazamiento en el diagrama del circuito no muestran los pines de tierra (pin 8 del IC) y Vcc o fuente de alimentación (pin 16 del IC) para los chips; el pin de tierra está conectado al pin GND de la placa Arduino y Vcc está conectado al pin 5V de la placa Arduino. El pin Vcc de cada registro de desplazamiento también está conectado a un capacitor de 0.1uF conectado a tierra.

Nota: Las salidas de cada registro de desplazamiento se enumeran como QA a QH (ignore QH *). Se enumeran en términos del bit menos significativo (LSB) (para QA) al bit más significativo (MSB) (para QH), es decir, QA controlaría la fila o columna 0, etc.

Paso 3: Paso 3: Carga del código

El código para controlar la matriz de LED se adjunta a este tutorial. Traté de comentar la mayor parte del código que pude para que quedara muy claro cómo funciona el programa. La base principal del programa es que hay una matriz que realiza un seguimiento de los LED que deben estar encendidos o apagados. Para que los distintos LED se muestren correctamente sin encender accidentalmente diodos no deseados, se debe utilizar un concepto llamado multiplexación. La multiplexación consiste esencialmente en encender LED individuales en una fila particular, mientras que todos los demás LED en otras filas, luego hacen lo mismo para las filas restantes. El truco es que si los LED recorren las filas lo suficientemente rápido, sus ojos pueden notar que las filas individuales se encienden una a la vez. Si desea explorar más formas en que puede engañar a sus ojos con LED, es posible que desee analizar el concepto de persistencia de la visión (se puede buscar fácilmente en Google o Instructables).

La forma en que se actualizan las columnas de ánodo y las filas de cátodo es a través de una función definida por el usuario llamada 'UpdateShiftRegisters'. Esta función primero hace girar el pin de cierre, que controla si se envía un nuevo byte (8 bits) a la salida, bajo, por lo que no es posible realizar cambios en las salidas mientras se escriben nuevos bits en el chip. Luego, utilizando una función incorporada de Arduino llamada 'ShiftOut', que maneja específicamente el envío de datos a los registros de desplazamiento, el programa escribe cualquier fila (cátodo) que sea baja y qué columnas (ánodo) deberían ser altas. Finalmente, el pasador del pestillo se tira hacia arriba para actualizar la salida (los LED).

Paso 4: información / recursos adicionales

Aquí hay algunos enlaces a sitios web o libros que pueden brindar información adicional sobre este proyecto:

learn.adafruit.com/adafruit-arduino-lesson-4-eight-leds/arduino-code

www.arduino.cc/en/tutorial/ShiftOut

www.ti.com/lit/ds/symlink/sn74hc595.pdf

www.youtube.com/watch?v=7VYxcgqPe9A

www.youtube.com/watch?v=VxMV6wGS3NY

Primeros pasos con Arduino, segunda edición por Massimo Banzi

Recomendado: