Arduino

Solo disponible en BuenasTareas
  • Páginas : 5 (1007 palabras )
  • Descarga(s) : 0
  • Publicado : 10 de noviembre de 2011
Leer documento completo
Vista previa del texto
Reporte para la competencia de:
Ciencia y Tecnologia
Matriz de LED`s Arduino

Gil Ernesto Rieke Aguirre

Objetivo de la Práctica:
La práctica tiene como objetivo conocer la programación básica de la placa Arduino UNO, su sintaxis, y funciones. Todo esto se conocerá armando una matriz de LEDs de 8 x 16.
Material utilizado:
* Placa Arduino UNO
* 2 registros de desplazamiento74ls164
* 2 arreglos matriciales de LEDs
* 1 CI de transistores Darlington ULN2083
Fundamentos teóricos:
La pantalla de LEDs está formada por una seria de filas y columnas. La intersección entre ambas contiene un LED. Para que este encienda, tiene que recibir simultáneamente un “0” en la fila, y un “1” en la columna. Cuando se dan estas condiciones, la electrónica de la placa se encarga delencendido del LED en cuestión. La forma de generar un mensaje sobre el display es generalmente sencilla si nos atenemos al siguiente algoritmo:
1.- Apagar todas las filas
2.- Escribir los valores correspondientes a la primera fila en el registro de desplazamiento.
3.- Encender la primer fila, esperar un tiempo, y volver a apagarla.
4.- Repetir los pasos 2 y 3 para las filas restantes.

Eltiempo de demora debe ser tal que permita una visualización correcta, sin molestos parpadeos y con los LEDS brillantes. Hay que tener en cuenta que si utilizamos tiempos mayores para el encendido de cada fila, el brillo de los LEDs será mayor, pero también aumentara el parpadeo.

El Circuito de Control:
Como ya mencionamos el circuito de control de nuestra matriz de LEDS será la placa ArduinoUNO. Ester será el encargado de gestionar el encendido de cada LED mediante órdenes enviadas a las columnas mediante el registro de desplazamiento y a las filas.
Como una fila tendrá muchos LEDs, existe la posibilidad que en algún momento puedan estar todos encendidos, no podemos conectarlas directamente a pines de E/S de la placa, porque la corriente que demandarían haría que el puerto delmicrocontrolador pase a mejor vida. Para evitar esto, utilizaremos un arreglo de transistores Darlington ULN2083 para poder manejar la corriente requerida.
El centro de todo es nuestra placa Arduino. Los pines 10 y 11 serán usados como data y clock, respectivamente. Los pines del 2 al 8 serán utilizados para controlar las filas de las matrices.

El display:
Como puede verse, hemos utilizado 2circuitos integrados 74ls164 para construir el registro de desplazamiento, se utiliza uno para cada matriz.

El software:
Ahora nos toca abordar la programación del hardware propuesto. El cartel de LEDs que estamos construyendo puede adoptar diferentes tamaños de acuerdo a las necesidades o componentes que cada uno consiga.
El “barrido” del cartel debe hacerse por filas. Es decir, mostrar elcontenido de la primera fila, esperar un tiempo determinado (unos pocos milisegundos) mostramos el de la segunda fila, esperamos nuevamente, y así hasta llegar a la última fila , tal y como se expresa en el algoritmo visto más arriba.
El primer problema a resolver es la escritura de datos en las filas. Para resolver este problema declaramos como “Byte” dos arreglos. Los datos del arreglo estándeclarados en binario, para facilitar la visualización del mensaje en el compilador. Para escribir estos datos en la primera fila usamos una función llamada “shiftOut”, especificamos donde estará la salida de datos, el reloj, si queremos que el bit menos significativo quede adelante o atrás, y los datos que queremos escribir. Como manejaremos dos matrices esta función

La usaremos dos veces,llamando primero la función que escribirá los datos en la segunda matriz. Por supuesto, mientras se realiza esto todos los pines que controlan las filas deberán estar apagados, para que no se perciba una débil luminosidad en todos los LEDs de la fila que estamos escribiendo a medida que pasan los datos a través del registro.

Teniendo los datos de la primera fila escritos, ponemos el “pin”...
tracking img