You are on page 1of 3

Laboratorio de Diseo de Sistemas Embebidos #3

David Escobar Castillejos, Csar Hernndez Cid


Departamento de Tecnologas de Informacin y Electrnica Tecnolgico de Monterrey campus Puebla

A01170737@itesm.mx A01097015@itesm.mx
Resumen Este documento es un reporte correspondiente a la segunda y tercera practica del laboratorio de diseo de sistemas embebidos, el cual contiene los conceptos de Timer1, Timer23, puertos de entrada y salida digitales, Interrupciones, Delays , contiene una breve introduccin as como el desarrollo de resultados, y conclusiones correspondientes.

tendr que hacer uso de dos Timer, uno trabajando en 16 bits y otro en 32 bits.
II. DESARROLLO DE CONTENIDOS.

2.- Semforo con Interrupciones

Palabras clave Timer1, Timer23, 16 bits, 32 bits, Interrupcin, I/O puertos, Pic32, sistema embebido, C32, Microchip.

Primeramente se declaran los puertos de salida para simular las tres luces del semforo, esto mediante la siguiente instruccin.

I.

INTRODUCCIN

El objetivo principal de esta segunda y tercera prctica es poner en prctica los conocimientos de interrupciones, vector de interrupcin, bandera que sealan la interrupcin y funciones creadas por el usuario. La prctica consiste en implementar una aplicacin que consiste en presentar cinco animaciones graficas haciendo uso de cinco leds de la tarjeta multimedia de expansin. Las animaciones consisten en prender y apagar leds en un patrn definido por el usuario, el intervalo de cada led debe ser de un segundo haciendo uso del Timer 1, haciendo uso de su vector de interrupcin, al oprimir un botn se deber de cambiar de animacin.

La tercera practica consiste en implementar un semforo, el cual contendr tres leds que cambiaran entre estados, en intervalos de un segundo, el led verde contendr adems un parpadeo aproximadamente de medio segundo, se

As como la inicializacin de las interrupciones generales, y la de Timer23 para el tiempo entre cada segundo y el Timer 1 para el parpadeo.

Para activar la operacin del Timer 1 hacemos uso de la siguiente declaracin:

Nuestro vector de interrupcin solo limpia las banderas y restea el contador de los Timer.

Para definir nuestro retraso de 5 segundos, hacemos uso del siguiente cdigo

En el cual el valor de Delay va a ser un nmero entero determinado por una simple formula la cual va en funcin de nuestro oscilador y del periodo de tiempo que queramos para nuestro retraso.

Para el mtodo main se tiene lo siguiente:

Para esta prctica se crearon dos diferentes funciones de delay, una para cinco segundos enteros y otra para el medio segundo

Las interrupciones nunca se desactivaran, mas bien para activar la segunda debe haber pasado primero por la primera. Esto haciendo uso de una bandera que se activa en el vector de interrupcin de 32 bits.

Se prende la luz verde, se interrumpe y se manda a llamar a delay, el cual dura 5 segundos, a su vez se hace un toggleo de la luz verde el cual durara 25 ms y se har alrededor de 3 o 4 veces, finalmente se apagara la luz verde y se prende el amarillo y vuelve a llamar a delay el cual dura 5 segundos, se manda a llamar a luz roja y se apaga el amarillo, y se repite el ciclo.

III. CONCLUSIONES

Se puede concluir que con el uso de Timer mas grande de 32 bits, se puede alcanzar mas fcilmente tiempos mas grande en segundos, adems se vio como habilitar este modo usando dos Timer de 16 bits, tambin se pudo conocer como activar dos Timer usando vectores mltiples, y finalmente el uso de banderas dentro de estas. Para ver el semforo lo ms amigable posible se hizo uso de los colores respectivos del semforo en la tarjeta de expansin multimedia.

REFERENCIAS
Lucio Di Jasio. Programming 32-bit microcontrollers in C: exploring the PIC32. Amsterdam; Boston: Elsevier; Burlington, MA: Newnes, c2008

You might also like