You are on page 1of 4

1

INTERRUPCIONES
MICROCONTROLADORES
C. Baquero Castañeda, C. Amézquita Dávila

Resumen— En este laboratorio se presentara la programación de microcontroladores fabricados hoy día son de buena calidad,
microcontroladores utilizando la herramienta Code Warrior y varían el modelo y el fabricante según la aplicación y las
lenguaje C en donde la familiarización con la tarjeta DEMOQE será circunstancias que lo envuelven.
fundamental para comprender su funcionamiento al igual que la En el mercado existen numerosos fabricantes por lo que la
familiarización con el software CodeWarrior, instrumentos elección de un MICROCONTROLADOR FREESCALE frente
utilizados para realizar las tareas asignadas al programador, en
a otros más conocidos como el 80XX de Intel, el PIC de
donde el microcontrolador será capaz de realizar las funciones que
desee el programador; en esta práctica se programarán opciones de Microchip, el ST62XX de SGS-Thomson o el Z86XX de Zilog,
encendido y apagado de varios leds presionando pulsadores que se debe a características como su bajo precio, velocidad,
estarán incluidos en la tarjeta DEMOQE de freescale. reducido consumo de energía, tamaño, facilidad de uso, fácil
programación y, lo mejor de todo, los recursos que la gran
Palabras clave— Microcontrolador, demoqe, interfaz. mayoría de estos microcontroladores presentan a la hora de
diseñar cualquier aplicación; por ello los microcontroladores
I. INTRODUCCIÓN Freescale se encuentran en la actualidad en la gran mayoría de
aplicaciones industriales, de comunicaciones y control por
Un microcontrolador es un dispositivo electrónico capaz de ejemplo, en el caso de la industria automotriz, la cual es una de
llevar a cabo procesos lógicos. Estos procesos o acciones son las que requieren mayor precisión en el desarrollo de procesos
programados en lenguaje ensamblador por el usuario, y son de control, instrumentación, entre otras, se encuentra que casi
introducidos en éste a través de un programador o quemador de el 90% de sus componentes son regidos por microcontroladores
microcontroladores. Freescale, debido a su estabilidad e inmunidad al ruido,
Hablando más a fondo de un microcontrolador, se dice que, es características importantes que hacen decisiva su elección
un circuito integrado o chip que incluye en su interior las tres frente a otras marcas.
unidades funcionales de un computador: CPU, memoria y A diferencia de los procesadores, los FPGAs llevan a cabo
unidades de E/S, es decir, se trata de un computador completo diferentes operaciones de manera paralela, por lo que éstas no
en un solo circuito integrado. Aunque sus recursos son necesitan competir por los mismos recursos. Cada tarea de
limitados en comparación con un PC normal, adicional a su procesos independientes se asigna a una sección dedicada del
dicha integración, su principal característica es su alto nivel chip, y puede ejecutarse de manera autónoma sin ser afectada
de especialización. por otros bloques de lógica. Como resultado, el rendimiento de
El microcontrolador es un dispositivo dedicado. En su memoria una parte de la aplicación no se ve afectado cuando se agregan
sólo reside un programa destinado a controlar una aplicación otros procesos.
determinada; sus líneas de entrada/salida soportan la conexión
de sensores y dispositivos de control que permitan efectuar el Rendimiento – Aprovechando del paralelismo del hardware,
proceso deseado. Una vez programado y configurado el los FPGAs exceden la potencia de cómputo de los procesadores
microcontrolador, solamente sirve para controlar la tarea digitales de señales (DSPs) rompiendo el paradigma de
asignada. ejecución secuencial y logrando más en cada ciclo de reloj.
Un microcontrolador es un microprocesador optimizado, BDTI, una destacada firma analista que realiza evaluaciones de
utilizado para controlar equipos electrónicos, diseño de referencia, lanzó evaluaciones mostrando cómo los FPGAs
sistemas de comunicación, monitoreo y adquisición de señales pueden entregar significativamente más potencia de
físicas, procesamiento y administración de señales analógicas y procesamiento por dólar que una solución de DSP, en algunas
digitales. aplicaciones2. El controlar entradas y salidas (E/S) a nivel de
Un microcontrolador difiere de una CPU normal debido a que hardware ofrece tiempos de respuesta más veloces y
es más fácil convertirla en un computador en funcionamiento, funcionalidad especializada que coincide con los
con un mínimo de chips externos de apoyo. Un requerimientos de una aplicación.
microprocesador tradicional no le permitirá hacer esto, ya que Tiempo en llegar al mercado – La tecnología FPGA ofrece
espera que todas estas tareas sean manejadas por otros chips. flexibilidad y capacidades de rápido desarrollo de prototipos
para enfrentar los retos de que un producto se libere tarde al
mercado. Usted puede probar una idea o un concepto y
II. DESARROLLO DEL ARTÍCULO verificarlo en hardware sin tener que pasar por el largo proceso
Uno de los principales inconvenientes a los que se enfrenta un de fabricación por el que pasa un diseño personalizado de
ingeniero a la hora de materializar una idea usando un ASIC3. Posteriormente podrá implementar cambios y realizar
microcontrolador es la elección de una familia de iteraciones de un diseño FPGA en cuestión de horas en vez de
microcontroladores y dentro de ésta un modelo en concreto que semanas. También existe hardware comercial listo para usarse
se ajuste lo mejor posible a las necesidades del diseño. Sera (COTS) con diferentes tipos de E/S ya conectados a un chip
entonces de gran utilidad tener presente que los FPGA programable por el usuario. El aumento en
2

disponibilidad de herramientas de software de alto nivel


disminuye la curva de aprendizaje con niveles de abstracción.
Estas herramientas frecuentemente incluyen importantes
núcleos IP (funciones pre-construidas) para control avanzado y
procesamiento de señales.
Precio – El precio de la ingeniería no recurrente de un diseño
personalizado ASIC excede considerablemente al de las
soluciones de hardware basadas en FPGA. La fuerte inversión
inicial de los ASICs es fácilmente justificable para los
fabricantes de equipos originales que embarcan miles de chips
por año, pero muchos usuarios finales necesitan la
funcionalidad de un hardware personalizado para decenas o
Fig. 1 Microcontrolador DEMOQE
cientos de sistemas en desarrollo. La misma naturaleza
programable del silicio implica que no hay precio de
Al implementar las acciones deseadas, están guardadas de
fabricación o largo plazos de ejecución de ensamblado. Los
forma constante en la tarjeta de desarrollo DEMOQE, lo cual
requerimientos de un sistema van cambiando con el tiempo, y
permite independencia con respecto a su compilador.
el precio de cambiar incrementalmente los diseños FPGA es
insignificante al compararlo con el precio de implementar
 1 PUNTO
cambios en un ASIC antes de su lanzamiento.
La guía contiene un código, se pide comentar e implementar en
Fiabilidad – Mientras que las herramientas de software ofrecen la tarjeta DEMOQE.
un entorno de programación, los circuitos de un FPGA son una
implementación segura de la ejecución de un programa. Los
sistemas basados en procesadores frecuentemente implican
varios niveles de abstracción para auxiliar a programar las
tareas y compartir los recursos entre procesos múltiples. El Fig1. Se declaran inicialmente las librerías que se van a
software a nivel driver se encarga de administrar los recursos utilizar.
de hardware y el sistema operativo administra la memoria y el
ancho de banda del procesador. El núcleo de un procesador sólo
puede ejecutar una instrucción a la vez, y los sistemas basados
en procesadores están siempre en riesgo de que sus tareas se
obstruyan entre sí. Los FPGAs, que no necesitan sistemas
operativos, minimizan los retos de fiabilidad con ejecución
paralela y hardware preciso dedicado a cada tarea. Fig2.Se definen los led de forma binaria en el código
Mantenimiento a largo plazo – Como se mencionó
anteriormente, los chips FPGA son actualizables en campo y no
requieren el tiempo y el precio que implica rediseñar un ASIC.
Los protocolos de comunicación digital por ejemplo, tienen
especificaciones que podrían cambiar con el tiempo, y las
interfaces basadas en ASICs podrían causar retos de
mantenimiento y habilidad de actualización. Los chips FPGA,
al ser reconfigurables, son capaces de mantenerse al tanto con
modificaciones a futuro que pudieran ser necesarias. Mientras Fig3.Se define cuando el led esta prendido o apagado y el
el producto o sistema se va desarrollando, usted puede toggleled es cuando hay un cambio de estado del led.
implementarle mejoras funcionales sin la necesidad de invertir
tiempo rediseñando el hardware o modificando el diseño de la
tarjeta.Para procesamiento y almacenamiento a altas
velocidades y en paralelo: FPGA
Para toda de decisiones y procesos Lógicos dinámicos que casi
siempre son secuenciales: Microcontroladores

Fig4. Se definen las funciones las cuales se van a programar


Linea#10 CONFIGKEY(void): Es donde se definen los
pulsadores como entradas.
Linea#11 MCUINIT(void) Es la inicialización del proceso.
Línea#12 MAIN(void) es el microcontrolador ejecutando el
programa principal, que es responsable del llamado cada
módulo.
3

En la línea #13 se llama el KBI1_ISR el cual es la


interrupción de teclado que se va a utilizar
En la línea #14 DELAY(void) El encargado del retardo.

Fig5.
KBI1SC: Es el estado de control de a interrupción
KBI1E: Es el Eneable de la interrupción
KBI1ES: Detecta los flancos para la generación de la Fig9. Se realiza la interrupción y se hace el cambio de estado
interrupcion. del LED teniendo en cuenta el retardo declarado
KBI1PE: habilita el pin de interrupción KBI1 anteriormente y se vuelve a desactivar la interrupción porque
correspondiente. KBI1SC_KBIE=1
KBACK: Es el mecanismo de limpieza de la interrupción
Fig. 2 Diagrama de flujo
KBIMOD: controla el modo de detección de la
interrupción KBI1  2 PUNTO
KBIE: Es el Eneable general de las interrupciones Al implementar las acciones deseadas, están guardadas de
forma constante en la tarjeta de desarrollo DEMOQE, lo cual
permite independencia con respecto a su compilador.

La guía contiene un código que me permita conocer si una


secuencia ha sido introducida, se pide comentar e implementar
en la tarjeta DEMOQE.
Fig6. Es la inicialización del proceso.

Fig7.Este es el programa el cual es encargado de mantener la


tarjeta prendida.

III. CONCLUSIONES

La sentencia SWITCH es muy importante debido a que tiene


una estructura vertical y tiene la capacidad de dividir módulos
en estados como se presentan en la secuencia de datos. Cada
Fig8. Se encarga de generar un pulso después de un tiempo caso representa cada uno de los estados que tomaría la máquina
determinado para que en la tarjeta no sea necesario oprimir de estados presentada. La sentencia SWITCH es la forma de
muchas veces el pulsador por que el tiempo de operación de presentar varios IF, debido a que se debe cumplir cada caso para
la tarjeta es muy corte y la velocidad de pulsación de un continuar al siguiente. Gracias al SWITCH, se tuvo la
humano es muy largo con respecto a la tarjeta. posibilidad de subdividir cada uno de los procesos que se
necesitaba para realizar este laboratorio porque con solo la
sentencia IF, se podía llegar a confundir la programación
deseada.
4

IV. REFERENCIAS

[1] M. Morris Mano, “Lógica Digital y Diseño de


Computadores “, Editorial Dossat S.A., 1982.
[2] Víctor P. Nelson, H. Troy Nagle, Bill D. Carroll y J. David
Irwin, “Análisis y Diseño de Circuitos Lógicos Digitales “,
Prentice-Hall Hispanoamericana, S.A., 1996.
[3] J.F. Wakerley, “Digital Design Principles and Practices “, 2ª
ed., Englewood Cliffs, NJ: PrenticeHall, 1984.

Cristian Camilo Baquero Castañeda nació en


Bogotá, Colombia, el 8 de Julio de 1995. Se
graduó como bachiller técnico de la Escuela
Colsubsidio Las Mercedes y posee una
certificación como Técnico en Electricidad
residencial y domiciliaria del SENA.

Cristian Camilo Amézquita Dávila nació en


Barranquilla, Colombia, el 16 de marzo de
1996. Se graduó como bachiller técnico
comercia del Colegio Distrital El Silencio.

You might also like