Curso = Metodos Tecnicas y Modelos de Enseñanza.pdf
P9: Kiwibot Basic Shield: Aplicaciones Matriz de LEDs
1. PRÁCTICAS DE PROGRAMACIÓN CON ARDUINO
P9: APLICACIÓN MATRIZ DE LEDS
José
Pujol
Pérez
IES
Vicente
Aleixandre
2. OBJETIVOS
• Controlar una matriz de LEDS y comprender
su funcionamiento
• Instalar y usar una librería
• Usar control de tiempo mediante reloj interno
3. Ideas Previas:
• ¿Qué es una matriz de LEDs?
• ¿Para qué nos puede servir?¿Qué aplicaciones se os
ocurren?
• ¿Puedo controlarla con Arduino? ¿Cuantos pines
digitales necesito?
INTRODUCCIÓN
4. • MATRIZ DE LEDS
• LIBRERÍA MATRIZ DE LEDS
• INSTALAR LA LIBRERÍA
• MULTIPLEXADO
• FUNCIÓN MILLIS
• CONTROL TIEMPO MILLIS
• SENSOR TEMPERATURA LM35
INFORMACIÓN
5.
MATRIZ DE LEDS
Es un encapsulado que contiene LEDs distribuidos en
filas y columnas
En este caso, tenemos 5 filas i y 7 columnas j
M5x7= 35 LEDs
Cada punto de la matriz es localizado por su posición
M(i,j)=M(2,3)
6.
MATRIZ DE LEDS
Configuración interna:
• Las columnas están conectadas a los ánodos de los
LEDs
• Las filas están conectadas a los cátodos
• Para encender un LED tengo que activar a 1 la
columna y poner a 0 la fila
7. librería matriz leds
- #include <Matriz.h>
Incluye la librería Matriz con todas sus funciones
- Matriz matriz(6, 9, 5);
Indica los pines latch, reloj y datos del registro de
desplazamiento
- matriz.printPixel(fila, columna);
Enciende un pixel
- matriz.printLine(filaIni, columnaIni,
filaFin, columnaFin);
Dibuja una línea desde un punto inicial a un punto final
8. librería matriz leds
- matriz.printNumber(numero);
Imprimir un número de una o dos cifras
- matriz.cleanMatrix();
Apaga todos los píxeles de la matriz
- matriz.newPixel(fila, columna);
Almacena píxeles en una variable
- matriz.printMatrix();
Imprime los píxeles almacenados en la variable
9.
INSTALAR LA LIBRERÍA
Descargar la librería de:
http://www.kiwibot.es/escudo-arduino/libreria-matriz-de-leds/
En Arduino:
Sketchà Importar Librería à Add Library
Cargar el archivo .zip
Reiniciar Arduino y la librería ya está lista para ser usada
10. Realizar un termómetro usando la matriz de LEDs
• Imprimir la temperatura por el puerto serie
• Representar el valor de la temperatura con dígitos
Ideas:
• Añadir que cambie de temperatura Celsius a
Fahrenheit con un pulsador
• Realizar un gráfico de barras. Alternar entre gráfico de
barras y dígitos con pulsador
• Pulsador de desconexión
• Realizar media de valores para que no oscile
HACER PROPUESTA 1
11.
SENSOR TEMPERATURA LM35
Sensor de temperatura calibrado
• Tensión de salida proporcional a la temperatura
• Cada grado centígrado equivale a 10mv
1°C=10mv
5v=1024
pasos
14. Realizar una aplicación o juego usando la matriz de
LEDs
Ideas:
• Mover un pixel por la pantalla con el acelerómetro
• Dibujar usando el joystick-pulsador y borrar con el
otro pulsador
• Juego de memorización de flechas
HACER PROPUESTA 2
15.
MULTIPLEXADO
Consiste en realizar barridos a gran velocidad
Crea la ilusión óptica de que todos los LEDs están
encendidos simultaneamente
16. FUNCIÓN mILLIS
- millis();
Devuelve el número de milisegundos desde que se
conectó la placa Arduino
Es necesario usarlo si vamos a usar funciones con
multiplexado y control de tiempo
Si lo guardamos en una variable de tipo unsigned long
se desborda cada 50 dias
unsigned long time=0;
time=millis();
19.
Este
guía
se
distribuye
bajo
licencia
Reconocimiento-‐
ComparJrIgual
CreaJve
commons
4.0
(cc)
2014
José
Pujol
Pérez
Some
rights
reserved.
This
work
licensed
under
CreaJve
Commons
ARribuJon-‐ShareAlike
License.
To
view
a
copy
of
full
license,
see
hRp://creaJvecommons.org/licenses/by-‐sa/3.0/
or
write
to
CreaJve
Commons,
559
Nathan
AbboR
Way,
Stanford,
California
94305,
USA.
Some
of
the
figures
have
been
taken
from
the
Internet
Source,
and
author
and
licence
if
known,
is
specified.
For
those
images,
fair
use
applies.
licencia