Вы находитесь на странице: 1из 3

1

Microcontroladores

LABORATORIO N05
Microcontroladores: Programando en C
(Informe Final)
Objetivo: Aprender a programar un microcontrolador en lenguaje C, desde programas elementales hasta de
mediana complejidad, usando los diferentes recursos que tiene el microcontrolador.
Fecha de presentacin: Sbado 14 y martes 17. Cada alumno del grupo, resuelve un problema. Presentar
diagrama de flujo, cdigo comentado. Funcionamiento en simulacin y Hardware
Evaluacin:
CODIGO APELLIDOS/NOMBRES
IP
(5)
IF
(7)
HW
(4)
SUS
(4)
NOTA










CUESTIONARIO
1. Implementar un programa para encender y apagar un led, con una periodo de 2Nms y 100N mseg., en 2
pines del microcontrolador donde N es el dgito mayor de su cdigo alumno. El programa debe
determinar el mayor dgito. Comprobar con el osciloscopio que se tiene el tiempo deseado.
Ejemplo:
Cdigo: 20102751
El programa halla el nmero 7
Luego se observa en el osciloscopio una onda con periodo de 14 ms y otra con periodo de 700 ms

2. Implementar un programa para observar su cdigo alumno y su nombre:
a) Usando un display de 7 segmentos, de forma secuencial, cada carcter aparece luego de 800 ms.
b) Usando una pantalla LCD.
Ejemplo:
a) En el display de 7 segmentos: 20102751 MOrALES
b) En la pantalla LCD, se observa hasta 16 caracteres:

20102751 MORALES

3. Control de acceso. (Para el 3er. Alumno y la sustentacin)
Se pide realizar un programa para construir un sistema de control de acceso formado por un teclado
matricial y un diodo led. La clave est formada por los 4 dgitos menos significativos de su cdigo
alumno. Si la clave es correcta parpadea un led con un periodo de 500 ms. Se puede utilizar un
decodificador despus del teclado matricial para conectarse con el microcontrolador.
2
Microcontroladores

4. (Opcional, para la sustentacin) Escribir un programa que cuente centsimas de segundo utilizando el
TIMER1. El valor de cuenta se debe iniciar desde 1000 y se ir decrementando, cuando llegue a 0 se debe
volver a iniciar a 1000. Con un pulsador se da inicio a la cuenta. El valor de cuenta se debe mostrar en la
pantalla LCD.
Ejemplo: 1000 900 800 100 0 1000 900
Anexos
Conexin pantallas LCD
Las pantallas LCD son mayoritariamente estndar y se programan de formas muy parecidas. En la figura
podemos ver un esquema de conexiones de una pantalla LCD estndar. Por un lado se tiene el bus de
datos D0..D7 . Se puede usar los 8 bits de datos y si desea ahorrar pines del microcontrolador se puede
utilizar solo 4. En este caso todo el bus de datos ser conectado al puerto B. Este bus de datos ser de
entrada al LCD (para escribir caracteres y enviar instrucciones) o puede ser de salida del LCD (para poder
leer el estado por ejemplo). El LCD tiene tres seales de control: E (habilitacin) sirve para habilitar el LCD,
la seal R/W sirve para indicar operacin de lectura o escritura; por ltimo la seal RS es la de sincronismo
de datos e instrucciones. Adems el LCD tiene seales para alimentacin y una seal (VEE) que sirve para
controlar el contraste de la pantalla. Se describe a continuacin:

VSS que es el pin GND.
VDD es la alimentacin principal de la pantalla y el chip, lleva 5 voltios (recomendable ponerle en
serie una resistencia para evitar daos, con una de 220 ohmnios es suficiente).
VEE es el contraste de la pantalla, debe conectarse con un potenciometro de unos 10k ohms o una
resistencia fija una vez que encontremos el valor deseado de contraste. Tengan en cuenta que si no
conectan esto, no vern nada.
RS es el selector de registro (el microcontrolador le comunica a la LCD si quiere mostrar caracteres o
si lo que quiere es enviar comandos de control, como cambiar posicin del cursor o borrar la
pantalla, por ejemplo).
RW es el pin que comanda la lectura/escritura. En nuestro caso siempre estar en 0 (conectado a
GND) para que escriba en todo momento.
E es enable, habilita la pantalla para recibir informacin (Se puede utilizar 4 bits, de D4 a D7).
Algunos LCD tienen pines para luz de fondo de la pantalla.
3
Microcontroladores

Control de un teclado matricial
El teclado matricial proporciona una interfaz sencilla de entrada de datos. Sus usos pueden ser tan variados
como aplicaciones que precisen de la introduccin manual de datos con el teclado matricial. Desde una
calculadora, pasando por una cerradura codificada, un termostato programable, un control de acceso, etc.
En el mercado es habitual encontrar teclados matriciales pasivos de 3 x 4 y de 4 x 4 teclas. Esencialmente
estn constituidos por filas y columnas conductoras en cuyo cruce se encuentra un pulsador mecnico o de
membrana que, al ser pulsado, establece el contacto elctrico entre la fila y la columna correspondiente.

Figura 2 Esquema tpico de un teclado matricial de 4 filas y 4 columnas

Para su conexin al microcontrolador se deben colocar unas resistencias de pull-up en las filas (o las
columnas) de 10K. De esta forma si se pone a GND (cero lgico) una columna (fila) se obtendr un cero en
la fila (columna) correspondiente cuando se pulse una tecla.
Al pulsar pueden producirse rebotes mecnicos e interpretarlos como varias repeticiones de la misma tecla.
Para evitarlo basta con esperar un tiempo superior a la duracin de los mismos antes de seguir leyendo los
datos del teclado.
Para conocer la tecla pulsada se puede seguir un algoritmo como el descrito a continuacin:
REPETIR
Excitar una columna.
Retardo
Leer las filas.
Si no hay tecla pulsada pasar a la siguiente columna.
HASTA QUE SE PULSE UNA TECLA
Esperar un tiempo mayor que la duracin de los rebotes.
REPETIR
Leer la fila
HASTA QUE SE SUELTE LA TECLA
Determinar la tecla pulsada a partir de la fila y la columna.





Cmza/2014

Вам также может понравиться