Home
Capítulo 3
Contents
1. C mo Escribir Programas y Hacer la Verificaci n en los PICs Introduccion MPLAB es un entomo de desarrollo inte grado que le permite escribir y codificar los microcontroladores PIC de Microchip para ejecutarlos El MPLAB incluye un edi tor de texto funciones para el manejo de proyectos un simulador intemo y una va riedad de herramientas que lo ayudar n a mantener y ejecutar su aplicaci n Tam bi n provee una interfase de usuario para todos los productos con lenguaje Micro chip programadores de dispositivos siste mas emuladores y herramientas de tercer orden El MPLAB est dise ado para ser ejecu tado bajo Windows 3 11 y puede operar con Windows 95 y 98 Asume que el usua rio ya conoce el entomo de Windows y sa be manejano La gu a que describimos en este cap tu lo le permitir realizar las siguientes tareas e Manejar el escritorio MPLAB e Crear un nuevo archivo de c digo fuente para el ensamble e ingresarlo a un nuevo proyecto para el 16F84 e Identificar y corregir los errores simples e Ejecutar el simulador interno e Marcar puntos de interrupci n e Crear ventanas de observaci n e Manejar ventanas para el seguimiento de errores Para que Ud aprenda a programar sus microcontroladores damosa continua ci n paso a paso las instrucciones de ins talaci n y uso de la aplicaci n 1 Instalaci n Descargue los archivos del software de instalaci n y ejecute el archivo MPxxxxx E XE Est
2. figura 26 Si abre el di logo Debug Est mulo del Simula dor gt Est mulo de Reloj podr in gresar varios est mulos de reloj como se muestra en la figura 26 Cuando ejecute el programa usando las configuraciones es tablecidasen la figura RB3 ser Alta para 4 ciclos de reloj y luego Baja para 6 ciclos de reloj RB4 ser Alta para 8 ciclos de reloj y luego Baja para 8 ciclos de reloj Ambos valores se repetir n hasta que salga del MPLAB o los elimine usando este di logo Interrupci n Condicional El di logo punto de intemupci n com plejo es til para configurar un punto de in temupci n en una condici n compleja y especial C mo Cargar el PIC Una vez que estamos seguros que nues tro programa funciona de acuerdo con el test realizado mediante el empleo de nuestro programa estamos en condicio Todo sobre PICs 47 C mo ESCRIBIR PROGRAMAS Y HACER LA VERIFICACI N EN LOS PICs nesde grabar nuestro PIC para lo cual debemos seguir las instrucciones da dasen el cap tulo 2 Cabe aclarar que el programa MPLAB tiene en su barra de herra mientas un ico no de ayuda HELP que explica paso por paso todo lo que se puede hacercon el programa Para muchos el problema resi de en que lostextos de ayuda est n en in gl s Para que tenga una idea de la infor maci n que contienen dichos archivos de ayuda nosotros hemostraducido unas 450 p ginas que paulatina mente iremos publi cando a modo de gu as
3. gura 1 que le permitira seleccionar loscomponentes de lenguaje Micro chip que desee instalar Usua Imente debiera seleccionanos todos por de fecto Al hacer doble click en MP40000 EXE el instaladorle va di ciendo lo que debe hacer Luego de instalarlos ejecute MPLAB EXE o clique el cono MPLAB para iniciar el sistema Aparecer el escritorio del MPLAB figura 2 la ll ASA AE 2 Configurar el Modo de Desarrollo El escritorio b sico del MPLAB se asemeja al de lasaplicaciones de Windows como pudo veren la pan talla de la figura 2 Tiene una barra de men en el margen superior una barra de heramientas y tambi n una barra de estado en el margen inferior Podra advertir que la barra de esta do incluye informaci n sobre c mo se ha configurado el sistema Nota El modo de desarrollo de termina la herramienta debe elegir alguna que ejecutar el c digo Pa ra esta gu a usaremos el simulador de soft m s informaci n para cambiara una de ware MPLAB SIM Si sabe del tema y tiene susoperaciones Al seleccionar el item del un emulador en este cap tulo encontrar men Opciones gt Modo de Desarrollo 34 Todo sobre PICs C mo ESCRIBIR PROGRAMAS Y HACER LA VERIFICACI N EN LOS PICs aparecer una caja de di logo semejante a la de la figura 3 El MPLAB es un produc to en constante evolu ci n de modo que pue den aparecer sutiles dife rencias entre la pantalla Figura 4 que usted vea
4. r la ventana Resultados de Construcci n Build Results fi gura 9 Ha ingresado intencionalmen te al menos un enor si ingres el c digo tal como lo hemos es crito en el paso anterior El ltimo goto en el programa refiere a un r tulo inexistente llamado 38 Todo sobre PICs bug Dado que este r tulo no ha sido de finido previa mente el lenguaje ensa mbla dorinformar el eror Tambi n podr a rele var otros errores Haga un doble clic sobre el mensaje de error De este modo ubicar el cursor en la linea que contiene el ermoren el c digo fuente Cambie bug por start Use la ventana Resultados de construcci n Build Results para hacer una b squeda de errores y reparar los que aparecieran en el c digo fuente Reensa mble el archi vo ejecutando la funci n de menu Pro yecto gt Construir todo Este procedimiento puede demandar un par de repeticiones Nota Cuando reconstruya un proyecto todos sus archivos fuente ser n guardados en el disco Luego de reparartodos los problemas en el c digo fuente la ventana Resulta dos de construcci n mostrar el mensaje Construcci n completada exitosamente Build completed successfully Ya ha completado un proyecto que puede eje cutarse usando el simulador Como ver aun no tiene ni idea que program pero ya program algo que luego introducir en un PIC Para tener idea cabal de lo que est ha ciendo contin e leyendo esta
5. Dr4000000 Device Frequency is 4 MHz DB_HTI_ BYTE EQU HIGH Dev_Freq 4 1 D 1000 3 1 LCD_INIT_DELAY EQU HIGH Dev_Freq 4 D46 D 10000 3 1 TNNER_CNTR EQU 40 RAM Location OUTER_CNTR EQU 41 RAM Location TLOSO EQU The RCO T10SO TICKI RESET_V EQU 0x0000 Address of RESET Vector ISR_V EQU 0x0004 Address of Interrupt Vector PMEM_END EQU 0x07FF Last address in Program Memory TABLE_ADDR EQU 0x0400 Address where to start Tables HR_MIN_SW EQU 0x7 The switch to select the units INC_SW EQU 0x6 The switch to increment the selected units CLR_MIN_SW The switch to clear the minutes and seconds Register which contains flag bits Todo sobre PICs 49 C mo ESCRIBIR PROGRAMAS Y HACER LA VERIFICACI N EN LOS PICs KEY_INPUT MIN_UNIT HR_UNIT F HRS HRS MIN SECS MSD LSD TEMP CHAR Temporary Temporary Temporary Temporary WATT_CNTR LCD Display Commands and Control Signal EQU 0 EQU 1 EQU 2 LCD Module commands DISP_ON DISP_ON_C DISP_ON_B DISP_OFF EQU EQU EQU EQU EQU EQU EQU EQU EQU EQU EQU Display Display Display Display CLR_DISP ENTRY_INC ENTRY_INC_S ENTRY_DEC ENTRY_DEC_S DD_RAM_ADDR DD_RAM_UL i mollo participan en estas conferencias Este esel modo m s r pido para ven cer los obst culos que puedan surgir infor mar sobre problemas o simplemente revi sar las preguntas ya reg
6. di logo Editar Proyecto sera seme jante al mostrado en la figura 6 Advierta que el nombre del archivo de destino ya ha sido completado Ya cono ce el modo de desarrollo que configura mos previa mente y asume que usaremos la serie de herramientas de lenguaje Mi crochip En la ventana Archivos de Pro yecto Files proyect encontrar tutor84 hex Al destacar este nombre se podr utilizar el cono Propiedades del Nodo Node Properties Seguidamente debe indicarle al MPLAB c mo crearel archivo hex H galo clicando el bot n Propieda des del Nodo Aparecer el di logo Pro piedades del Nodo Este di logo contie ne todas las configuraciones por defecto para una herramienta de lenguaje en es te caso MPASM como podr veren en el ngulo superior derecho del di logo En su forma m s simple el proyecto contiene un archivo hex creado desde un archivo 36 Todo sobre PICs fuente de ensamble Esta ser la configu raci n pordefecto cuando aparezca el di logo Propiedades del Nodo Node Properties vea la figura 7 Nota Como puede ver ha y una canti dad de filas y columnas en este di logo Cada fila usualmente corresponde a un cambio aquellos elementos que se establecen en la l nea de comando cuando se invoca una herramienta De hecho la configuraci n de estos cambios se refleja en la ventana L nea de Coman do comand line pr xima al margen in ferior de la pantalla Esta esla l nea de
7. grama y la bara avanzan a trav s del pro grama Ejecute el tem de men Debug gt Ejecu tar gt Ejecutar Debug gt Run gt Run o presione F9 para inciar la ejecuci n del programa desde la la ubicaci n actual del contador Los colores de la bara de estado cambia r n para indicar que el programa est ejecutando las instrucciones Ninguno de loscamposde la bara de estado se ac tualizar mientras el programa est en eje cuci n Detenga el programa ejecutando el item de men Debug gt Run gt Halt detener o presionando F5 La barra de estado vol HPLAS CAPERPS TUTORIAL UT OR Be Pst Fie Erect Ese MEA E PRD MATE pr sas Jod eens Hei Firm Pigues full Soins 4 Update 4 Hegar Charge Progesa Cowden Loa Fe hahi se Eo begisaioag of user code ura Mera Lie t Darter F saat Chiki arbitrary value qrester Phy Pos Arf mEnE hrs i ardable a defined aboue Ci Tieki i ncrement cemeter place results im file regisher Loop until cesater overt lows E j Figura 10 ver a su color orginal y el contador del programa y otras informaciones de su es tado ser n actualizadas Nota Otra manera de ejecutar funcio nesesusarla barra de herra mientas ubi cada en el margen superior de la panta lla Si ubica el cursor sobre los tems de la barra de herramientas podr ver el nom bre de su funci n en la bara de estado El bot n de la izquierda es un bot n est n dar cambiar barra de h
8. reparar el primero corregir los restantes CONFIGURACI N DE BrTs Y EL MODO DEL PROCE SADOR La configuraci n de bitsen el archi vo fuente no determinar el modo del pro cesador para el simulador o los emula do res Use Opciones gt Configurar Procesa dor gt Hardware Options gt Procesor Setup gt Hardware para estas configuraciones A n cuando puede establecer estos bits en elarchivo fuente del MPASM o del MPLAB C17 el MPLAB no cambia autom ticamente los modos Por ejemplo la con figuraci n de bit Activar Observaci n de Dog Timer puede hacerse de tal modo que cuando programe un dispositivo el Dog Timer sea activado En el MPLAB tam bi n necesitar accederal di logo Op ciones gt C onfigurar Procesador gt Hardware para activarel WDT para el smuladoro el emulador Esto le permitir hacer un segui miento de errorescon el WDTactivado o desactivado sin cambiarsu c digo fuente OPCIONES Use Opciones gt C onfigurar En tomo Options gt Enviro ment Setup para hacer lo siguiente Establecer teclas de Mapa Europeo 42 Todo sobre PICs para funciones MPLAB y caracteres ASCII especiales Cambiar la fuente de la pantalla o el tama o de la fuente Posicionarla barra de herramientas a un lado o al pie de la pantalla Modificar la barra de herramientas Cambiarla cantidad de caracteres desplegados para los r tulos ARCHIVOS MAPA Use el di logo Proyec to gt Editar Proyecto y cambie las Pr
9. utar gt Animado para que el procesador se ejecute en el modo paso a paso rapido La bama de estado altemara la ejecuci n con una detenci n muy r pida Presione el bot n RBO T en el di logo Est mulo Asincr nico Deber a ver el cam bio de valor del puerto b en la ventana Registro de Funci n Especial mientras re petida mente clique el bot n para simular una se al alta y luego una baja aplicadas al pin O del puerto b Aca nehrennas S malas nbang Stim F Fy tim 1 Fy Sim tory Ca na at Shen fr C mo ESCRIBIR PROGRAMAS Y HACER LA VERIFICACI N EN LOS PICs Archivos de Est mulo Pin Un archivo de est mulo pin consiste en columnas de unos y ceros de ingreso que ser n apli cadasa los pines cuando el va lor Ciclo en el Reloj de deten ci n alcance al de la columna CICLO Use Archivo gt Nuevo archivo y tipee el texto de la tabla 2 No debe tipear el texto que sigue a los y que se limita a co mentarios Use Archivo gt Guardar co mo para guardarcomo tu tor84 sti Nota Para mantener una compatibilidad retroactiva con versiones antenores del MPSIM la primera linea siempre debe comenzar con las palabras Cl CLO o STEP Esta columna es pecifica el CICLO como lo de termina la Ventana del Reloj de Detenci n del MPLAB donde los valores de las otras columnas ser n aplicados Luego de la palabra CICLO en la primera l nea del archivo se colocan los nombres d
10. y la que mostramos aqui Seleccione el cono pr ximo al Simulador MPLAB SIM MPLAB SIM Simulator y elija 16F84 que corresponde a un tipo de PIC en la lista de procesadores disponibles que pueden ser resistidos por el simulador Cli que 16F84 y luego presione el bot n Re set De este modo se iniciar el simulador y deber a apareceren la barra de estado 16F84 y Sim Se encuentra asi en el mo do simulador para el 16F84 Crudo Project 3 C mo Crear un Proyecto Simple El simulador se ejecutar desde el mis mo archivo llamado archivo hex el cual puede ser programado en el micro PIC Para que se ejecute el simulador primero deber crearun archivo de c digo fuente y realizar el montaje del c digo fuente A continuaci n explicaremos c mo lle vara cabo este proceso Nota El lenguaje ensamblador produce entre otros elementos un archivo hex Este archivo tiene la extensi n hex A este archivo lo llamaremos tutor84 hex M s adelante este archivo puede ser cargado directamente en el programador del dispositivo sin usar el ensambladoro un proyecto del MPLAB Este archivo tambi n puede sercargado porotros programado res de tercer orden Seleccione Archivo gt Nuevo File gt New en el men y aparecer la ca ja de di logo de la figura 4 Clique en el bot n Si segui damente aparecer un di lo go de exploraci n de Windows estandard Decida d nde de sea crearsu proyecto en qu c
11. Presione F7 varas veces para advertir c mo se actualiza la ventana de observa ci n mientras el valor del contador se in crementa Si dej la ventana de registro de archivo abierta la misma tambi n ser actualizada mueva una de ellas para que pueda verlasdosen la pantalla Puede guardar la ventana de observa ci n y sus configuraciones al ejecutar el item Guardar observaci n Save Watch debajo del bot n del sistema ubicado en el ngulo superior izquierdo de la ventana de observaci n Al clicar este bot n se desplegar un men en cascada Selec cione Guardar observacion y aparecer el di logo de exploraci n est ndar ubica do en el directorio del proyecto Elija alg n nombre arbitrario y presione Aceptar OK C mo ESCRIBIR PROGRAMAS Y HACER LA VERIFICACI N EN LOS PICs Sino nombra la ventana de observa ci n el MPLAB lo har porusted La ubica ci n y el estado en la pantalla de la ven tana abierta o cerrada ser n guardados con el proyecto de modo que la pr xima vez que abra su proyecto sus ventanas de observaci n aparecer n restauradas Nota Tambi n puede editar ventanas de observaci n luego de creanas Use el bot n del sistema y seleccione Agregar Observaci n Add Watch para que apa rezca un di logo mediante el cual podr agregar mas tems Con la tecla Ins po dr hacerlo mismo Si desea bornar un item selecci nelo y presione la tecla Supr mir Delete la observaci n re
12. arpeta o lugar de su disco r gi do lo va a guardar y recuerde d nde lo ubic Mastarde necesitar esta informa ci n Esta gu a usa un directorio en c temp tutorial y crea el archivo de pro yecto llamado tutor84 pjt figura 5 PJT es el sufijo estandar para los archivos de pro yectos en el MPLAB El prefijo del nombre de archivo del proyecto en este caso tu tor84 ser el prefijo por defecto de mu chos de losarchivos que el MPLAB usar o crear para esta gu a Clique Aceptar OK para que aparezca el di logo Pro yecto MPLAB Este di logo puede parecer confuso pero en realidad es muy simple Nota El simulador los programadores y los sistemas emuladores que operan con el MPLAB usan un archivo hex creado porel ensamble la compilaci n y o el linking del c digo fuente Algunas hera mientas diferentes pueden creararchivos hex al teneren cuenta que estas herra mientas formar n parte de cada proyecto Los proyectosle dan la flexibilidad para describirc mo se construir la aplicaci n y qu hemamientas se usar n para crearel archivo hex Obvia mente en la gu a nos ocupare Todo sobre PICs 35 C mo ESCRIBIR PROGRAMAS Y HACER LA VERIFICACI N EN LOS PICs Edit Project Project Target Filename fubon hex hich Path L Hasy Path Linker Sonpt Fath Development Mae HPLAD GIM 16504 Language Teal Suite Project Files bulge hug Figura 6 mos de todos estos detalles El
13. bi n seleccione Ventana gt Regis tros de Funci n Especial Estaremos interesados en observar el puerto b Tambi n se puede agregarel puerto b a una ventana de observaci n figura 22 Resetee y ejecute instrucci n por instrucci n hasta ejecutar 41 ciclos Luego ver que el puerto b cambi su valor al asignado en la segunda l nea del archivo de est mulo Archivos de Est mulo de Registro Un archivo de est mulo de re gistro consiste en una columna de los valores que ser n envia dosa un registro cuando la di recci n de memoria del progra ma alcance la ubicaci n esta 46 Todo sobre PICs Ad ARA TICA IT CELE Meranie Diore Come Dd Loren Break Heii Trans Exciting issi Al Pot Cia Prog drop Codie Trinn aa Onl ke Tt Pei lla Pasa ES blecida en el Di logo Est mulo de Registro Esto es til para simularuna operaci n A D Abra un nuevo archivo usando Archi vo gt Nuevo Archivo y tipee la siguiente lista de n meros 10 2E 38 41 50 7A 99 AO FD Guardela usando Archivo gt Guardarco mo y n mbrela tutor84 reg C mo ESCRIBIR PROGRAMAS Y HACER LA VERIFICACI N EN LOS PICs File Register Windaw all x bo 01 62 06 04 03 06 07 20 05 a Om de Co dz dr 3 Ono iT E J 00310 1 00 0 i fl omg 1 00 0 ili 1 060 1 on 0 fl DHI no 0 Este archivo ser usado para introducir secuencialmente estos valores en un regis tro Seleccione Est mulo de Simula d or gt Es
14. comando que se usar cuando se invo que el MPASM desde el MPLAB Porel mo mento puede usar las configuraciones pordefecto pero cuando ya sepa cons truiruna aplicaci n probablemente de sear cambiar algunas Al clicarel bot n Aceptar OK apli car estas configuraciones y retomar al di logo Editar Proyecto Edit Project con el cono bot n Agrega Nodo Add No de disponible Presione el bot n Agregar Nodo Apa recer el di logo de exploraci n de Win dows est ndar con el mismo directorio usado para el proyecto Ingrese el nombre de archivo tutor84 asm y presione Acep tar Retomar al di logo Editar Proyecto Lipi H ip CIRE itii i h Werda g iari Cear oooh C mo ESCRIBIR PROGRAMAS Y HACER LA VERIFICACI N EN LOS PICs Figura 8 donde podr ver tutor84 asm a adido debajo del archivo hex que indica que es un nodo concunente Al presionar Acep tar retomar al escritorio MPLAB con un archivo de c digo fuente abierto y a n sin nombre 4 C mo Crear un nuevo Archivo Fuente Simple Clique dentro del espa cio en blanco de la venta na de archivo creada Se gura mente se llamar Sin titulo Untitled De este modo accedera al foco de la ventana Use la op ci n de men Archivo gt Guardar como y guar de elarchivo vac o como tutor84 asm Cuando abra el di logo de exploraci n est ndar encontrar su ubicaci n en el directorio del proyecto Ingr
15. cutar la carga y cl lue go reflejar un valor de 0x09 Presione F9 varias veces y advierta que la bara de es tado cambia de color mientras el progra ma se est ejecutando y luego retoma a su colororiginal cuando el procesador se detiene Resumen Hasta aqu en este cap tulo Ud ha aprendido configurar un nuevo proyecto crear e ingresar un archivo fuente en un proyecto ensamblar un c digo ejecutar su c digo usando el simulador marcar puntos de interrupci n y ejecu tar su c digo paso a paso instrucci n por instrucci n observar variables en su c digo Algunas Sugerencias PUNTOS DE INTERRUPCION Puede marcar puntos de intenupci n en la ventana Ven tanas gt Memona de programa Window gt Program Memory en la ventana de ar Todo sobre PICs 41 C mo ESCRIBIR PROGRAMAS Y HACER LA VERIFICACI N EN LOS PICs chivo fuente en este caso tutor84 asm o en la ventana Venta nas gt listado Absoluto Windows gt A bso lute ARCHIVOS FUENTE Use Venta na Venta na de Proyecto Window gt Projet Window pa ra que aparezca una lista de susarchivos fuente Puede hacer un doble clic sobre el nombre de un archivo para trasladarlo al editor ERRORES MPASM Si el MPASM le da un error haga un doble clic sobre el eroren la ventana de enor para ral erroren el c digo fuente Si tiene m ltiples errores siempre elija el primer error generalmen te un error causa errores subsiguientes y al
16. den descargarse de la p gina web de Microchip MPLAB C17 El compilador 17c xxx opera con el MPLINK y el Administrador de Proyecto del MPLAB Vea la Gu a del Usuario de MPLAB C17 y la Guia del Proyecto v3 40 del MPLAB Herramientas de Tercer Orden El PIC C de alta tecnologia el compila dorCCSy el PIC BASIC de Microlngenier a pueden ser usados con el MPLAB Vea sus documentaciones respectivas para obte ner m s informaci n sobre su uso con el MPLAB Problemas Vaya a las conferencias sobre el micro PIC y Sistemas de Desarrollo en www mi crochip com para hacer preguntas que pueden ser tiles para principiantes o ex pertos Los ingenieros de Microchip Appli cation experimentados usuarios del micro PIC y los ingenieros de Sistemas de Desa C mo ESCRIBIR PROGRAMAS Y HACER LA VERIFICACI N EN LOS PICs Figura 27 nolist Figura 28 e HEAR RARA ee te de ok de ke de ake dee AAA de ee oe de ok lee dee de ee oe te dle de oe AAA dee le fe de fe lee ee AAA ede ok kk y This is the custom Header File for the real time clock application note PROGRAM CLOCK H Revision 5 10 94 We Kk A AA A e A kek Je ok ke ak de A kek de kt de ok ek ek de ot eke ak te ok ek eek ok ke eke kek ok ek ok ek AA A ek kek de kt kek ek ke ke kk ra This is used for the ASSEMBLER to recalculate certain frequency dependant variables The value of Dev_Freq must be changed to reflect the frequency that the device actually operates at Dev_Freq EQU
17. e los pines del microPIC que recibir n los valores de est mulo altos y bajos En este ejemplo los pines RB1 y RBO pordosentradasde e Figura 22 port puerto B recibir n entradas de est mulo En este archivo la segunda columna contiene valo res que ser n aplicados a RB1 puerto b bit 1 y la tercera columna presen ta los valores para RBO puerto b bit 0 Estos aplicar alta a puerto b bit 1 aplicar alta a puerto b bit 0 establecer bit 1 bajo toggle bit 1 luego toggle bit 0 HoorHoog Todo sobre PICs 45 C mo ESCRIBIR PROGRAMAS Y HACER LA VERIFICACI N EN LOS PICs nombres deben ser compatibles con los nombres de pin del microPIC de Microchip para el procesador que est siendo simu lado Nota Puede ver todos los pines de so porte en la lista de asignaci n de pines para el Est mulo Asincr nico clique el bo t n derecho del mouse sobre un bot n de est mulo y se desplegar la pantalla de la figura 21 Se pueden hacer comentarios en una l nea usando los caracteres o I precedidos y seguidos como m nimo por un espacio La ventana del Relojde De tenci n tambi n mostrar el tiempo trans cunido a cada instrucci n determinado desde el valor CICLO y la frecuencia del reloj Si el Reloj de Detenci n se resetea a 0 el archivo de est mulo pin tambi n ser efectivamente reseteado Abra la ventana del Reloj de Detenci n y seleccione Ventana Reloj de Deten ci n Tam
18. erramientas change tool bar que le permite desple garlasbarrasde herramientas disponibles Estas pueden ser personalizadas como podr advertirlo en la secci n Algunas Su gerencias al final de esta gu a En la barra de herramientas de Debug la luz verde es equivalente a F9 Ejecuci n y la luz roja equivale a F5 Detenci n Hasta aqu aprendi a instalar el pro grama y crearun archivo para aprender a programar Dimos un ejemplo de pro gramaci n y ya sabemosc mo correr el programa en la PC para sabers todo est bien antes de escribir dicho progra ma en nuestro PIC Sin embargo cuando los programas son m s largos es posible cometer errores para evitarlos sigamos le yendo este cap tulo Todo sobre PICs 39 C mo ESCRIBIR PROGRAMAS Y HACER LA VERIFICACI N EN LOS PICs 8 Abrir Otras Ventanas Para el Seguimiento de Errores Hay muchas maneras de visualizar el programa y su ejecuci n usando el MPLAB Porejemplo este programa est destinado a incrementar un contadortem porario pero c mo puede asegurarse que se est produciendo dicho incremen to Una manera esabrire inspeccionar una ventana de registro de archivo Puede hacerlo ejecutando el item de men Ven tana gt registros de archivo Window gt File Re gister Aparecer una peque a ventana con todos los registros de archivo o el RAM del 16F84 Presione F7 ejecute instrucci n por ins trucci n si piensa anularlo varias vece
19. ese el nombre de archivo y pre sione Aceptar Vea la fi gura 8 Ahora estar n disponi bles el escritorio MPLAB y la ventana de archivo va list cl equ h 0c org h 00 reset goto start org h 04 start movlw h 09 movwf cl loop incfsz goto goto end c o pero el nombre de la ventana de archivo reflejar su nuevo nombre Nota El nombre del archivo fuente y el nombre del proyecto tutor84 en esta gu a deben ser iguales en este ti po de proyectos Hay otros proyectos de archivo m ltiple que usan el lin ker y permiten que el nombre del ar chivo de salida sea diferente al del ar chivo de entrada hay una gu a apar te para los proyectos de archivos m l tiples que usan el linker El MPASM siempre crear un archi vo hex de salida con el mismo nombre que el archivo fuente y esta configuraci n no puede modificarse Si cambia el nom bre del archivo fuente tambi n deber cambiarel nombre del proyecto Ahora ya est listo para escribir el c di go que almacenar en el PIC para que cumpla una funci n determinada p 16f84 include lt p16F84 inc gt Establece el contador de variable temp c1 en la direccion 0x0c Establece la base de memoria del programa en el vector reset 0x00 Ira inicio en el programa principal Establece la base de memoria del programa al comienzo del codigo del usuario Inicializa el contador a un valor arbitrario mayor que cero Guarda el va
20. ferida desa parecer de la ventana Puede seleccio nar Editar observaci n Edit Watch en el men del sistema para cambiar el modo en el cual se muestra el item en hex bina rio como una vanable de 16 bit en vez de 8 bit etc 10 C mo se Marca un Punto de Interrupci n Presione F5 Debug Ejec uta r gt Detener para asegurarse que el procesador del s muladorse ha detenido Clique dentro de la ventana del c digo fuente la l nea si guiente al r tulo start que dice moviw 0 09 Presione el bot n derecho del mou se para que aparezca el men de la figu ra 12 start Ww l mow loop incfs goto hag Tiit r En L Break Points Trace Points c1 F Trager Points loo P Run to Here loop 3 When counter 0 goto Clique el item de men Punto s de in terrupci n Break Point El men desapa recer y la linea donde se ubic el cursor cambiar de color para indicar que ha si do establecido un punto de intemupci n en dicha ubicaci n Presione F6 o ejecute el item de men Debug gt Ejecutar gt Reset Debug gt Run gt Re set para resetear el sistema Luego pre sonando F9 ejecute el sistema El progra ma se ejecutar y se detendr en la ins trucci n ubicada luego del punto de inte nmupci n c 1 como aparece en la venta na de observaci n o en la de registro de archivo si la tiene a n abierta reflejar el estado reset de cero el modo instrucci n porinstruucci n eje
21. gu a y con una PC al lado haga Ud mismo lo que se indica paso por paso AAA Hist prite Emlur piit im Ee e s E aibdirg THERS ETE PEGEL Cong ida Tit edi aie A AR Mee fae fete IEP fg ELT PET A ACES O A mart ran li unable En ribid output Mila TADA MLN alld Fallo Como ESCRIBIR PROGRAMAS Y HACER LA VERIFICACI N EN LOS PICs 7 Ejecuci n de su Programa Use Debug gt Ejecutar gt Reset Debug gt Run gt Reset para iniciar el sistema El contador del pro grama se resetear a cero que eselvector de reset en el 16F84 La l nea del c digo fuente en es ta direcci n ser destacada con una bama oscura Tambi n ad vertir que en la bara de esta do la PC se establecer en 0x00 Use el item de men Debu g gt Ejecutar gt Paso Debug gt Run gt s tep figura 10 Al haceno el contador del programa avanzar hasta la siguiente ubicaci n de instrucci n La bama oscura seguir el c digo fuente y el contador del programa desplegado en la bara de es tado avanzar hasta 4 Cuando ejecute el item de men De bug gt Ejecutar gt Paso advierta la aparici n de un texto en el lado derecho del item de men que dir F7 El mismo equivale a tecla de funci n siete en su teclado Mu chas funciones del MPLAB se asignan a teclas especiales Estas teclas cumplen la misma funci n que los tems de men a los cuales corresponden Presione F7 varias veces y ver c mo el contador del pro
22. igo a rastrear Si clica y arrastra toda la ventana de memora del progra ma pue de seleccionar instrucciones para rastrear Presione luego el bot n derecho del mou se para que aparezca un di logo en el cual podr seleccionar Rastrear Punto s Ahora resetee y ejecute el c digo lue go det ngalo despu s de haberse ejecu tado durante algunos segundos Seleccio ne Ventana Rastreo para ver los resulta dos del rastreo figura 13 El simulador coloca una marca de tiem po en cada l nea y tambi n muestra todos los registros que cambiaron junto a sus va lores figura 14 El est mulo genera se ales para el simu lador Puede establecer pines pasadores altos o bajos e introducir valores directa mente en los registros Hay cuatro modos de est mulo Est mulo asincr nico Un di logo inte ractivo para controlar se ales en los pines de entrada Est mulo de Archivo Pin Los conteni Todo sobre PICs 43 C mo ESCRIBIR PROGRAMAS Y HACER LA VERIFICACI N EN LOS PICs LZS Piece Fa pie Toe Aun Eea Alicea F Hap Pin Stirvade Clack Sirva Faji Brindo k Tennes Debug Laranor Break Setri Trate Beaga Diaa Al Pair Clee Program dema Cole FP Sipe Henar Colson Baer Oni Heel a r3 Figura 15 dana haras Sima Era Sim 10 Ph Sam 11 1 Biel PJ Figura 16 dos de un archivo de texto que describe se ales a los pines de entrada Est mulo de Archivo de Registro Los contenidos de u
23. istradas de otros usuarios a fin de obtener ayuda B eMmPLOS DE APUCACI N CON PICs Reloj con Display de Cristal LCD En la figura 27 se da el circuito de un re 50 Todo sobre PICs Holds counter value Holds counter value Holds counter value Figura 28 continuacion lag to specify if AM or PM lag to specify if doing key inputs lags to specify which units to operate on MIN or none for HOURS for MINUTES for SECONDS Holds MSD of B Holds LSD of B IN to BCD conversi IN to BCD conversi register register register register Holds value to send to LCD modu Counter that holds wait time for key inputs names LCD Enable control line LCD Read Write control line LCD Register Select control line on on on off Clear the Display Cursor on Cursor on Blink cursor Least Significant 7 bit are for address Upper Left corner of the Display loj con microcontrolador que emplea un display de cristal liquido de muy bajo con sumo El diagrama posee el valorde cada componente El programa en Assembler se grafica en la figura 28 Lector de Tarjeta Magn tica Codificada Este circuito es muy f cil de construir y emplea un PIC preprogramado lo cual no impide que un lector experto pueda pro C mo ESCRIBIR PROGRAMAS Y HACER LA VERIFICACI N EN LOS PICs gra mar su propio com ponente dado que brindamos el listado del programa compilado El prototi
24. lor en la variable temp definida Incrementa el contador ubica los resultados en el registro de archivos loop hasta que el contador se completa Cuando el contador se completa va a start para reiniciar Todo sobre PICs 37 C mo ESCRIBIR PROGRAMAS Y HACER LA VERIFICACI N EN LOS PICs 5 Ingresar el C digo Fuente Use el mouse para ubicar el cursor al comienzo de la ventana de archivo vac o tutor84 asm e ingrese el texto de la tabla l vea la p gina anterior exactamente como est escrito en cada l nea No debe ingresar los comentarios los textos que s guen a cada punto y coma Este c digo es un progra ma muy simple que incrementa un contador y lo resetea a un valor predeterminado cuando el contador vuelve a cero Nota Todos los r tulos comienzan en la primera columna y la ltima l nea tiene una directiva end Las p ginas de datos del micro PIC contienen informaci n com pleta sobre instrucciones con ejemplos pa ra su USO Guarde el archivo usando la funci n de menu Archivo gt Guardar File gt Save 6 Ensamble del Archivo Fuente El ensamble del archivo puede realizar se de varias maneras Aqu describiremos un m todo Use el item de men Proyec to gt Construir todo Proyect gt Build All De este modo ejecutar el lenguaje ensam blador MPASM en el trasfondo usando las configuraciones guardadas con el proyec to anteriormente Una vez completado el proceso de ensamble aparece
25. n archivo de texto usado para configurar valores de 8 bit directamente en un registro Est mulo de reloj Una fuente de pulsos de estimu lo peri dica regular y pro gramable Di logo de Est mulo Asincr nico Esta caracter stica de es timulo provee un bot n de di logo para simular volts y Oaplicadosa pines de entrada Mientras su pro grama se ejecuta con el s mula dor puede presionar los botones de este di logo para cambiar los niveles de 44 Todo sobre PICs los pines Por ejemplo hemos configurado una se al que cambiar de nivel en un pin I O sobre el puerto b del 16F84 Seleccione Debug gt Est mulo de Simula dor gt Est mulo Asincr nico Vea la figura 15 Se desplegar el di lo go de la figura 16 Ahora coloque el cursor sobre el bot n rotulado Stim1 P y clique el bot n dere cho del mouse para que aparezca un di logo en el cual debe seleccionar Toggle figura 17 Coloque otra vez el cursor sobre el bo t n rotulado ahora Stim1 T la P fue reemplazada poruna T que significa Toggle presione el bot n derecho del mouse y seleccione Asignar Pin fig ura 18 Aparecer otro di logo con una lista de los pines conectados al 16F84 figura 19 Coloque el cursor sobre el RBO y haga un doble clic Deber a aparecereldi logo de la figu ra 20 de Est mulo Asincr nico Advierta que el bot n ahora aparece como RBO T Elija Debug Ejec
26. opieda desdelNodo del MPASM para producir un archivo MAP llamado tutor84 map Luego de construir el proyecto busque el tutor 84 map para ver informacion de la cons trucci n MENUS DESACTIVADOS Si encuentra men s desactivados opacados verifique que no haya ingresado el modo s lo Editor Editor Only Si est seguro de que ha realizado correctamente la configuraci n intente salir del MPLAB y reinicie el progra ma Caracter sticas del MPLAB no Abarcados en este cap tulo Hay muchas caracter sticas del MPLAB que no se tratan en esta gu a En lugar de describircada caracter stica generando una gu a extensa y complicada primero hemos decidido darle el conocimiento ba sico para operar el MPLAB Le ofrecemosa continuaci n un punto de inicio para ayu daro a explorar otras herramientas del MPLAB Otras Ventanas de Datos y Di logos Hasta aqu los diferentes comandos u rdenes del MPLAB las hemos dado en C mo ESCRIBIR PROGRAMAS Y HACER LA VERIFICACI N EN LOS PICs castellano y en ingl s dado que el progra ma est en ingl s pero para que sepa lo que est haciendo decidimos colocar su traducci n De aqu en m s s lo coloca remos la traducci n dado que el lector sabr a qu orden nosreferimos Esta gu a ya le ha presentado la Venta na de Memora de Programa y las Venta nas de Observaci n A n no ha explorado las otras ventanas Debiera buscar en Ventana gt Conjunto y Ven
27. os archivos puede obtenerlos por medio de Intemet en la direcci n http www microchip com 10 Tools Estos archivos pueden ser transferidos a disquetes si desea instalarel MPLAB en otra computadora De acuerdo a la versi n que haya descargado los nombres de los archivos pueden variar levemente Por ejemplo la versi n 4 00 del MPLAB tendr a los siguientes archivos MP40000 EXE MP40000 W0 2 MP40000 W0 3 MP40000 W04 MP40000 W0 5 MP40000 WO 6 Si Ud lo prefiere puede venira nuestras oficinas con este libro y 6 disquetes v r genes y tendr la oportunidad de llevarse dicho programa sin cargo Copie el contenido de los 6 disquetes en el disco r gido de su PC en un lugar que pueda identifican Cuando ejecute el archivo EXE co menzara la instalaci n del MPLAB en su sis tema Seguidamente deber elegir los componentes del MPLAB que desea insta laren su sistema A menos que haya com prado un programador o emulador del dis positivo s lo debiera instalar las siguientes Todo sobre PICs 33 Como ESCRIBIR PROGRAMAS Y HACER LA VERIFICACI N EN LOS PICs herramientas del software Archivos MPLAB IDE Archivos MPASM MPLINK MPLIB tenes al compar ed merenge hana Archivos de Protecci n del Simula TEMARON dor MPLAB SIM he aes Archivos de Ayuda vea la figura 1 AAA A A que aparecer cuando ejecute el T LPL er vince programa F APLE PLB toe dirkan Ji DS E mua rie Sapir Luego aparecer el men de la fi ea R
28. para diferentes funciones Veamosentonces algunos de los pro ductos que podremos consulta r Caracter sticas del Editor El editorde archivo del programador con el MPLAB tiene un conjunto de carac teristicas para la escritura y edici n del c digo fuente Reloj de Detenci n El Relojde Detenci n le permite medir el tiempo de ejecuci n del c digo No siempre es preciso en la ejecuci n instrucci n por ins trucci n El reloj de detenci n calcula el tiempo en base a la frecuencia del reloj del microPIC Configure la frecuencia del reloj en el di logo Opciones onfigurar Proce sador gt Frecuencia de Reloj Proyectos de Archivo M ltiple Usando el linker puede tenerdoso m s archivos en un proyecto Vea la Guia del Proyecto v3 40 de MPLAB para m s infor macion MPASM El MPASM junto con la gu a del Usuario de MPUNK amp MPLIB describe la operaci n 48 Todo sobre PICs del lenguaje ensamblador el linker y el bi bliotecario que pueden serdescargados de la p gina web de Microchip Tambi n est disponible una gu a del linkeren las direcciones de Intemet que fuimos especi ficando PICMASTER ICEPIC MPLAB ICE Estas son Gu as de Usuario separadas para la operaci n de emuladores que pueden descargarse de la p gina web de Microchip PICSTART Plus y PRO MATE Estos son programadores de dispositivo de Microchip Vea la Gu a del Usuario MPLAB PRO MATE y la del PIC START Plus Ambos manuales pue
29. po emplea un lector de tarjeta mag n tica Ca non CCM02 2NO 21 93 20 u otro si milar Preci samente la i real EA dificulta d de gt H Gy conseguir a BCSST Le este compo i nente en el mercado lo calescausa de que a n no hayamos next g h 32 PINO h h f write h e next f PINS 0 11100110 BLINK 50 00000010 goto led check for f 0 to 31 0 to 7 2 PIN4 0 then learn 1 then check to 31 if e lt gt r then other goto cont to 7 other h 32 read h r if e lt gt r then error cont next f PINS 00000110 goto forever error PINS 0 BLINK 255 goto led led for f 0 to 10 high 1 pause BLINK low 1 pause BLINK next f forever goto forever Figura 30 Todo sobre PICs 51 C mo ESCRIBIR PROGRAMAS Y HACER LA VERIFICACI N EN LOS PICs publicado un articulo completo sobre el tema que tenemosa disposici n desde hace varios meses Sin embargo confia mos en que los proveedores locales impor ten a la brevedad estos elementos con el obejeto de que podamos publicarla men cionada nota En la figura 29 se da el circuito comple to del lector de tarjeta smnartcard o tarje ta inteligente con el valor de sus compo nentes 52 Todo sobre PICs En la figura 30 se da el diseno de la pla ca de circuito impreso para realizar el montaje y en la figura 31 se da el listado del programa compilado que deber ser cargado en el PIC Cuando se desea graba
30. r una tarjeta con un c digo almacenado en el PIC se debe colocar el jumper puente J P2 cuando se desea leer el c digo graba do en la tarjeta se debe hacer un puente en JP1 y quitarel de J P2
31. s y observe la actualizaci n de valores en la ventana de registro de archivo Hemos co locado la vanable del contadoren la ubi caci n de direcci n Ox0C Mientras el con tadortemporanio se incremente este in cremento se reflejar en la ventana de re gistro de archivo Los registros de archivo cambian de colorcuando su valor cam bia de modo que los cambios puedan advertirse f cilmente en la inspecci n De todos modos en muchos programas com plejos varios valores pueden cambiar as resultar m s dif cil focalizar las variables que le interesan Usando una ventana de Add Watch Spmbal 40 Todo sobre PICs observaci n especial este problema pue de solucionarse Ahora ya sabemos mejor qu es lo que estamos haciendo Programamos algo que incrementa en 1 cada vez que viene una se al y podemos verificarlo virtualmente an tes de programar el PIC 9 Creaci n de una Ventana de Observaci n Ejecute el item de men Ventana gt Nue va ventana de observaci n Window gt New Watch Window Aparecer el di logo Agregar S mbolo de observaci n Add Watch Symbol figura 11 Tipee c1 en la caja de nombre de sim bolo para que la lista se despliegue hasta el mbolo deseado Selecci nelo presione el bot n Agregar Add y luego el bot n Cerrar Close Aparecer en su escritorio MPLAB una ventana de observaci n que mostrar el valor actual del valor c1 del contador temporario
32. t mulo de Registro gt Activar figura 23 Luego configure loop para que se ubi que en el programa cuando se introduz can los valores y para prop sitos de de mostraci n introd zcalos en el registro de archivo en la direcci n Ox0d Luego de configurar loop y 0d en sus cajas comes pondientes presione Explorar para que aparezca el di logo de archivo en el cual podr seleccionartutor84 reg como el ar chivo de est mulo de registro figura 24 Abra la ventana Ventana Registros de archivo para ver el efecto de este estimu lo aparecer el listado de la figura 25 Resetee y luego ejecute instrucci n por instrucci n el procesador Cada vez que llegue a loop el valoren el registro de ar chivo en la direcci n 0x0D cambiar La lista de valores en tutor84 reg ser secuen cialmente introducida en el registro de ar chivo seleccionado 0x0D con un valor de 0x50 como se muestra en la figura 25 Los valores 0x10 Ox2E etc ser n introducidos en el registro seleccionado en el di logo Debug gt Est mulo de Smula dor gt Registro de Est mulo cada vez que se ejecute loop Luego de introducido el ltimo valor OxFD en tutor84 reg el primer valor ser usado nuevamente 0x10 La lista ser cf clica mientras se ejecute el MPLAB SIM Est mulo de Reloj El est mulo de relojgenera una onda re gular sobre un pin con un ciclo obligatorio especificado en t rminos de los ciclos de reloj del procesador
33. ta na gt Registros de Funci n Especial para verc mo el MPLAB puede mostrar otras reas de memora Hay otros di logos como el di logo Debug Configuraci n de puntos de intenupci n para mar car puntos de intemupci n La ayuda online y la Gu a del Usuario de MPLAB le explicar n el uso de esas ca racter sticas Rastreo La ventana de rastreo le brinda una imagen instant nea de la ejecuci n de su programa Los emuladores que tienen un amortiguador de rastreo pueden mos trarc mo se ejecuta su programa a altas velocidades Nota Algunas aplicaciones como los sistemas de control de motor no pueden serdetenidos Algunos enores s lo apare cen cuando la aplicaci n est en ejecu ci n no ocurren cuando se ejecuta el c digo instrucci n por instrucci n El amorti guador de rastreo le brinda otra herra mienta para probar este tipo de aplicacio nes En el simulador el amortiguador de ras treo es til para recoger un extenso regis tro de la ejecuci n del programa de mo do que pueda retomar al mismo y anali zaro cuidadosamente El simulador mos FE Program Memory Winda 13 Break Ponts Trace Palms Trigger Pamias A AAA AA ir Tel gt 14 Bcn 7 m0 16 Bes 4 beste Heii 110 Bea 14 Bera al Figura 14 trar una informaci n algo diferente de la registrada porel rastreo del emulador Para usar el amortiguador de rastreo del simulador primero debe seleccionar un c d
Download Pdf Manuals
Related Search
Related Contents
Kodak Z612 Digital Camera User Manual 米の収穫・乾燥・調製工程における放射性物質 交差汚染防止ガイドライン Appareil photo à objectif interchangeable ficha protector de talon Sony DSC-U10 User's Manual Coltelli Ceramica.indd LUPUSCAM® LE 115 und LE 116 Lindos user manual Copyright © All rights reserved.
Failed to retrieve file