Estoy aprendiendo Arduino y una cosa que me llamó la atención fue el uso de Shift Registers para expandir la cantidad de pines digitales.
He visto muchos tutoriales que usan 74HC595 Shift Register, pero mi tienda local no vende este Shift Register exacto, pero vende muchos otros como:
74HC166
CD4015
74HC165
74HC164
CD4014
74HC595 SMD
Todos parecen ser registros de desplazamiento de 8 bits.
Quiero usarlos para encender algunos LED usando un Arduino. Me imagino que tienen propósitos muy específicos, pero sobre todo, ¿podría usar alguno de ellos en mi proyecto?
¿Cuál es la principal diferencia entre estos registros de desplazamiento?
arduino
shift-register
usuario3347814
fuente
fuente
Respuestas:
La forma más fácil de responder una pregunta como esta es mirar las hojas de datos de los componentes:
CD4015 es parte de la gama más antigua de chips de la serie 4000. Cuando se introdujeron, eran CMOS, mientras que 7400 chips eran TTL, aunque hoy en día los chips de tipo 74HC también son CMOS. Todavía ven algún uso porque funcionan con un rango de voltaje más amplio que los chips 74HC (hasta 15V, frente a 7V máximo para 74HC o 5.5V para 74LS). También son algo más lentos (máximo 3MHz a 5V, frente a 25MHz para el 74HC595).
El CD4014 tiene especificaciones similares al 4015, pero en lugar de tener pines que le permiten tomar todos los valores que se han desplazado a la vez, le permite poner múltiples valores a la vez y luego cambiarlos uno a la vez. Entonces, el CD4015 es como un convertidor de serie a paralelo, pero este es un convertidor de paralelo a serie.
74HC166 tiene una salida en serie de entrada paralela como el CD4014, pero está en el rango de 74HC, por lo que tiene un rango de voltaje más pequeño y una respuesta más rápida de ese rango.
74HC165 permite la entrada en serie y en paralelo, y es de salida en serie. También proporciona una salida invertida y no invertida.
El 74HC164 es serial y paralelo, como el CD4015, pero es una serie 74HC más rápida y de menor voltaje.
74HC595 (o más exactamente, SN74HC595J) y 74HC595-SMD (que podrían ser varias variaciones menores diferentes) son el mismo componente en diferentes paquetes. El primero es un paquete tradicional "DIP", que es probablemente lo que desea si está trabajando en una placa de pruebas, una placa de cartón o prototipos perforados. El último es un paquete de montaje en superficie (probablemente SOIC) que es más pequeño y más fácil de soldar a una PCB, pero puede ser un poco difícil para la creación de prototipos. Estos son serial-in paralel-out, pero también tienen un conjunto separado de registros en los que se pueden copiar los datos que se están ingresando. Esto significa que se puede hacer que sus salidas paralelas cambien simultáneamente, en lugar de tener datos inválidos en ellas mientras se cambian los nuevos datos.
Algunas otras fichas que es posible que desee echar un vistazo:
fuente
Para agregar a la respuesta de schadjo:
Los dos más utilizados para Arduino (pero no solo) son 74HC165 y 74HC595 .
El 74HC165 se puede utilizar para conectar hasta 8 entradas (por ejemplo, conmutadores) a solo unos pocos GPIO.
El 74HC595 se puede utilizar para conectar hasta 8 salidas (p. Ej., LED) a unos pocos GPIO.
fuente
Para un recién llegado, la distinción principal en los registros de desplazamiento es probablemente la entrada / salida en serie paralela (PISO) y la entrada / salida en serie paralela (SIPO).
Como los nombres lo sugieren, un PISO toma, por ejemplo, una señal de 8 bits de ancho, y le permite cambiar esos bits individualmente, uno a la vez (en serie) con pulsos de reloj únicos.
Un SIPO le permite cambiar cada uno de los bits de forma secuencial, luego hacer que todos, digamos, 8 de esos bits estén presentes en 8 pines de salida simultáneamente, es decir, en paralelo.
fuente
74HC595 (thruhole o SMD) tiene un límite de 70 mA en el pin Vcc y Gnd, por lo que debe seleccionar resistencias de límite de corriente que permitan 8-9 mA. (8 salidas x 9mA = 72mA).
Para seleccionar una resistencia: (5V - Vf) /. 008 = resistencia, con Vf el voltaje directo del LED (ejemplo, ~ 2.5V para un LED rojo típico, algunos verdes y amarillos, y a menudo algo más alto para otros colores como el azul , blanco).
(5V - 2.5V) /. 008A = 312.5 ohmios, por lo que 300 o 330 ohmios lo harán muy bien. 270 también estaría bien, para 9.25mA. 1K reduciría un poco el brillo, pero aún así sería bastante brillante. 8mA puede ser bastante brillante con un LED moderno de alta eficiencia.
Si necesita más corriente, que TPIC6B595 y TPIC6C595 se controlan de la misma manera que 74HC595, con reloj, datos y pestillo, pero puede hundir 150ma y 100mA por pin de salida (cambio en 1, que enciende la salida, baja) para hundir la corriente de 5V a través del LED y su resistencia. Vs Sourcing actual a través del LED / resistencia a Gnd
No tenga miedo de pedir piezas en línea. Digikey.com y Mouser.com tienen todo tipo de piezas, y el correo económico de USPS se las enviará en 2-3 días.
Si desea abastecerse, gaste $ 20-30 y obtenga una bolsa llena de piezas en taydaelectronics.com. Puedes conseguir muchas cosas por eso. Creo que las piezas provienen de Tailandia (a través de Colorado en los EE. UU. De las que he recibido), solicite una selección de piezas que durarán bastantes proyectos.
fuente
Además de todas las otras respuestas finas, el mapa de pines del IC ciertamente puede diferir entre diferentes IC. No puede simplemente enchufar un cable en los mismos pines que usaría para otro Registro de turnos y esperar que funcione. Si combina la funcionalidad del pin, hay muchas más posibilidades, aunque la funcionalidad del pin puede no ser la misma en diferentes chips tampoco.
fuente