You are on page 1of 7

UNIVERSIDAD NACIONAL MICAELA BASTIDAS DE APURIMAC ROBOTICA GUIA DE LABORATORIO

l. TEMA :

EL IDE MPLAB

II. OBJETIVOS
El estudiante al finalizar la prctica ser capaz de: 1. 2. Utilizar el IDE MPLAB como una herramienta para la creacin de proyectos basados en el PIC 16F84 A. Escribir, editar, compilar y ejecutar programas bsicos en el lenguaje ensamblador del PIC 16F84 A.

III. MATERIALES NECESARIOS Para el desarrollo de la presente prctica, es necesario: 1. Aplicacin MPLAB versin 8.x o superior. IV. TRABAJO PREPARATORIO Es recomendable que el estudiante haya culminado el estudio de la arquitectura del PIC 16F84 A V. MARCO TEORICO IDE MPLAB El desarrollo de aplicaciones para micro controladores como el PIC 16F84 A se facilita mucho con el uso de herramientas de programacin como el IDE MPLAB, producido por la misma empresa que construye el chip que utilizaremos en la presente asignatura. El IDE MPLAB, incluye un entorno que integra, junto a las herramientas que normalmente se encuentra en este tipo de aplicaciones (Editor de textos, Compilador, depurador), un simulador que permite evaluar la ejecucin detallada de los programas, permitiendo incluso simular los puertos de e/s. Para una descripcin detallada de las caractersticas del IDE, se recomienda visitar el sitio Web del fabricante, cuya direccin se indica al final de la presente gua.

UNIVERSIDAD NACIONAL MICAELA BASTIDAS DE APURIMAC ROBOTICA GUIA DE LABORATORIO

CREACIN DE PROYECTOS A continuacin indicaremos los pasos que se debe seguir para la creacin de un proyecto para el PIC 16F84 A
1. Iniciar el IDE, desde el men de Inicio o el icono de la aplicacin, si este

est en el escritorio. El entorno del IDE se muestra en la siguiente figura:

Como se puede ver, inicialmente se presenta un espacio de trabajo sin nombre y vaco. Cualquier programa que se escriba debe estar dentro de un proyecto, por tanto, lo primero que hagamos ser crear un proyecto. 2. Para crear un proyecto utilizaremos un Asistente, el cual se puede iniciar desde el men Project

UNIVERSIDAD NACIONAL MICAELA BASTIDAS DE APURIMAC ROBOTICA GUIA DE LABORATORIO

3. A continuacin, debemos seguir las indicaciones que el Asistente de Proyectos nos proporciona

UNIVERSIDAD NACIONAL DE SAN ANTONIO ABAD DEL CUSCO MICROPROCESADORES GUIA DE LABORATORIO
ECP 3 de 13

4. El primer requerimiento, es sobre el dispositivo (PIC) que utilizaremos para el proyecto. En nuestro caso, siempre ser el 16F84 A 5. La siguiente opcin la aceptamos por defecto. En esta, se pide las herramientas que utilizaremos para el proyecto, y en nuestro caso, siempre ser la suite de herramientas MPASM

UNIVERSIDAD NACIONAL DE SAN ANTONIO ABAD DEL CUSCO MICROPROCESADORES GUIA DE LABORATORIO
ECP 4 de 13

6. A continuacin indicamos la carpeta en donde se guardar la informacin del proyecto, as como el nombre del mismo. La ruta hasta el proyecto no debe exceder los 62 caracteres o tendremos problemas al compilar los programas

UNIVERSIDAD NACIONAL DE SAN ANTONIO ABAD DEL CUSCO MICROPROCESADORES GUIA DE LABORATORIO
ECP 5 de 13

7. Si ya existiesen archivos que agregar al proyecto, podemos agregarlos en el siguiente paso del Asistente. En nuestro caso dejamos esta opcin en blanco. 8. Finalmente, el Asistente nos mostrar un resumen de los datos de nuestro proyecto. Si todo est de acuerdo a nuestros requerimientos, damos por finalizado el proceso de creacin del proyecto

UNIVERSIDAD NACIONAL DE SAN ANTONIO ABAD DEL CUSCO MICROPROCESADORES GUIA DE LABORATORIO
ECP 6 de 13

9. A continuacin, en la ventana que presenta el IDE veremos que tenemos un espacio de trabajo (Workspace) con el nombre correspondiente al que acabamos de crear y que por el momento no contiene nada.

UNIVERSIDAD NACIONAL MICAELA BASTIDAS DE APURIMAC ROBOTICA GUIA DE LABORATORIO

10. A continuacin se debe crear un archivo (File -> New) en el cual escribiremos el cdigo correspondiente al programa que queremos implementar

UNIVERSIDAD NACIONAL DE SAN ANTONIO ABAD DEL CUSCO MICROPROCESADORES GUIA DE LABORATORIO
ECP 7 de 13

11. Este archivo debe guardarse en la carpeta del proyecto, con un nombre adecuado al objetivo del programa 12. Luego, debemos agregar este archivo a nuestro proyecto 13. Finalmente, el programa ha sido agregado al proyecto y ahora puede ser compilado

UNIVERSIDAD NACIONAL DE SAN ANTONIO ABAD DEL CUSCO MICROPROCESADORES GUIA DE LABORATORIO
ECP 8 de 13

COMPILACIN DE PROGRAMAS Una vez que el cdigo correspondiente al programa que estamos diseando esta terminado, procedemos con la etapa de compilacin. Si no hubo errores de sintaxis en el cdigo fuente, el proceso de compilacin culminar satisfactoriamente con un mensaje como el mostrado en la venta Output de la siguiente figura Si hubo errores en la etapa anterior, el compilador nos indicar el tipo de error y su ubicacin, tambin con un mensaje a travs de la ventana de salida del compilador.

UNIVERSIDAD NACIONAL DE SAN ANTONIO ABAD DEL CUSCO MICROPROCESADORES GUIA DE LABORATORIO
ECP 9 de 13

DEPURACIN DE PROGRAMAS El IDE MPLAB, incluye, como se indic previamente, herramientas que permiten la depuracin de programas. Para depurar un programa, debemos seleccionar un depurador. Esto puede hacerse desde la opcin del men Debugger -> Select Tool -> MPLAB SIM, como se indica en la figura Al seleccionar esta opcin, se agregar una barra adicional, con las herramientas de depuracin disponibles Adicionalmente, podemos seleccionar ver los registros de archivo y los registros de

UNIVERSIDAD NACIONAL MICAELA BASTIDAS DE APURIMAC ROBOTICA GUIA DE LABORATORIO

funcin especial, para poder ejecutar paso a paso un programa y ver como se modifican estos registros u otros elementos del sistema, los cuales pueden seleccionarse desde el men View.

UNIVERSIDAD NACIONAL DE SAN ANTONIO ABAD DEL CUSCO MICROPROCESADORES GUIA DE LABORATORIO
ECP 10 de 13

Una sesin tpica de depuracin se muestra en la siguiente figura, donde se puede ver que el resultado final de la ejecucin del programa es la suma de 10 + 15 = 25 (19 en el sistema de numeracin hexadecimal); valor que se encuentra almacenado en la posicin 20h EJECUCIN DE PROGRAMAS Los programas que se obtienen con el IDE MPLAB, deben transferirse al PIC 16F84 A para su ejecucin. Sin embargo, en esta primera etapa, ejecutaremos los mismos, dentro del IDE a fin de verificar el correcto funcionamiento de los mismos y la depuracin para comprender mejor la operacin de este micro controlador. Estos programas tambin pueden ejecutarse en simuladores del PIC 16F84 A como el PICSim, PICEMU y otros.

UNIVERSIDAD NACIONAL DE SAN ANTONIO ABAD DEL CUSCO MICROPROCESADORES GUIA DE LABORATORIO
ECP 11 de 13

VI. DESARROLLO DE LA PRACTICA 1. Modifique el programa anterior de tal manera que la suma obtenida, se reste de 30 y el resultado se almacene en la posicin 20h de memoria. Verifique que obtiene el resultado correcto Solucin
;*************************************** ; Nombre : apAritmetica ; Proposito : Muestra el uso de instrucciones aritmeticas ; Autor : Edwin Carrasco ; FCreacion : 18/11/2007 ; FModificacion : -----LIST P=16f84A ; Modelo de PIC utilizado

UNIVERSIDAD NACIONAL MICAELA BASTIDAS DE APURIMAC ROBOTICA GUIA DE LABORATORIO

INCLUDE <P16f84A.INC> ; Contiene definiciones de elementos del PIC ;******** CODIGO ******** ORG 0 ; Indica donde comienza el programa Inicio movlw .10 ; W _ 10 addlw .15 ; W _ W + 10 sublw .30 ; W _ 30 - W movwf 20h ; M[20] _ W END

2. Escriba un programa que calcule la suma de dos nmeros almacenados en las variables num1 y num2 y que guarde el resultado en la variable suma Solucin
;*************************************** ; Nombre : apSuma ; Proposito : Muestra el uso de variables ; Autor : Edwin Carrasco ; FCreacion : 18/11/2007 ; FModificacion : -----LIST P=16f84A ; Modelo de PIC utilizado

UNIVERSIDAD NACIONAL DE SAN ANTONIO ABAD DEL CUSCO MICROPROCESADORES GUIA DE LABORATORIO
ECP 12 de 13

INCLUDE <P16f84A.INC> ; Contiene definiciones de elementos del PIC ;******** DATOS ******** num1 equ 0xA num2 equ 0xB suma equ 0xC ;******** CODIGO ******** ORG 0 ; Indica donde comienza el programa Inicio movlw .10 ; W <- 10 movwf num1 ; num1 <- 10 movlw .15 ; W <- 15 movwf num2 ; num2 <- 15 movfw num1 ; W <- num1 addwf num2,W ; W <- W + num2 movwf suma ; M[20] <- W END

VII. EJERCICIOS PROPUESTOS 1. Escriba un programa que calcule la diferencia de dos nmeros almacenados en las variables num1 y num2 y almacene el resultado en la variable diferencia

UNIVERSIDAD NACIONAL MICAELA BASTIDAS DE APURIMAC ROBOTICA GUIA DE LABORATORIO

2. Escriba un programa que sume el contenido de las variables num1 y num2 y a este valor le reste el contenido de una variable num3. el resultado de estas operaciones se debe almacenar en una variable llamada total. 3. Escriba un programa que intercambie los valores de las variables num1 y num2. 4. Escriba un programa que calcule X = (A + B) (C + D), para A = 21, B = 15 C = 13 y D = 12. Muestre en qu posiciones de memoria se almacenan las variables. VIII. BIBLIOGRAFIA BIBLIOGRAFIA BSICA 1. Angulo Jose et. al. Microcontroladores PIC. Diseo prctico de aplicaciones. 3ed. McGraw Hill 2003 2. Gardner Niguel. A Beginners Guide To The Microchip PIC. 1ed. Blueprint Technical Press 1998. 3. Palacios Enrique et. al. Microcontrolador PIC 16F84. Desarrollo de proyectos 2Ed. Alfaomega 2006

UNIVERSIDAD NACIONAL DE SAN ANTONIO ABAD DEL CUSCO MICROPROCESADORES GUIA DE LABORATORIO
ECP 13 de 13

4. www.microchip.com Sitio Web del fabricante del PIC 16F84 y del IDE MPLAB 5. http://ww1.microchip.com/downloads/en/DeviceDoc/35007b.pdf - Ficha tcnica del PIC 16F84 BIBLIOGRAFIA COMPLEMENTARIA 1. http://www.hispavila.com/3ds/chipspic/microspic1.html 2. http://sputnik.epsj23.net/%7Eeserra/elect/pics/pic16f84.html

You might also like