En esta lección vas a aprender cómo manejar ocho LEDs rojos grandes con una placa UNO sin tener que sacrificar ocho pines de salida. Vamos a usar un chip integrado para que no te quedes sin pines para tus botones, sensores o servos.
Resumen
Aunque podrías conectar cada LED con su resistencia directamente a un pin del UNO, te quedarías sin entradas y salidas al toque. Por eso, en vez de hacer eso, vas a usar un chip llamado 74HC595, que es un conversor de serie a paralelo. Este chip tiene ocho salidas y solo tres entradas que usás para mandarle la data de a un bit por vez. Es un poquito más lento que manejar los pines directo, pero es tan rápido que para los humanos es imperceptible, así que vale la pena.
Componentes necesarios
Vas a necesitar una placa Elegoo Uno R3, un protoboard de 830 puntos, ocho LEDs, ocho resistencias de 220 ohm, un integrado 74HC595 y 14 cables puentes macho-macho.
Introducción al componente
El registro de desplazamiento 74HC595 funciona como ocho posiciones de memoria que pueden ser un 1 o un 0. Para setear estos valores, le pasamos la data usando los pines 'Data' y 'Clock'. El reloj necesita recibir ocho pulsos; en cada uno, si el pin de datos está en alto, se carga un 1, si no, un 0. Cuando se completan los ocho pulsos, se activa el pin 'Latch' para pasar esos valores a las salidas. El chip también tiene un pin de habilitación (OE) que, como es activo en bajo, lo conectamos a GND.
Esquema de conexión y diagrama de cableado
Como hay muchos componentes, lo más fácil es poner primero el chip 74HC595 con la muesca en U hacia arriba. El pin Digital 12 del UNO va al pin 14 del chip, el Digital 11 al pin 12, y el Digital 9 al pin 11. Después, poné las resistencias con cuidado de que no se toquen las patitas; si te resulta difícil, podés cortarlas un poco. Los LEDs van con la pata larga (positiva) siempre mirando hacia el chip. No te olvides de conectar el pin 8 del integrado a la columna de GND del protoboard.
Código
Bajate el archivo eight_led.ino y abrilo con el Arduino IDE. Fijate de tener instalados los drivers y el soporte para la placa UNO antes de empezar. El código usa variables para definir los pines de control y el tiempo de espera entre cada cambio de luces, guardando el estado de los LEDs en una variable de tipo byte.
Fuente: Adaptado al español desde el wiki oficial Elegoo (licencia CC BY-SA). Revisión técnica por equipo Breva.