Sunteți pe pagina 1din 10

ESCUELA POLITECNICA DEL EJRCITO Entorno MPLAB

TITULO: Manejo del Entorno MPLAB


Leonardo Flores
leoespel2010@hotmail.com

ABSTRACT: MPLAB es un software que se ejecuta sobre un PC para desarrollar aplicaciones para microcontroladores de MICROCHIP.
Resumen: Este documento est dirigido para obtener un conocimiento previo sobre el entorno MPLAB y a futuro poder trabajar o manipular en forma directa este entorno de programacin, en el cual haremos una breve introduccin explicando de que trata este software para que es utilizado, que es, como funciona, detallando sus instrucciones bsicas o las mas utilizadas para su uso, las directivas principales para el manejo de MPLAB, ficheros y archivos que se pueden generar en el entorno, entre otros puntos que nos servirn como punto de partida para la familiarizacin del entorno con el usuario con el fin de empezar a relacionarnos con el entorno as con sus principales instrucciones o comandos con los cuales podemos desarrollar aplicaciones para microcontroladores, entonces teniendo un punto de referencia se espera que con este documento se despierte el inters y se profundice ms en el tema.

PALABRA CLAVE
Directivas de MPLAB. Entorno MPLAB. Instrucciones de bsicas. Software MPLAB.

1. INTRODUCCION
Qu es MPLAB?
MPLAB es un software de desarrollo integrado que se ejecuta sobre una PC que sirve para desarrollar aplicaciones para microcontroladores de MICROCHIP.

PARTES DE MPLAB: EDITOR: Editor incorporado que permite escribir y editar programas u otros archivos de texto. PROJECT MANAGER: Organiza los distintos archivos relacionados con un programa en un proyecto. Permite crear un proyecto, editar y simular un

programa. Adems crea archivos objetos y permite bajar archivos hacia emuladores (MPLAB-ICE) o simuladores de hardware (SIMICE). SIMULADOR: Simulador de eventos discretos que permite simular programas con ilimitados breakpoint, examinar/modificar registros, observar variables, tiempos y simular estmulos externos. ENSAMBLADOR: Genera varios tipos de archivos objetos y relacionados, para programadores Microchip y universales. LINKER: Permite unir varios archivos objetos en uno solo, generados por el ensamblador o compiladores C como MPAB-C18 o compiladores de terceros.

MPLAB

Leonardo Flores

ESCUELA POLITECNICA DEL EJRCITO Entorno MPLAB


Los comandos ms importantes para la ejecucin (localizados dentro del men Debugger) son los que se indican a continuacin.

Run (Ejecucin continua). Ejecuta el programa constantemente. La ventana Watch no se actualiza hasta que no se detiene la simulacin. Animate (Ejecucin animada). Ejecuta el programa de forma continua pero actualizando el contenido de la ventana Watch cada vez que ejecuta una instruccin. Halt (Paro). Detiene la ejecucin del programa y actualiza todos los valores de las ventanas de visualizacin. Step Into (Ejecucin paso a paso). Ejecuta una sola instruccin del programa y actualiza la informacin de las ventanas de visualizacin. Reset. Equivale a un reset por activacin del pin /MCLR. Otros modos de simulacin son los siguientes.

llamada a una subrutina (call k), se ejecuta toda la subrutina antes de actualizar las ventanas. Step Out. Cuando se est ejecutando una subrutina paso a paso, este modo de simulacin obliga a que se ejecuten todas las instrucciones de la subrutina hasta regresar al programa principal, momento en el que se detiene la simulacin y se actualizan las ventanas de visualizacin. Run to cursor. Esta opcin da lugar a una ejecucin continua desde la ltima instruccin simulada hasta la posicin actual del cursor. Se entra en este modo de simulacin mediante el men que se activa con el botn derecho del ratn. BARRA DE HERRAMIENTAS Los iconos que aparecen en la barra de herramientas (figura 1), son funciones que se encuentran incluidas en el men de control, pero como en todos los programas de Windows se incluyen par manejar de forma ms cmoda el programa y difieren dependiendo la versin del programa.

Step Over. Ejecuta una sola instruccin del programa y actualiza las ventanas de visualizacin. Cuando la instruccin es una

MPLAB

Leonardo Flores

ESCUELA POLITECNICA DEL EJRCITO Entorno MPLAB


Figura 1.- Barra de herramientas de edicin

2. DIRECTIVAS
DEL MPLAB

PRINCIPALES

La segunda lnea es: #include <p16F84A.inc> ;definicin de variables especficas ....... Esta lnea le indica al compilador que incorpore las definiciones detalladas en el archivo p16F84A.inc. En este archivo se definen configuraciones y nombres de los registros del PIC16F84, as como los nombres de los bits ms usuales del micro. En la lnea siguiente vemos la siguiente expresin: __CONFIG _CP_OFF & _WDT_OFF & _PWRTE_ON & _XT_OSC En esta lnea se define la palabra de configuracin del PIC. La palabra de configuracin indica si el cdigo a grabar en el PIC se proteger contra lectura, si se utilizar el temporizador watch dog, si se habilita el delay de encendido, y que tipo de oscilador se utilizar. Por ltimo vemos dos lneas de cdigo: ORG 0x00 ;vector de reset ....... ;final del programa

Las directivas son palabras reservadas para indicarle al MPLAB que funciones debe configurar cuando compile nuestro programa. Antes que nada escribiremos una plantilla, que es un muy reducido archivo de cdigo que se utilizar frecuentemente. Una plantilla se crea por nica vez, y se utiliza como punto de partida al desarrollar posteriores proyectos. Para crear la plantilla haremos lo siguiente: en MPLAB seleccionar File>New. Con esto se abrir una ventana de edicin en blanco y escribiremos lo siguiente: list p=16F84A el procesador ;directiva que define

#include <p16F84A.inc> ;definicin de variables especficas del procesador __CONFIG _CP_OFF & _WDT_OFF & _PWRTE_ON & _XT_OSC ORG 0x000 procesador END La primera lnea es: list p=16F84A ;directiva que define el procesador ;vector de reset del

;final del programa

END

Esta lnea le indica al compilador que el cdigo escrito se aplicar al dispositivo 16F84A de la lnea PIC. De esta forma el compilador tambin sabr cual es la capacidad de memoria del PIC

Entre estas dos lneas se encontrar el cdigo escrito por el programador. La lnea ORG 0x00 le indica al compilador que el cdigo por debajo de ella debe alojarse a partir de la posicin de memoria 0 del PIC, que es la primer posicin de memoria que el PIC ejecutar. La lnea END indica que se ha alcanzado el final del programa, por lo que no debe haber cdigo por debajo de ella. Las indispensables para compilacin del programa son: la correcta

MPLAB

Leonardo Flores

ESCUELA POLITECNICA DEL EJRCITO Entorno MPLAB


Directiva BADRAM BANKISEL BANKSEL CBLOCK CODE CONFIG CONSTANT DATA DB DE #DEFINE DT DW ELSE END ENDC ENDIF ENDM ENDW EQU ERROR ERRORLEVEL EXITM EXPAND EXTERN FILL GLOBAL IDATA IDLOCS IF IFDEF IFNDEF #INCLUDE LIST LOCAL MACRO MAXRAM MESSG NOEXPAND NOLIST ORG PAGE PAGESEL PROCESSOR RADIX RES SET SPACE SUBTITLE TITLE UDATA Descripcin Especifique las posiciones del RAM invlidas _ Genera el cdigo que selecciona el banco de memoria de memoria RAM para direccionamiento indirecto Genera el cdigo que selecciona el cdigo de memoria RAM Defina un Bloque de Constantes Empieza la seccin del cdigo ejecutable Especifica los bits de configuracin Declara los Smbolos de las Constantes Crea Datos numricos y de Texto Declare Datos de un Byte Defina los Datos de EEPROM Defina una Etiqueta de Substitucin de Texto Defina Tabla Declare Datos de un Word Empieza el bloque alternativo de un IF Fin de bloque de programa Acaba un Bloque Constante Automtico Fin del bloque de condiciones ensambladas Fin de la definicin de una Macro Fin de un bucle de While Define una constante para el ensamblador Manda un mensaje de error Sita el nivel del error Salida de una Macro Expande una lista de Macro Declara una etiqueta externa Llena la memoria Exporta una etiqueta definida Comienza una seccin de identificadores (ID) Especifica donde estn colocados los Identificadores (ID) Empieza un bloque de cdigo condicional Ejecutar si el smbolo ha sido definido Ejecutar si el smbolo no ha sido definido Incluye Ficheros fuentes adiccionales Opciones listado Declara una Macro Variable como local Declara la Definicin del Macro Especifique la direccin del RAM mxima Crea Mensajes definidos por el usuario Termina la Expansin del Macro Termina el Listado del Rendimiento Pone el Origen del Programa Inserta el nmero de pgina del listado Genere el cdigo de seleccin de la pgina de ROM El Tipo del Procesador fijo Especifique Radix Predefinido Reserve la Memoria Defina Variable de ensamblador Inserta lneas en blanco Especifique el Subttulo del Programa Especifique el Ttulo del Programa Empieza la seccin de datos no inicializados Sintaxis _badram <expr> bankisel <label> banksel <label> cblock [<expr>] [<name>] code [<address>] _ _config <expr> constant <label>[=<expr>,...,<label>[=<expr>] ] [<label>] data <expr>,[,<expr>,...,<expr>] [<label>] db <expr>[,<expr>,...,<expr>] [<label>] de <expr>[,<expr>,...,<expr>] define <name> [<value>] define <name> [<arg>,...,<arg>] <value> [<label>] dt <expr>[,<expr>,...,<expr>] [<label>] dw <expr>[,<expr>,...,<expr>] Else End Endc Endif Endm Endw <label> equ <expr> error <text_string> errorlevel 0|1|2| <+|-><message number> Exitm expand extern <label>[ ,<label>] [<label>] fill <expr>, <count> global <label>[ ,<label>] [<name>] idata [<address>] _ _idlocs <expr> if <expr> ifdef <label> ifndef <label> include <<include_file>> |<include_file> list [<list_option>,...,<list_option>] local <label>[,<label>] <label> macro [<arg>,...,<arg>] _ _maxram <expr> messg <message_text> Noexpand Nolist <label> org <expr> Page pagesel <label> processor <processsor_type> radix <default_radix> [<label>] res <mem_units> <label> set <expr> space <expr> subtitle <sub_text> title <title_text> [<name>] udata [<address>]

MPLAB

Leonardo Flores

ESCUELA POLITECNICA DEL EJRCITO Entorno MPLAB


UDATA_OVR UDATA_SHR #UNDEFINE VARIABLE WHILE Empieza la seccin de datos no inicializados superpuestos Empieza la seccin de datos no inicializados compartidos Anula una Etiqueta de la Substitucin Declara un smbolo como variable Realiza el bucle Mientras la Condicin es Verdadera [<name>] udata_ovr [<address>] [<name>] udata_shr [<address>] #undefine <label> variable <label>[=<expr>,...,<label>[=<expr>] ] while <expr>

Tabla 1. Directivas principales de MPLAB

3. INTRUCCIONES BASICAS DE
MPLAB Las instrucciones de la gama media las encontraremos resumidas en la siguiente tabla identificando a w es el acumulador, f es la frecuencia un registro cualquiera y C, DC, Z los flags del registro status.

La gama media tiene un total de 35 instrucciones y cada una de las cuales ocupan 14 bits. Las 35 instrucciones se encuentran detalladas a continuacin en las tablas (2,3,4,5).

MPLAB

Leonardo Flores

ESCUELA POLITECNICA DEL EJRCITO Entorno MPLAB

Tabla 2. Repertorio de instrucciones de la gama media

MPLAB

Leonardo Flores

ESCUELA POLITECNICA DEL EJRCITO Entorno MPLAB

Tabla 3. Repertorio de instrucciones de la gama media

MPLAB

Leonardo Flores

ESCUELA POLITECNICA DEL EJRCITO Entorno MPLAB

Tabla 3. Repertorio de instrucciones de la gama media

MPLAB

Leonardo Flores

ESCUELA POLITECNICA DEL EJRCITO Entorno MPLAB

Tabla 2. Repertorio de instrucciones de la gama media

MPLAB

Leonardo Flores

ESCUELA POLITECNICA DEL EJRCITO Entorno MPLAB

CONCLUSIONES
En definitiva se trata de un sistema o software con un set de comandos para utilizar. Con la base terica descrita en este artculo sobre los comandos bsicos de programacin podemos empezar a manipular el MPLAB y realizar aplicaciones bsicas para los microcontroladores Existen varias instrucciones que podran facilitar el desarrollo de programas en este entorno. Las directivas son de mucha utilidad para poder realizar un programa ya que son palabras claves que indican una accin especifica al MPLAB. El MPLAB es un entorno que permite realizar aplicaciones para una gran variedad de microcontroladores comprobar si estn bien hechos,

simularlos y tambin nos da opcin de realizar correcciones de ser necesario.

ENLACES
http://www.terra.es/personal/fremir o/directivas.htm http://www.unicrom.com/Tut_analogic
o_digital.asp

http://www.slideshare.net/victorpe/ uso-mplab-presentation

http://rluis.xbot.es/pic2/pic2_13.html http://www.terra.es/personal/fremi ro/directivas.htm http://es.wikipedia.org/wiki/MPL AB http://www.slideshare.net/victorpe /uso-mplab-presentation

MPLAB 10

Leonardo Flores

S-ar putea să vă placă și