Registro de desplazamiento 74HC595

se trata de una guía de inicio rápido para el registro de desplazamiento 74HC595.

El registro de desplazamiento funciona de una manera bastante sencilla, pero puede ser modificado para llegar a ser muy complicado pero muy útil.

El concepto básico es que tiene 8 pines de salida de los 74HC595.  Este ejemplo permite decir que estas se envían a través de una resistencia de un LED.  Así que tenemos pins Q0 a Q7 como los pines de salida.  El resto puede considerarse pines de control, su función exacta es contornos en el cuadro anterior.

Podemos controlar el cambio del registro con impulsos de reloj.  Como elevamos la señal que va al pin de reloj alto, el reloj se mueve hacia adelante un paso.  y cuando nos tire alta y baja otra vez cambia de puesto otro.  Cada vez que cambio el reloj cambiar la entrada a uno diferente de los ocho registros.  Esencialmente estamos controlando la salida de cada uno de los ocho pernos uno a uno, y a medida que avanzamos hacia adelante una señal de reloj, cambiar al siguiente pin de salida para control.

Hasta ahora esto suena simplemente como un tablero de interruptor, que es realmente lo que es, pero esta es la clave.

Podemos utilizar el pin de reloj de registro de almacenamiento de información para controlar el interruptor "Master".  Esencialmente como se utiliza es que podemos tirar baja antes de que enviemos nuestros valores de registro.  Entonces enviamos todos los valores de registro de ocho, ya sean altas o bajas, y cuando terminamos nos tire el almacenamiento Registro reloj alta.  Lo que sucederá es el valor que usted envíe serán almacenados en cada pin de salida, pero no activado aún.  Cuando tire el almacenamiento Registro reloj alta todas las salidas se convertirá en activo y que pines asignados como alta iluminarán el LED.

Otro beneficio es el maestro Reclear Pin.  Podemos usar este pin para despejar todas nuestras salidas y todo a bajo.

Así que esto es sólo un ejemplo sencillo.  El registro de desplazamiento puede ser una gran herramienta cuando usted es corto en los pines de salida, tomando 8 salidas entradas de sólo 3 datos reales.  Puede añadirse que para algunas aplicaciones realmente complicados, y pueden encadenarse en Margarita juntos para aún más opciones de salida.

Esperemos que esto le ayudará a empezar y darle algunos conocimientos sobre su concepto básico.

He incluido un sketch de arduino de la muestra y el esquema de la Página Web de arduino que se enciende cada LED uno en un momento dado el Serial Monitor de entrada (0-9)

-------------------------------------- CODE START --------------------------------------
/*
Ejemplo de registro de cambio
para el registro de desplazamiento 74HC595

Este sketch da entrada serial Lee y utiliza para ajustar los pernos
de un registro de desplazamiento 74HC595.

Hardware:
* Registro de desplazamiento 74HC595 conectado a los pines 2, 3 y 4 de la Arduino
como se detalla a continuación.
* LEDs conectados a cada una de las salidas del registro de desplazamiento

Creado el 22 de mayo de 2009
Creado el 23 de marzo de 2010
por Tom Igoe

*/

PIN conectado a la clavija de enganche (ST_CP) del 74HC595
const int latchPin = 8;
PIN conectado al pin de reloj (SH_CP) del 74HC595
const int clockPin = 12;
PIN conectado a datos en (DS) del 74HC595
const int dataPin = 11;

void setup() {}
Set de clavijas de salida porque se abordan en el bucle principal
pinMode (latchPin, salida);
pinMode (dataPin, salida);
pinMode (clockPin, salida);
Serial.Begin(9600);
Serial.println("RESET");
}

void loop() {}
Si (Serial.available() > 0) {}
ASCII '0' a '9' caracteres son
representada por los valores de 48 a 57.
así que si el usuario escribe un número del 0 al 9 en ASCII,
puede restar 48 para obtener el valor real:
int bitToSet = Serial.read() - 48;

escribir en el registro de desplazamiento con la broca correcta alta:
registerWrite (bitToSet, HIGH);
}
}

Este método envía los bits para el registro de desplazamiento:

{} void registerWrite (int whichPin, int whichState)
los bits que desea enviar
byte bitsToSend = 0;

Apague la salida para que las clavijas no enciende
mientras estás cambiando brocas:
digitalWrite (latchPin, bajo);

activar el bit más alto siguiente en bitsToSend:
bitWrite (bitsToSend, whichPin, whichState);

desplazar los bits de salida:
shiftOut (dataPin, clockPin, MSBFIRST, bitsToSend);

Encienda la salida para que los LEDs pueden iluminar:
digitalWrite (latchPin, HIGH);

}
--------------------------------------- CODE END ---------------------------------------

Voy a intentar volver a esto añadir una explicación más detallada de este código.

Artículos Relacionados

Arduino 16 LEDs con dos registros de desplazamiento 74HC595 (pins ilimitados)

Arduino 16 LEDs con dos registros de desplazamiento 74HC595 (pins ilimitados)

Este es mi primer instructivo, espero que te guste. He estado jugando con LEDs para un tiempo y me di cuenta de que estoy bastante limitada con los pines de Arduino y no se pueden hacer grandes proyectos que requiere una gran cantidad de pines. Se tr
Cómo utilizar un registro de desplazamiento 74HC595 con un AVR ATtiny13

Cómo utilizar un registro de desplazamiento 74HC595 con un AVR ATtiny13

si usted ha estado jugando con microcontroladores y electrónica entonces usted probablemente ha visto pantallas de matriz de puntos LED y otros proyectos que utilizan registros de desplazamiento como displays de 7 segmentos y más. Este instructable p
Registro de desplazamiento 74HC595 Desmitificada

Registro de desplazamiento 74HC595 Desmitificada

explicación preliminares o precaucionesConsulte siempre las hojas de datos antes de realizar cualquier prueba en un circuito integrado.Operaciones de CMOS:Un importante a tener en cuenta es el 74HC595 (HC) es de tecnología CMOS. Las señales de salida
Controlador de matriz de Led Arduino 8 * 8 con registros de 2 * 74HC595 shift

Controlador de matriz de Led Arduino 8 * 8 con registros de 2 * 74HC595 shift

Compré una matriz de Led 8 x 8 incluye un tablero de conductor con un chip MAX7219CNG. Por desgracia, este chip no estaba funcionando correctamente. Así que decidí construir mi propio controlador con la ayuda de 2 registros de desplazamiento 74HC595.
Control de display LCD ATTiny45/85 con un registro de desplazamiento, programado en Arduino

Control de display LCD ATTiny45/85 con un registro de desplazamiento, programado en Arduino

Arduino funcionando en un ATTiny45 de chip 85 es un enorme ahorro de costo para mini-proyectos. Sin embargo, no se puede conectar una pantalla de LCD compatible HD44780 necesita 6 salidas, pero sólo tiene 5. Este problema puede resolverse mediante el
Cómo cambio de registros de trabajo (74HC595)

Cómo cambio de registros de trabajo (74HC595)

¡ Hola! En esto estamos hablando de registros de cambio. Si no sabes qué cambio de registro es básicamente una buena manera de aumentar el número de salidas de los microcontroladores. 74HC595 es un registro de desplazamiento de 8 bits (es decir,) pue
Conducción de dos tubos de Nixie con un Arduino a través de un registro de desplazamiento y dos SN74141s.

Conducción de dos tubos de Nixie con un Arduino a través de un registro de desplazamiento y dos SN74141s.

tubos de Nixie son padrisima mirando y se están convirtiendo en muy populares por su aspecto 'retro'. Aunque hay una serie de tutoriales que hay sobre el uso de tubos nixie y algunas unidades envasados agradables (ver éstas agradables de ogi lumen y
Conducir un HD44780 Mostrar utilizando un registro de desplazamiento y una frambuesa Pi

Conducir un HD44780 Mostrar utilizando un registro de desplazamiento y una frambuesa Pi

en mi último instructable, cubre cómo ejecutar un registro de desplazamiento con un Raspberry Pi y clase de dio a entender que una cosa que podría hacer con él se ejecuta una pantalla HD44780 basado.  Que será lo que este instructable cubrir.  Este i
No contador para ATMega328P-PU ninguna placa de arduino de la necesidad de ningún registro de desplazamiento y no transistores.

No contador para ATMega328P-PU ninguna placa de arduino de la necesidad de ningún registro de desplazamiento y no transistores.

Ahora me gustaría mostrarte cómo hacer un contador con ánodo común. no cambio de registro ningún transistor necesario de pequeños leds. Si usted tiene cátodo común, no hay problema solo tienes que cambiar el LV, alto voltaje y viceversa.La belleza de
4 x 4 x 4 actualización de cubo de LED con cambio de registros (74hc595)

4 x 4 x 4 actualización de cubo de LED con cambio de registros (74hc595)

este proyecto se inició con una bolsa de LEDs que había extraído de las linternas, para convertir a linternas UV. Sabía que encontraría algo divertido para utilizar con, pero fue meses antes de que me di cuenta de que hacer con ellos. Cuando vi un cu
Multiplexado con Arduino y el 74HC595

Multiplexado con Arduino y el 74HC595

el 74HC595 es un producto fácil y barato (unos 60 céntimos cada uno) forma de aumentar el número de salida digital de los pernos en su Arduino.  En este tutorial te mostraré cómo conducir hasta 16 LEDs con un 74HC595 usando una técnica llamada multip
Matriz de LED con cambio de registros

Matriz de LED con cambio de registros

este instructable pretende ser una explicación más completa que otros disponibles en línea. En particular, esto le dará más explicación de hardware que está disponible en la marquesina de LED instructable por led555.ObjetivosEste instructable present
Gran pantalla de LED de desplazamiento

Gran pantalla de LED de desplazamiento

Este es un instructivo para crear una pantalla de LED desplazamiento grande (600 mm x 400 mm).Este fue un proyecto en Hackspace de Nottingham en el Reino Unido junto a Instructables. Instructables enviado el hackspace cientos de grandes (10mm) LEDs p
Controlador de matriz de LED Arduino 8 x 8 RGB con Shift 4 registros y Sensor de temperatura

Controlador de matriz de LED Arduino 8 x 8 RGB con Shift 4 registros y Sensor de temperatura

La primera mitad de este video instructivo muestra que un proyecto terminado de un Arduino con 4 registros de desplazamiento (74HC595) utilizado para controlar y 8 x 8 matriz de LED RGB. También hay un sensor de temperatura DS18B20 utilizado para mos