Completé con éxito mi hardware "hello world" usando esta guía:
http://www.raspberrypi-spy.co.uk/2012/06/control-led-using-gpio-output-pin/
Ahora me gustaría pasar a cosas más grandes y brillantes, ¡más LED controlados individualmente! Obviamente, el siguiente paso es quitar la fuente de voltaje de la Raspberry Pi y agregar más LED, pero eventualmente me quedaré sin pines GPIO, así que supongo que lo que necesito ahora es controlar un circuito que de alguna manera sepa , basado en GPIO "señales codificadas", qué LED encender y apagar. ¿Qué tipo de ejemplos de circuito debo buscar? Y lo que es más importante con respecto a la Raspberry Pi, ¿podría o rpi.gpio causar algún problema, tal vez con respecto al tiempo de la señal?
Respuestas:
Lo que está buscando en ese caso es una matriz de LED . Puede controlar esta matriz desde los pines GPIO, pero eso todavía limita la cantidad de LED que puede conectar (el tamaño de la matriz) y también puede comenzar a consumir demasiada corriente si no tiene cuidado.
Una mejor opción es conectar una matriz de LED al bus I2C, utilizando uno o varios extensores de E / S I2C. De esa manera, puede crear una matriz de gran tamaño (64 LED, por ejemplo, se pueden hacer con UN extensor de E / S de 16 bits). Otra razón para usar estos extensores de E / S es que son un poco más robustos, pueden proporcionar un poco más de corriente y mantienen su CPU principal fuera de peligro.
En este sitio, estos extensores de E / S se analizan varias veces, por lo que debería poder encontrar información sobre estos bastante fácil. Este enlace proporciona información sobre estos extensores y una matriz (aunque se utiliza para la entrada, pero básicamente es la misma idea, pero no utiliza la matriz para escanear sino para dirigir los LED)
El único requisito adicional para hacer una matriz de trabajo suave es que debe hacer que la matriz no sea más grande, entonces el RPi puede actualizar cada LED individual al menos 20 veces por segundo, de lo contrario, comenzará a ver parpadeo, pero esto también se explica en el primer enlace (párrafo "Multiplexación y persistencia de la visión").
fuente
He utilizado el expansor de puerto MCP23017 I²C para hacer este tipo de cosas. Siga este enlace para encontrar un código de muestra para la frambuesa pi. Puede manejar 16 LEDS por chip y 8 chips sin necesidad de multiplexar.
fuente