Anda di halaman 1dari 3

Simulacin en MPLAB

Juan Manuel Laiseca, Mara Alejandra Pez, Carol Quiroga, Carlos Romero
Facultad de ingeniera biomdica, Universidad Manuela Beltrn
Bogot, Colombia
manuelacho94@hotmail.com
alejandra.paez_25@hotmail.com
cayuquipi@hotmail.com
cafemtb_@hotmail.com

Abstract -This article explains how it is the basic operation of a
simulation using MPLAB in assembler language, also this utility
and its most important characteristics.
I. OBJETIVOS
Objetivo General
Entender el funcionamiento y las aplicaciones de la
simulacin de un programa por medio de MPLAB.
Objetivos especficos
Realizar paso a paso la metodologa para simular un
programa en MPLAB por medio de un ejemplo.
Detallar los posibles problemas e inconvenientes que
puedan ocurrir al momento de realizar una
simulacin con MPLAB.
Verificar el correcto funcionamiento de un programa
por medio de simulacin en MPLAB.

II. INTRODUCCION
MPLAB cuenta con una herramienta de gran utilidad
denominada MPLAB SIM, esta herramienta sirve para
simular un programa en lenguaje assembler, a diferencia de un
emulador como PROTEUS el cual sirve para verificar el
funcionamiento externo de un programa guardado en un
microcontrolador, MPLAB permite simular lnea a lnea el
programa y a su vez verificar los procesos y los cambios que
ocurren en cada registro que se utiliza durante la ejecucin del
programa, tambin puede tener cambios generados por el
usuario para observar las alteraciones que esto causara en el
programa; este simulador cuenta con una herramienta de gran
ayuda al momento de determinar los tiempos de ejecucin del
programa, entre otros.


III. METODOLOGIA
Para realizar una simulacin con MPLAB en general se
debe tener el programa correctamente compilado, lo primero
que se debe hacer es seleccionar el PIC que se est
manejando, para ello hay que dirigirse a la pestaa
configure dar click en selec device, y en el recuadro de
device se escribe la referencia del PIC, en este caso se usara
un PIC16f877a luego se debe activar el simulador de MPLAB
siguiendo la siguiente ruta; Debugger>Selec tool> MPLAB
SIM, al realizar este procedimiento se activa una serie de
opciones que se observan en la figura 1.

Fig. 1 Herramientas de simulacin
El botn run sirve para ejecutar todo el programa,
suele ser utilizado principalmente para adelantar cdigos de
demora, de forma conjunta con los breakpoints los cuales se
colocan en alguna lnea del cdigo dando simplemente doble
click sobre esta, su funcin es detener el programa cuando la
ejecucin llegue a esta lnea, el botn animate tambin
ejecuta todo el programa, pero de una forma ms lenta para el
usuario, esto lo hace lnea a lnea con la posibilidad de
detenerlo en cualquier lnea, step into corre el programa
lnea a lnea cada vez que se le da click o tambin se puede
utilizar la tecla F7 para facilitar su uso, el botn step over
tambin corre el programa lnea a lnea pero salta algunas
lneas como las que utilizan la funcin call, pero no la
ignora simplemente realiza lo que se encuentre dentro del call
y regresa sin que podamos detallar paso a paso, el botn step
out sirve para salirse de las lneas que se encuentren dentro
de un call despus de ingresar y finalmente el botn reset
reinicia la simulacin, pero hay que tener en cuenta que no
reinicia los Bytes que ya han sido guardados en el transcurso
del programa, para esto es necesario que el programa tenga
ciertas lneas para borrar la informacin de los Bytes
utilizados durante el programa.
Despus de tener claras las herramientas bsicas del
simulador, es necesario definir en el programa la frecuencia
con la que se desea realizar el circuito, para esto hay que
dirigirse a la pestaa Debugger y all se va a la opcin
settings, en esta ventana simplemente se escoge la frecuencia
del cristal con el que se va a trabajar y finalmente se necesitan
visualizar diferentes ventanas para comprender mejor el
funcionamiento del programa creado, estas ventanas son:
Special function registers/Watch:
Para abrir cualquiera de las dos ventanas hay que
dirigirse a la pestaa View y dar click en cualquiera de las
dos opciones; si se elije la opcin Special function registers
se observara la ventana de la figura 2, en esta ventana se
observaran todos los registros especficos del
microcontrolador, esta es muy til para detalla exactamente
qu pasa con cada lnea del programa y como afecta los
registros involucrados en el Bit por Bit, aunque en esta
ventana no es posible visualizar los registros de propsito
general, lo cual es muy necesario para visualizar un correcto
funcionamiento de todo el programa.

Fig. 2 Special Function Registers
Si se elige la opcin Watch se abre una ventana (Fig.
3) bastante similar que en la figura 2, pero se encuentra vaca,
en esta ventana se puede escribir en la columna de Symbol
name el registro que se quiere visualizar, con esta opcin es
un poco mas practica cuando no se quieren observar todos los
registros especficos, su principal utilidad es que en esta se
pueden observar posiciones de la memoria de registro general
que pueden ser utilizadas en el programa.

Fig. 3 Watch
Stimulus:
Para abrir la ventana de stimulus (Fig. 4) se da click
en debugger despus se dirige a la opcin stimulus> New
Workbook.

Fig. 4 Stimulus
Como su nombre lo indica esta ventana sirve para
generar estmulos en los pines del microcontrolador, estos
estmulos son generados en pines de entrada, en este caso el
puerto B fue programado de esta forma y se utilizaran los tres
primeros pines para generar estmulos externos, para
seleccionar el pin que se utilizara se busca el nombre en la
columna pin/SFR, en la columna Action se genera el
estimulo deseado, si se selecciona cualquiera de las dos
opciones de pulse es posible decidir cunto tiempo se desea
que este activo este pulso o por cuantos ciclos, para activar el
pulso se selecciona el botn > que se encuentra en la
columna fire, para verificar que los estmulos se estn
enviando correctamente, se puede ver en la ventana output
en la pestaa de MPLAB SIM.

Stopwatch:
La ventana de Stopwatch sirve para visualizar el
tiempo de ejecucin del programa y la cantidad de ciclos con
los que est compuesto; para visualizar esta ventana
simplemente hay que dirigirse a la pestaa debugger y
seleccionar la opcin stopwatch (Fig. 5), esta herramienta no
solo determina el tiempo total de toda la ejecucin, tambin
puede determinar ciertas lneas, esto es de gran utilidad al
momento de generar retardos para que el usuario pueda
visualizar los que el programa y el microcontrolador pueden
mostrar.

Fig. 5 Stopwatch
IV. CONCLUSIONES
La herramienta MPLAB SIM es una herramienta
muy til al momento de leer lnea a lnea el proyecto en
proceso, ya que esta permite ver las instrucciones los registros
empleados y el tiempo que gasta cada instruccin del
programa, de esta manera cuando el programa no funciona
correctamente es posible ver en qu momento se comete el
error para poder solucionarlo, en algunos casos a pesar que
funcione la simulacin de MPLAB como lo espera el
programador, otros simuladores no muestran lo que se espera
al ser implementado en un montaje, como por ejemplo
PROTEUS, para finalmente verificar el correcto
funcionamiento despus de simularlo de manera correcta en
MPLAB, se recomienda montarlo en fsico y quemar el PIC
con el programa.
V. REFERENCIAS
[1] (2011) Simulacin MPLAB - HD. [Online]. Available:
http://www.youtube.com/watch?v=VkH4344lgI
[2] Gua rpida para la simulacin de programas en MPLAB-IDE. [Online].
Available: http://www.openboxer.260mb.com/pdf/microcomp/simulab.pdf
[3] (2011) Uso del simulador en MPLAB IDE. [Online]. Available:
http://www.puntoflotante.net/USO%20DEL%20SIMULADOR%20EN%20M
PLAB%20IDE.pdf