Paso 3: Multi ¿?
Básicamente es una manera de dividir la información en pequeñas piezas y enviarlo uno por uno.
de esta manera puede ahorrar un montón de pines en el Arduino y mantener su programa bastante sencillo.
En nuestro caso que nos dividimos la imagen que queremos mostrar a 10 piezas (10 filas), queremos analizar las filas de la matriz (la luz encima de una fila a la vez) y enviar información de Arduino a las columnas.
Todas las columnas son positivos de los LEDs y las filas son negativos por lo que si la primera fila está conectada a tierra y enviamos información a las columnas sólo encenderá la primera fila.
Para obtener una buena exhibición es necesario analizar las filas muy rápidas, tan rápidas el ojo humano piensa que todas las filas están conectadas al mismo tiempo.
Por qué el 4017:
Para esta matriz de LED que quería utilizar este útil IC.
Heres un buen sitio para aprender los fundamentos de este IC: http://www.doctronics.co.uk/4017.htm
El contador de década 4017 se utiliza para permitir la multiplexación.
Este IC básicamente analiza las filas de la matriz (uno fila a la vez se enciende).
En nuestro caso nos vamos a conectar las líneas a tierra pero el 4017 no construir para fregadero actual, así que para solucionar este problema tenemos que utilizar un transistor con una resistencia.
El 4017 tiene 10 pines de salida por lo que necesitamos 10 transistores y resistores de 10, conectamos las resistencias de 1K a las salidas de los 4017 y la base del transistor al otro extremo de la resistencia.
Luego conectamos los colectores de los transistores a las filas y el emisor a tierra.
Aquí está la hoja de datos del transistor necesitamos utilizar: http://www.fairchildsemi.com/ds/2N/2N3904.pdf
El registro de desplazamiento:
Este IC poco es muy útil le permite controlar un montón de salidas con el uso de onlt 3 pines del micro-controlador. Conectando más IC puede aumentar el número de salidas con perder más pines del microcontrolador.
Puedes leer más acerca de ellos y cómo utilizar con arduino en este enlace:
http://www.Arduino.CC/en/Tutorial/ShiftOut