En ARDUINO tenemos 20 pines de E / S, por lo que podemos programar 20 pines de UNO para usar como entrada o salida. Aunque hay más pines en el controlador ATMEGA328P que en UNO, esto se debe a que al diseñar la placa algunos pines están predeterminados.
Ahora bien, para algunas aplicaciones necesitamos más de 30 pines, digamos si queremos diseñar un CUBO LED de 5x5x5, entonces para esto necesitamos 5x5 + 5 = 30 pines. Para tales casos utilizamos chips convertidores de serie a paralelo o registro de desplazamiento. Un chip de registro de desplazamiento toma datos de la placa UNO en serie y da salida en una configuración paralela de 8 bits.
Componentes requeridos
Hardware: placa Arduino uno, pines de conexión, resistencia de 220 Ω, LED (ocho piezas), 74HC595 IC, placa de pruebas.
Software: Arduino todas las noches
Diagrama de circuito y explicación de trabajo
Aquí vamos a enviar datos en tamaño de ocho bits a través de un solo canal para cambiar el registro. El registro de desplazamiento toma los datos en serie y los almacena en su memoria. Una vez que el controlador envía los datos, vamos a enviar un comando al registro de cambio para mostrar los datos en la salida, con este comando el registro de cambio envía datos en paralelo.
Esta salida se muestra mediante ocho LED conectados en la salida.
Para conectar el registro de desplazamiento a Arduino UNO, debemos hacer dos cosas:
|
Primero necesitamos establecer tres pines de UNO como salida. Luego, debemos conectar el pin digital, el pin de reloj y el pin de pestillo a estos tres pines de salida. Después de eso, necesitamos decirle a UNO qué pin del chip está conectado a los pines de la placa UNO. Esto se hace simplemente escribiendo el comando “
shiftOut(dataPin, clockPin, data);
”. Los datos aquí pueden estar en binario, decimal o hexadecimal. La información de ocho bits que debe enviarse se escribe en lugar de "datos".
Los datos enviados se realizan como:
Desactive el pestillo, esto le dice al chip que no muestre la salida por ahora.
Por ocho veces enviaremos datos con reloj en serie, por lo que reloj alto bajo reloj de datos bajo y así sucesivamente.
Habilite el pestillo, esto le dice al chip que muestre datos de ocho bits.
El funcionamiento de ARDUINO con SHIFT REGISTER se explica paso a paso en el código C que se indica a continuación: