INFORMACIÓN
El 74HC595 es un registro de desplazamiento/turnos de 16 pines que consiste en un pestillo de tipo D junto con un registro de turnos dentro del chip. Recibe datos de entrada en serie y, a continuación, envía estos datos a través de pines paralelos. Además de las salidas paralelas, también proporciona una salida serie. Tiene entradas de reloj independientes para el registro de turnos y el pestillo D.
El 74HC595 es de gran ayuda cuando se requiere ampliar la cantidad de salidas digitales, ya que se puede conectar 8 LED con tan solo 3 pines del microcontrolador o Arduino.
ESPECIFICACIONES Y CARACTERÍSTICAS
- Tipo: Registro de desplazamiento de 8 bits
- Matrícula: 74HC595
- Encapsulado: PDIP-16
- Montaje: THT
- Pitch: 2.54 mm
- Número de pines: 16 pines
- Voltaje de alimentación (VCC): 2 V a 6 V
- Número de bits: 8 bit
- Consumo de corriente: 80 μA
- Frecuencia de reloj máxima opera dependiendo el VCC:
- 2 VCC la frecuencia es 4.8 ns
- 4.5 VCC la frecuencia es 24 ns
- 6 VCC la frecuencia es 28 ns
- Temperatura de trabajo: – 40 C a + 85 C
- Peso: 1.5 g
DOCUMENTACIÓN Y RECURSOS
INFORMACIÓN ADICIONAL
¿Cómo probar el 74HC595 y el Arduino uno?
A continuación se presentará el diagrama de conexión para poder usar el CI 74HC595 con un Arduino uno y así poder hacer un corrimiento básico con diodos led.

¿Cómo programar el Arduino uno para que funcione correctamente el 74HC595?
// Código demostrativo
int pinLactch = 12; // Declaración del pin para el Latch o RCK
int PinReloj = 13; // Declaración del pin para el pulso de reloj
int PinDatos = 11; // Declaración del pin de datos que se mandaran
byte leds = 0; // Se utiliza para poder declarar una variable de 8 bits
void setup() // Declaración de como funcionarán los pines, para este caso serán comos salidas
{
pinMode(pinLactch, OUTPUT);
pinMode(PinDatos, OUTPUT);
pinMode(PinReloj, OUTPUT);
}
void loop()
{
leds = 0; // Todos los leds se encuentran en 0 o apagados
updateShiftRegister(); // Se manda a llamar a la función para que comience la transmisión
// de datos al 74HC595
delay(100); // un retraso de 100 ms
for (int i = 0; i < 8; i++) // Se inicia un ciclo for y se declara una variable de tipo entero
// esto con el fin de poder ir encendiendo led tras led
{
bitSet(leds, i); // bitSet funciona con dos parámetros, el primero que es leds es la variable numérica que se quiere activar
// y el siguiente parámetro es el bit a activar, comenzando por el bit menos significativo
updateShiftRegister(); // nuevamente se manda a llamar a la función para que el estado de los led cambie con respecto //a la variable "leds"
delay(100); // se genera un retraso de 100ms
}
}
void updateShiftRegister() //Función de usuario
{
digitalWrite(pinLactch, LOW); // Primero el latch se encuentra un estado bajo o 0
shiftOut(PinDatos, PinReloj, LSBFIRST, leds); // la función shiftOut desplaza a la salida un byte de datos, bit por bit.
// Comenzando la transmisión dependiendo de como se mande, puede ser por el bit
// más significativo o el bit menos significativo
// Parámetros
// PinDatos: pin de salidas de los bits
// PinReloj: el pin que cambia cada que el PinDatos a sido establecido de manera correcta
// LSBFIRST: Dirección de desplazamiento de los bits, este caso es el pin de datos menos significativo.
// Si se quiere cambiar el orden se debe poner MSBFIRST, esto manda el bit más significativo al comienzo.
// El bit más significativo del 74HC595 es el QA y el menos significativo es el QH
// leds: Los datos que se desplazan.
digitalWrite(pinLactch, HIGH); // Nuevamente cambiar el latch de estado para poder hacer la transmisión de datos.
}

Sensor Infrarrojo Sharp GP2Y0A21YK0F de 10-80cm
Tubo de Teflón PTFE 2x4mm 1 Metro para Filamento 1.75mm
Pasta Térmica 5g
Tubo de soldadura 60/40 1mm 17g










Valoraciones
No hay valoraciones aún.