Utilizando una matriz de puntos LED con Arduino y Shift Register (4 / 5 paso)

Paso 4: Puertos de la entrada-salida de conservar con un cambio de registro

Así que ahora nuestro microcontrolador pueda enviar datos a la matriz de puntos LED pero que utiliza ocho puertos de la entrada-salida. Excluye utilizando un ATtiny en un DIP 8 pines e incluso con un Arduino nuevos deportivos un ATmega328p que es un montón de puertos de la entrada-salida para un LED. Podemos conseguir alrededor de esto, sin embargo, mediante el uso de un IC que se llama un cambio de registro.

Un momento para engranajes "cambio"...
Un registro de cambio puede ser entendido mejor por pensar en las dos palabras que componen su nombre: "cambio" y "registro". El turno de palabra se refiere a cómo están moviendo a través del registro de los datos. Aquí (como en nuestro Arduino y microcontroladores, en general) un registro es una ubicación que contiene los datos. Esto logra por implementsing una cadena lineal de circuitos de lógica digitales llamado "flip flops" que tiene dos Estados estables que pueden ser representados por un 1 o 0. Así, poniendo ocho ojotas juntos que tiene un dispositivo que es capaz de sostener y que representa un byte de 8 bits.

Apenas como hay varios tipos de flip flops y varios variaciones sobre un tema de registros de desplazamiento (que arriba/abajo contadores y Johnson contadores), también hay varios tipos de registros de cambio partiendo de qué datos está trabados en el registro y cómo esos datos están de salida. En base a esto, considerar los siguientes tipos de registros de desplazamiento:

  • Serie / paralelo hacia fuera (SIPO)
  • Serie de serie / salida (SISO)
  • Paralelo serie a (PISO) / en
  • Paralelo / paralelo hacia fuera (PIPO)

Dos de nota son SIPO y PISO. Registros SIPO toman datos en serie, es decir, un bit tras otro, cambiando la broca previamente entrada sobre para el siguiente flip flop y enviando los datos en todas las entradas a la vez. Esto hace una buena serie a paralelo convertidor. Registros de cambio PISO, por el contrario, tienen entradas paralelas, por lo que todos los bits se introducen a la vez, pero salen uno a uno. Y usted lo conjeturaba, esto hace que para un buen paralelo a serial converter. El registro de desplazamiento que queremos usar para reducir el número de pines de I/O nos permitiría tomar los 8 pernos IO que hemos utilizado anteriormente y reducir abajo a uno, o tal vez sólo un par, considerando que podemos necesitar controlar cómo nos los bits de entrada. Por lo tanto, el registro de desplazamiento que vamos a usar es una serie / paralelo.

Conectar el registro de desplazamiento entre el LED y el Arduino
Usar un registro de cambio es fácil. La parte más difícil es visualizar a las clavijas de salida de datos y cómo los dígitos binarios va a terminar en la IC, y cómo eventualmente aparecerán en el LED. Tome un momento para planificar esto.

1. Fije 5V al pin 14 (arriba a la derecha) y tomar el pin 7 (abajo izquierda) hasta suelo.
2. el registro de desplazamiento tiene dos entradas serie pero sólo usaremos uno, así que conectar dos a 5V
3. no utilizar el pin claro (usado a cero hacia fuera todas las salidas) hasta dejarlo flotante o atacar a 5V
4. Conecte un puerto digital de IO para pin del registro de desplazamiento. Este es el pin de entrada serial.
5. Conecte un puerto digital de IO al pin 8 (abajo a la derecha). Este es el pin de reloj.
6. Conecte las líneas de datos desde Q0 a Q6. Sólo estamos utilizando 7 bits porque el conjunto de caracteres ASCII utiliza solamente siete bits.

Usé PD2 para hacer salir mis datos en serie y PD3 para la señal de reloj. Para los pines de datos, conecté Q0 a D6 en el LED y sigue así (Q1 a D5, Q2 D4, etc.). Ya que nos estamos enviando datos en serie que tenemos que examinar la representación binaria de cada personaje queremos enviar, mirando de 0 y 1 y la salida de cada bit en la línea serie. He incluido una segunda versión de la fuente de dotmatrixled.c junto con un archivo make a continuación. Ciclos a través del juego de caracteres y muestra todo incluso los caracteres (si es raro pensar que una carta podría ser par o impar, pensar en la representación binaria de un momento). Tratar de averiguar cómo hacer alternar entre Mostrar todos los caracteres impares. Puede experimentar aún más con las conexiones entre el registro de desplazamiento, la matriz de puntos LED y su Arduino. Hay varias funciones de control entre el LED y el registro que le permite afinar el control sobre cuando los datos se muestran.

Sí... hemos pasado de tener que utilizar ocho puertos de la entrada-salida a usar sólo dos!

Artículos Relacionados

Juego de serpiente de matriz de puntos LED con control remoto TV

Juego de serpiente de matriz de puntos LED con control remoto TV

Snake es un videojuego que se originó durante la década de 1970 en arcadas y ha mantenido popularidad desde entonces, convirtiéndose en algo de un clásico. Después se convirtió en el estándar juego precargado en los teléfonos Nokia en 1998, serpiente
Utilizando una desecho normal alarma PIR con Arduino

Utilizando una desecho normal alarma PIR con Arduino

Si eres como yo y no les gusta tirar basura artículos electrónicos, puede tener un viejo PIR sensor de alarma de una casa ordinaria en la parte inferior de la caja de basura.Fácilmente puede conectarlo a su arduino para detectar movimiento, simplemen
Paraguas LED con Arduino

Paraguas LED con Arduino

el paraguas del LED con Arduino combina un paraguas, una matriz de LED 8 x 10 y un microcontrolador Arduino para crear un controlable, programable LED experiencia en la intimidad de su propio paraguas. Este proyecto fue inspirado por la cobertura elé
Diferentes métodos de conducción 7 exhibiciones de segmento LED con Arduino

Diferentes métodos de conducción 7 exhibiciones de segmento LED con Arduino

me gustaría mostrar algunos métodos diferentes para conectar displays de 7 segmentos LED con un Arduino o Atmega 328 IC. Sólo son simples contra códigos ya sea automáticamente cuenta mediante el código incrementados o disminuye a través de un par de
Pantalla de matriz de puntos LED

Pantalla de matriz de puntos LED

este es un simple cómo hacer su propia exhibición de LED de matriz de puntos personalizado. Iré añadiendo el programa completo con una explicación a la luz de los LEDs con. También es muy hackeable, que puede cambiarlo para que se adapte.Yo decieded
Múltiples Matrices de LED con Arduino

Múltiples Matrices de LED con Arduino

Este proyecto se basa en un taller que organizamos en Makespace Madrid como parte de "La noche de la electrónica con Jameco".  En un anterior instructable ya presentamos cómo manejar una sola matriz de LED con Arduino. En este proyecto nos conec
Control de un LED con arduino y Wifly shield

Control de un LED con arduino y Wifly shield

Para demostrar cómo puede controlar dispositivos a través de wifi utilizando el arduino wifly shield, se interruptor enciende y apaga un LED mediante el envío de una petición http desde mi navegador al escudo wifly.Requisitos:1. Arduino uno2. Wifly s
Control simple gráfico de barras de LED con Arduino

Control simple gráfico de barras de LED con Arduino

en este tutorial te mostraré cómo controlar simple 10 matriz de gráfico de barras LED con Arduino o Arduino clon MCU y MAX7219 (también funciona con MAX7221) chip de controlador de LED.Aquí tenemos en vídeo de producto terminado en acciónSobre matric
Control de LED con Arduino Bluetooth y Android. (Parte 1)

Control de LED con Arduino Bluetooth y Android. (Parte 1)

Este instructable es un simple tutorial explicar cómo controlar un LED mediante Bluetooth de Android.Se necesita:Arduino UNOResistencias 300Ω (x 3)Resistencia 150ΩLEDPuentes;Módulo de Bluetooth (HC-06/otros);Teléfono Android;Bluetooth Apk SPP (Lite s
Parpadeo LED con Arduino Nano

Parpadeo LED con Arduino Nano

Hola amigos,Ver un LED que parpadea es muy divertido, pero cuando haces uno como el que por ti mismo entonces la diversión es aún más. ^_^Así, que la diversión comience,En este instructable, he mostrado cómo a parpadear un LED con Arduino Nano.Nota:
6 péndulo de LED con Arduino

6 péndulo de LED con Arduino

esto es lo que necesita para hacer 6 péndulo LED con Arduino:6 x LEDS6 x 330 Ohm resistencias7 x Jumper cables1 x placa o Perfboard1 x Arduino Uno o Arduino Mega 2560Este proyecto no tiene mucho que ver en todo.Este es el código que he usado:int led1
Controlar la velocidad intermitente de un LED con Arduino y la olla (con video)

Controlar la velocidad intermitente de un LED con Arduino y la olla (con video)

Hola amigos,En este tutorial y video, mostraré cómo controlar la velocidad de parpadeo de un LED con Arduino Nano y una resistencia variable o potenciómetro también conocido como la olla (forma corta de potenciómetro).Este tutorial es similar a un có
Control de LED con Arduino y C#

Control de LED con Arduino y C#

Hola amigos este es mi primer Arduino Tutorial el control de un programa de LED con Arduino y C#.Se necesitaArduinoResistencia de 1KLEDSoftwareArduino Software - www.arduino.ccMicrosoft visual C# / Visual StudioLED se conecta al Pin 13.El vídeo, prob
ENTRETELA de una matriz de puntos de 8 X 8 LED DISPLAY con un AT89C51 microcontrolador

ENTRETELA de una matriz de puntos de 8 X 8 LED DISPLAY con un AT89C51 microcontrolador

Interfaces en un 8 x 8 matriz de puntos puede ser divertido y es fácil de jugar, así que vamos a entrar directamente en ella!Paso 1: Lo que usted necesitará:AT89C51 MICRCONTROLLERDOT MATRIX 8 X 8UNA PLACA DE DESARROLLO OMÓDULO DE MATRIZ DE PUNTOPaso