SlideShare una empresa de Scribd logo
1 de 20
Descargar para leer sin conexión
INTRODUCCIÓN AL USO DEL MPLAB v 8.00
MPLAB es un ambiente de desarrollo integrado (IDE, por sus siglas en inglés)
creado por Microchip Technology para dar soporte a la realización de proyectos basados
en microcontroladores PIC. Incluye varios módulos que permiten llevar a cabo las distintas
etapas de un proyecto: Edición, Ensamblaje, Simulación y Programación. En el
Laboratorio, cada equipo de trabajo cubrirá todas las etapas con la versión 8,0 de MPLAB,
exceptuando la Programación, que se ejecutará mediante un software diferente y será
responsabilidad del profesor o de un asistente.
A continuación se describe la secuencia de acciones básicas para completar las
etapas mencionadas:
Desde el escritorio acceda al programa a través del ícono MPLAB IDE v.8.00,
Otra forma de ingresar será en Inicio>Programas>Microchip>MPLAB IDE v8.00.
La pantalla inicial será como la de la siguiente figura.
Con el fin de crear el código hexadecimal (.hex) que la interfaz de programación
necesita para programar o “quemar” el microcontrolador, los archivos fuente se deben
asociar a un proyecto. El proyecto controla todo el proceso.
Los pasos necesarios para trabajar con el entorno de MPLAB IDE son:
1. Seleccionar el dispositivo.
2. Crear el proyecto.
3. Seleccionar las herramientas de lenguaje (Toolsuite).
4. Crear el código fuente (.asm)
5. Agregar los archivos al proyecto.
6. Construir el proyecto.
SELECCIONANDO EL DISPOSITIVO.
Desde el menú principal se seleccione: Configure>Select Device.
Aparecerá la pantalla de selección:
En esta pantalla, en la ventana Device se selecciona el dispositivo a utilizar. La
ventana de la derecha denominada Device Family permite agruparlos por familia para
realizar una selección más rápida.
Se activará la información referida a los programadores que soportan al dispositivo
seleccionado, así como los lenguajes y depuradores.
Las opciones en color verde indican que si lo soporta y ya han sido probados, las
amarillas indican que aún no ha sido probado para este dispositivo y las rojas indican
que no lo soportan.
CREANDO EL PROYECTO.
El archivo .asm que se va a crear debe ser relacionado a un proyecto para su
ensamblaje, detección de errores de sintaxis, obtención del .hex y simulación.
Para crear el proyecto desde el menú principal seleccione Proyect> New proyect (o
seleccione Proyect>Proyect Wizard, para activar el asistente de proyectos, el cual lo guiará
paso a paso).
Asigne un nombre al proyecto (sin extensión) y en Project Directory escriba la
dirección donde desea crear el proyecto. Se recomienda que sea la misma carpeta donde
creará el archivo .asm.
Seleccione View>Proyect y aparecerá la ventana de información del proyecto.
SELECCIONANDO LAS HERRAMIENTAS DE LENGUAJE (TOOLSUITE).
Para Seleccionar el conjunto de herramientas seleccione Project>Select Lenguaje
Toolsuite.
En el menú Active Toolsuite Seleccione Microchip MPASM Toolsuite.
Observe las herramientas de lenguaje asociadas con la Toolsuite seleccionada. Estas
deben ser MPASMWIN, MPLINK y MPLIB.
Si alguna de las herramientas muestra una “X” de color rojo significa que MPLAB IDE
no sabe donde encontrarla.
Revise que la dirección asignada en Location sea la correcta o busque la dirección
correcta con el botón Browse. La dirección correcta para cada herramienta esta ubicada en
C:Archivos de programaMicrochipMPASM Suite
CREANDO UN ARCHIVO FUENTE.
Escoja ahora la opción New en el Menú File y se desplegará la ventana donde podrá
editar el archivo fuente.
Aparecerá la ventana de edición de texto. Escriba en ella el código fuente siguiendo
las normas de escritura.
Normas de escritura del programa fuente:
En cada línea puede haber hasta 4 tipos de información: etiquetas, mnemónicos,
operandos y comentarios.
Las etiquetas:
Deben comenzar por una letra o por “ _ ”, y pueden tener caracteres
alfanuméricos, “ _ ”, y “ ? ”. Se escriben en la columna 1 (borde
izquierdo de la página).
Mnemónicos:
Los mnemónicos de las instrucciones de ensamblador, las directivas y
las llamadas a macros deben comenzar, al menos, en la columna 2 (1
espacio después del borde izquierdo), aunque normalmente se usa la
tecla “TAB”.
Si en la misma línea hay una etiqueta, deben estar separados por uno o
más espacios (o “TAB”)
Operandos:
Los operandos van después de los mnemónicos y deben separarse de
éstos uno o más espacios (o “TAB”).
Los operandos que vienen en listas deben separarse por “ , “
Comentarios:
Los comentarios comienzan con “ ; ” y se escriben en cualquier
columna.
Todo lo que vaya después del “ ; “ se considera comentario.
EJEMPLO:
El siguiente ejemplo le permitirá seguir las indicaciones que se describen en esta
guía para ensamblar y simular sus proyectos. Cópielo con detalle. Cualquier error en la
trascripción impedirá la obtención del archivo hex.
;**********************************************************************
;************ Sumador de dos números Hexadecimales ***************
;**********************************************************************
list p=16F877
; Archivo tipo Include, que contiene los nombres simbólicos
; de los registros propios del PIC utilizado.
#include <p16f877.inc>
; Definiciones particulares
NUM1 EQU 0x20 ;Variable auxiliar para separar uno
;de los números de entrada
ORG 0x00
GOTO INICIO
ORG 0X05
INICIO
; Configuraciones de los registros
BSF STATUS,RP0 ;Se escoge el banco 1
;para configurar
MOVLW b'11000000' ;Programación del Puerto A
MOVWF TRISA ;Todos salidas
MOVLW 0xFF ;Programación del Puerto B
MOVWF TRISB ;Todos entradas
MOVLW 0X06 ;Deshabilita el Conversor
MOVWF ADCON1 ;Analógico Digital del PuertoA
BCF STATUS,RP0 ;Se escoge el banco 0
;para operar
BCF INTCON,GIE ;Deshabilitación de las Interrupciones
; Programa Principal
Ciclo MOVF PORTB,0 ;Lee Puerto B para llevar los dos números a W
ANDLW 0xF0 ;Máscara para aislar un número
MOVWF NUM1
SWAPF NUM1,1 ;El número queda en la posición baja del byte
MOVF PORTB,0 ;Los dos números a W
ANDLW 0x0F ;Máscara para aislar el otro número
ADDWF NUM1,0 ;W:=W+NUM1
MOVWF PORTA ;Cinco bits de salida en Porta
GOTO Ciclo
END
Note que al transcribir el código fuente las letras son todas de color negro. Esto
indica que aún no tiene formato de código assembler (.asm). Guarde el archivo creado
escogiendo la opción Save As en el menú File.
Asigne el nombre suma.asm. Para eso hay que tener cuidado con el formato y en la
ventana "Tipo" debe estar seleccionada la opción: Assembly Source Files.
Seleccione el directorio donde guardarlo, teniendo en cuenta que la dirección del archivo
almacenado no debe exceder los 62 caracteres y el archivo debe tener la extensión .asm.
Una vez guardado con la extensión .asm, el programa le asigna un color distinto a
cada elemento. Por defecto, las instrucciones son de color azul y resaltadas en negritas, los
comentarios son verdes, las etiquetas son rojas; y así, a cada elemento se le detecta
rápidamente por su formato y color. Estos pueden ser ajustados por el usuario.
AGREGANDO EL(LOS) ARCHIVO(S) AL PROYECTO.
Hasta los momentos no se ha relacionado ningún archivo. Al hacer clic con el botón
derecho del ratón sobre la opción Source Files y seleccionar Add Files aparece la ventana
de selección. Haga clic sobre el archivo o archivos .asm que desea añadir (en este caso sólo
es el archivo Suma.asm).
Aparecerá en la ventana de información de proyecto el nombre o las nombres de los
archivos asociados al él. En este caso será sólo el archivo Suma.asm.
Los archivos también se pueden borrar seleccionándolos y utilizando el botón derecho
del ratón.
Para editar el archivo suma.asm selecciónelo y haga doble clic con el ratón ó use el
botón derecho y la opción Editar.
CONSTRUYENDO (ENSAMBLANDO) EL PROYECTO.
Una vez que el proyecto está creado y los archivos relacionados, se debe ensamblar.
Para eso el entorno MPLAB utiliza el programa MPASMWIN. El procedimiento a seguir es el
siguiente:
Project > Build All.
También puede utilizarse el icono correspondiente de la barra de herramientas.
En la ventana Output se observarán los detalles del ensamblaje. Si no hay errores se
observará una ventana como la siguiente:
Fíjese en la última línea. BUILD SUCCEEDED significa que la construcción fue
exitosa. No ocurrieron errores de sintaxis. Significa que se generó el archivo Suma.hex.
Si ocurrieron errores de sintaxis aparecerá en la ventana Output la información:
En la última línea se puede leer: BUILD FAILED, es decir, el ensamblador
MPASMWIN no ha sido capaz de generar el archivo .hex.
Además, en la pantalla "output" también se encuentran disponibles otras informaciones,
como "Messages", "Warnings" y "Errors". De estos tres tipos, el más importante porque
impide la generación del fichero hexadecimal son los "Errors", mientras que los otros dos tipos
no impiden el ensamblado del programa fuente.
Los Mensajes (Message): No impiden la obtención de código máquina y añaden
información adicional. Por ejemplo:
Message [302]: Register in operand not in
bank 0. Ensure that bank bits are correct". El
PIC trabaja por defecto en el banco 0 de la
memoria de datos. Este mensaje advierte que se
ha realizado una operación fuera de ese banco y
recomienda asegurar verificar si eso es lo que se
quiere hacer.
Las Advertencias (Warnings): No impiden la obtención del .hex, pero advierten de algo
que al ensamblador le parece extraño. Por ejemplo:
Warning[205]: Found directive in column 1. El
mnemónico de una directiva comienza en la
columna 1, que es el lugar reservado para las
etiquetas.
Los Errores (Errors): Si impiden la generación del .hex. En la línea de error se
puede observar tanto el tipo de error como el número de línea donde éste se encuentra. Al
hacer doble clic con el ratón sobre la línea de error, en el programa se señalará la línea para
su posterior corrección. Por ejemplo:
Error[122]: Ilegal opcode. Hay un error en la
sintaxis de la instrucción..
CADA VEZ QUE SE CORRIJA O MODIFIQUE EL PROGRAMA ÉSTE
SE DEBE VOLVER A ENSAMBLAR (CONSTRUIR).
Sensibilidad ante mayúsculas y minúsculas.
El ensamblador MPASM es sensible ante cambios de mayúsculas a minúsculas o
viceversa, en los nombres de las etiquetas.
Si una etiqueta se declaró como “INICIO”, cada vez que se haga referencia a ella se
debe escribir igual; si se escribe por ejemplo “Inicio”, o “IniCIo”, se producirá un error ya
que hay variación respecto a la declarada.
El MPASM indicará que no conoce el “símbolo” ya que no fue definido
previamente (Error 113).
Para deshabilitar esta sensibilidad entre mayúsculas y minúsculas active en
Project>Build Options>Project
En la ventana de Opciones de Proyecto seleccione la pestaña MPASM Assembler y
marque la opción Disable case Sensitivity
SIMULANDO EL PROYECTO.
La correcta simulación de un proyecto depende de las características particulares del
programa utilizado. A continuación se describen las herramientas y procedimientos
utilizados en la mayoría de los casos.
Desde el menú principal seleccione: Debugger>Select Tool>MPLAB SIM
A continuación se activará la barra de simulación. La siguiente tabla muestra la
forma y función de cada icono o botón de ésta barra.
BOTÓN NOMBRE FUNCIÓN
ATAJO
Run
Ejecuta el programa hasta que consiga un punto de quiebre
(Breakpoint) o hasta que se detenga el programa (Halt). Los
cambios en los registros se observaran sólo cuando se
detenga la ejecución del programa.
F9
Halt
Detiene la ejecución del programa. F5
Animate
Ejecuta el programa de forma animada. Se pueden observar
los cambios en los registros a medida que estos ocurren.
Step Into
Ejecuta paso a paso el programa entrando a las Subrutinas.
F7
Step
Over
Ejecuta paso a paso el programa principal. En una
instrucción CALL, ejecuta el llamado a subrutina, retorna y
se detiene en la dirección siguiente a la llamada. Luego de
este retorno, se puede continuar la ejecución paso a paso.
F8
Step Out
Se sale de una subrutina sin finalizar su ejecución, y regresa
a la línea siguiente de la instrucción CALL de donde partió.
Reset
Lleva al PC (Program Counter) a la dirección 00h (Vector de
Reset) y restablece las acciones y opciones a sus valores
iniciales, dependiendo de la herramienta y dispositivo
seleccionado. El tipo de reset puede ser por Watchdog,
Brown out, procesador, MCLR.
F6
Adicionalmente, en el menú desplegable Debugger aparecerán las opciones de
simulación que antes no aparecían.
Los resultados de cualquier acción simulada se verán reflejados en ventanas
Es conveniente aprovechar el espacio que brinda el monitor de la computadora del
ejor m
específicas; por eso, antes de iniciar es necesario cerrar la ventana con los mensajes de la
compilación y abrir las ventanas que se vayan a necesitar (Program Memory, File Register,
Special Function Register, Watch, entre otras). La forma de activarlas es buscando cada una
en el menú View.
m odo posible, de modo que las ventanas abiertas no se solapen. Utilice la opción Tile
Vertically ó Tile Horizontally del menú Window para organizar el contenido de la pantalla
antes de iniciar la simulación.
COMENZANDO LA SIMULACIÓN.
Para comenzar la simulación, la acción inicial a efectuar es un Reset, ya que esto
simula
A continuación presione varias veces el botón Step, Step Into o Step Over y observe
lo que sucede cuando se energiza el PIC. El Program Counter es cargado con la
dirección del Reset Vector (00h), lo que justifica que el origen de la mayoría de los
programas sea justamente esta posición en la memoria de programa.
que ocurre a los registros. Fíjese que al activar alguno de éstos por segunda vez, el
programa ejecuta la instrucción (BSF STATUS, RP0) y la flecha verde apunta a la próxima
instrucción. En la ventana del Watch, así como en las otras ventanas, se observa en rojo los
registros que se modificaron al ejecutarse la instrucción. El registro status cambió de 0x18
a 0x38 (Esto porque cambió de 0 a 1 el bit 5, para efectuar el salto al banco 1) y el registro
PCL cambió de 5 a 6 esta es la dirección de la siguiente instrucción que se ejecutará.
CAMBIANDO VALORES A LOS REGISTROS.
Se ilustrará la manera de modificar el valor de los registros, lo cual es útil cuando el
flujo del programa depende de la ocurrencia de eventos específicos que tardarían mucho si
se sigue una simulación paso a paso, como por ejemplo la ejecución de ciclos de retardo de
tiempo.
Para cambiar el valor de un registro simplemente haga doble clic en él y asigne el
nuevo valor. Este cambio lo aceptará sólo si el registro no está asignado como entrada.
Intente cambiar el valor del registro PORTA y PORTB. Observe lo que ocurre.
Ahora necesitaremos simular entradas externas para asignar un valor de entrada en
el registro PORTB.
SIMULANDO ENTRADAS EXTERNAS
Dentro del menú Debugger seleccione la opción Stimulus y New Workbook.
Aparecerá la ventana de configuración del Stimulus, que permite determinar el tipo
de entrada a simular.
Seleccione la opción Async, para simular entradas asíncronas. En la columna
Pin/SFR seleccione el pin RB7.
A continuación seleccione Toggle en la columna Action para definir el tipo de
acción que ejecutará el pin RB7 cada vez que se presione el botón Fire correspondiente.
Repita el procedimiento en las filas siguientes hasta que le haya adjudicado, como Toggle,
el pin RB3.
Al finalizar, haga clic con el ratón sobre el botón Apply posteriormente almacene en
un archivo seleccionando Save.
Si presiona con el botón derecho del ratón sobre el botón Fire (>) correspondiente a
uno de los estímulos definidos, no observará el resultado hasta que haya avanzado un paso
(step) en la ejecución del programa. Sólo se procesará la acción de una entrada simulada
por vez. Si presiona dos veces consecutivas sobre el mismo estímulo o se presiona en uno
después del otro, se tomará el valor del último que se presionó.
ACTIVIDAD:
Resetee el sistema.
Corra paso a paso el programa nuevamente y a medida que lo va corriendo, haga clic
sobre los botones FIRE del Stimulus para asignar un valor al registro PORTB. Recuerde
que solo procesará una acción de la entrada simulada a la vez.
Avance a la instrucción previa la etiqueta Ciclo.
Observe y analice lo que ocurre en las ventanas adjuntas, cada vez que presiona el
botón. Step.
PREPARE UNA EXPLICACIÓN DE ESTO. CUANDO CREA QUE LA TIENE,
COMUNÍQUELA AL PROFESOR.
DETERMINANDO TIEMPOS DE EJECUCIÓN.
A continuación verá como contar ciclos de reloj y determinar el tiempo de ejecución
de un programa o de secciones dentro del mismo.
En el menú Debugger seleccione la opción Stopwatch. Aparecerá el recuadro que
observa en la siguiente figura.
Resetee el programa. En el Stopwatch presione el botón Zero y avance 3
instrucciones en el curso del programa. Observe lo que ocurre.
Prosiga esta actividad hasta que alcance la instrucción GOTO Ciclo. Avance un
paso más. Explique lo que observa a su profesor.

Más contenido relacionado

La actualidad más candente

Manual energy plus
Manual energy plus Manual energy plus
Manual energy plus zipcafe
 
Curso De Microsoft Visual Fox Pro For Windows
Curso De Microsoft Visual Fox Pro  For WindowsCurso De Microsoft Visual Fox Pro  For Windows
Curso De Microsoft Visual Fox Pro For Windowsrtinoco89
 
diapositivas de matlab
diapositivas de matlabdiapositivas de matlab
diapositivas de matlabsarayenque
 
Tema2 herramientas open office
Tema2  herramientas open officeTema2  herramientas open office
Tema2 herramientas open officeadolfogcasanova
 
Estructuras básicas
Estructuras básicas Estructuras básicas
Estructuras básicas evelinml12
 
Guia de autoaprendizaje vfp 5-0
Guia de autoaprendizaje vfp 5-0Guia de autoaprendizaje vfp 5-0
Guia de autoaprendizaje vfp 5-0myct
 

La actualidad más candente (15)

Manual energy plus
Manual energy plus Manual energy plus
Manual energy plus
 
VISUAL C++
VISUAL C++VISUAL C++
VISUAL C++
 
Curso De Microsoft Visual Fox Pro For Windows
Curso De Microsoft Visual Fox Pro  For WindowsCurso De Microsoft Visual Fox Pro  For Windows
Curso De Microsoft Visual Fox Pro For Windows
 
diapositivas de matlab
diapositivas de matlabdiapositivas de matlab
diapositivas de matlab
 
Visual Basic
Visual BasicVisual Basic
Visual Basic
 
Tutorial code block
Tutorial code blockTutorial code block
Tutorial code block
 
Tutorial de visual_c_
Tutorial de visual_c_Tutorial de visual_c_
Tutorial de visual_c_
 
Tema2 herramientas open office
Tema2  herramientas open officeTema2  herramientas open office
Tema2 herramientas open office
 
andrea
andreaandrea
andrea
 
Estructuras básicas
Estructuras básicas Estructuras básicas
Estructuras básicas
 
Visual
VisualVisual
Visual
 
Xxxsoft
XxxsoftXxxsoft
Xxxsoft
 
Formularios En Visual Fox Pro
Formularios En Visual Fox ProFormularios En Visual Fox Pro
Formularios En Visual Fox Pro
 
Guia de autoaprendizaje vfp 5-0
Guia de autoaprendizaje vfp 5-0Guia de autoaprendizaje vfp 5-0
Guia de autoaprendizaje vfp 5-0
 
Manual punisv10
Manual punisv10Manual punisv10
Manual punisv10
 

Similar a Mplab v8.00

Similar a Mplab v8.00 (20)

Tutorial visual c_(2)
Tutorial visual c_(2)Tutorial visual c_(2)
Tutorial visual c_(2)
 
Proteus
ProteusProteus
Proteus
 
P01.Desarrollo de aplicaciones con mplab
P01.Desarrollo de aplicaciones con mplabP01.Desarrollo de aplicaciones con mplab
P01.Desarrollo de aplicaciones con mplab
 
Uso Mplab
Uso MplabUso Mplab
Uso Mplab
 
1+ +introduccion+al+code warrior+para+hcs08
1+ +introduccion+al+code warrior+para+hcs081+ +introduccion+al+code warrior+para+hcs08
1+ +introduccion+al+code warrior+para+hcs08
 
Manual para visual_c_luis_ocampo
Manual para visual_c_luis_ocampoManual para visual_c_luis_ocampo
Manual para visual_c_luis_ocampo
 
Tutorial MPLAB
Tutorial MPLABTutorial MPLAB
Tutorial MPLAB
 
Tutorial mplab 6x
Tutorial mplab 6xTutorial mplab 6x
Tutorial mplab 6x
 
Tutorial mplab 6x[1]
Tutorial mplab 6x[1]Tutorial mplab 6x[1]
Tutorial mplab 6x[1]
 
Prac fi 06
Prac fi 06Prac fi 06
Prac fi 06
 
Diseno implementacion modulo_hernandez_2011_anexo_a
Diseno implementacion modulo_hernandez_2011_anexo_aDiseno implementacion modulo_hernandez_2011_anexo_a
Diseno implementacion modulo_hernandez_2011_anexo_a
 
Prac fiq 01
Prac fiq 01Prac fiq 01
Prac fiq 01
 
Practicas de Visual Basic 6
Practicas de Visual Basic 6Practicas de Visual Basic 6
Practicas de Visual Basic 6
 
Arduino PLC: Manual Guía de Soapbox snap
Arduino PLC: Manual Guía de Soapbox snapArduino PLC: Manual Guía de Soapbox snap
Arduino PLC: Manual Guía de Soapbox snap
 
VISUAL C++
VISUAL C++VISUAL C++
VISUAL C++
 
VISUAL C++
VISUAL C++VISUAL C++
VISUAL C++
 
Instructivo para utilizar_c_
Instructivo para utilizar_c_Instructivo para utilizar_c_
Instructivo para utilizar_c_
 
Instructivo para utilizar_c++
Instructivo para utilizar_c++Instructivo para utilizar_c++
Instructivo para utilizar_c++
 
Net beansdiapo
Net beansdiapoNet beansdiapo
Net beansdiapo
 
Net beansdiapo
Net beansdiapoNet beansdiapo
Net beansdiapo
 

Último

PPT SESION 5 ARTE Y CREATIVIDAD (1).pptx
PPT SESION 5 ARTE Y CREATIVIDAD (1).pptxPPT SESION 5 ARTE Y CREATIVIDAD (1).pptx
PPT SESION 5 ARTE Y CREATIVIDAD (1).pptxNeymaRojasperez1
 
TALLER SOBRE METODOLOGÍAS DE DESARROLLO DE SOFTWARE..pdf
TALLER SOBRE METODOLOGÍAS DE DESARROLLO DE SOFTWARE..pdfTALLER SOBRE METODOLOGÍAS DE DESARROLLO DE SOFTWARE..pdf
TALLER SOBRE METODOLOGÍAS DE DESARROLLO DE SOFTWARE..pdfMiguelGomez900779
 
PPT obligaciones ambientales oefa minan.pptx
PPT obligaciones ambientales oefa minan.pptxPPT obligaciones ambientales oefa minan.pptx
PPT obligaciones ambientales oefa minan.pptxDanmherJoelAlmironPu
 
Formulacion del modelo de Programacion Lineal - copia.pptx
Formulacion del modelo de Programacion Lineal - copia.pptxFormulacion del modelo de Programacion Lineal - copia.pptx
Formulacion del modelo de Programacion Lineal - copia.pptxAmerAlBarkawi
 
TEMA #1 EXPLOTACIONES PORCINAS EN VENEZUELA 1er tema.pptx
TEMA #1 EXPLOTACIONES PORCINAS EN VENEZUELA 1er tema.pptxTEMA #1 EXPLOTACIONES PORCINAS EN VENEZUELA 1er tema.pptx
TEMA #1 EXPLOTACIONES PORCINAS EN VENEZUELA 1er tema.pptxGilbertoGutierrezRiv
 
Taller construcción de Prototipos Uno uML
Taller construcción de Prototipos Uno uMLTaller construcción de Prototipos Uno uML
Taller construcción de Prototipos Uno uMLAderMogollonLuna
 
LAS TETAS DE MARIA GUEVARA REVISTA DIGITAL INF.pdf
LAS TETAS DE MARIA GUEVARA REVISTA DIGITAL INF.pdfLAS TETAS DE MARIA GUEVARA REVISTA DIGITAL INF.pdf
LAS TETAS DE MARIA GUEVARA REVISTA DIGITAL INF.pdfwilangelfmendoza
 

Último (7)

PPT SESION 5 ARTE Y CREATIVIDAD (1).pptx
PPT SESION 5 ARTE Y CREATIVIDAD (1).pptxPPT SESION 5 ARTE Y CREATIVIDAD (1).pptx
PPT SESION 5 ARTE Y CREATIVIDAD (1).pptx
 
TALLER SOBRE METODOLOGÍAS DE DESARROLLO DE SOFTWARE..pdf
TALLER SOBRE METODOLOGÍAS DE DESARROLLO DE SOFTWARE..pdfTALLER SOBRE METODOLOGÍAS DE DESARROLLO DE SOFTWARE..pdf
TALLER SOBRE METODOLOGÍAS DE DESARROLLO DE SOFTWARE..pdf
 
PPT obligaciones ambientales oefa minan.pptx
PPT obligaciones ambientales oefa minan.pptxPPT obligaciones ambientales oefa minan.pptx
PPT obligaciones ambientales oefa minan.pptx
 
Formulacion del modelo de Programacion Lineal - copia.pptx
Formulacion del modelo de Programacion Lineal - copia.pptxFormulacion del modelo de Programacion Lineal - copia.pptx
Formulacion del modelo de Programacion Lineal - copia.pptx
 
TEMA #1 EXPLOTACIONES PORCINAS EN VENEZUELA 1er tema.pptx
TEMA #1 EXPLOTACIONES PORCINAS EN VENEZUELA 1er tema.pptxTEMA #1 EXPLOTACIONES PORCINAS EN VENEZUELA 1er tema.pptx
TEMA #1 EXPLOTACIONES PORCINAS EN VENEZUELA 1er tema.pptx
 
Taller construcción de Prototipos Uno uML
Taller construcción de Prototipos Uno uMLTaller construcción de Prototipos Uno uML
Taller construcción de Prototipos Uno uML
 
LAS TETAS DE MARIA GUEVARA REVISTA DIGITAL INF.pdf
LAS TETAS DE MARIA GUEVARA REVISTA DIGITAL INF.pdfLAS TETAS DE MARIA GUEVARA REVISTA DIGITAL INF.pdf
LAS TETAS DE MARIA GUEVARA REVISTA DIGITAL INF.pdf
 

Mplab v8.00

  • 1. INTRODUCCIÓN AL USO DEL MPLAB v 8.00 MPLAB es un ambiente de desarrollo integrado (IDE, por sus siglas en inglés) creado por Microchip Technology para dar soporte a la realización de proyectos basados en microcontroladores PIC. Incluye varios módulos que permiten llevar a cabo las distintas etapas de un proyecto: Edición, Ensamblaje, Simulación y Programación. En el Laboratorio, cada equipo de trabajo cubrirá todas las etapas con la versión 8,0 de MPLAB, exceptuando la Programación, que se ejecutará mediante un software diferente y será responsabilidad del profesor o de un asistente. A continuación se describe la secuencia de acciones básicas para completar las etapas mencionadas: Desde el escritorio acceda al programa a través del ícono MPLAB IDE v.8.00, Otra forma de ingresar será en Inicio>Programas>Microchip>MPLAB IDE v8.00. La pantalla inicial será como la de la siguiente figura. Con el fin de crear el código hexadecimal (.hex) que la interfaz de programación necesita para programar o “quemar” el microcontrolador, los archivos fuente se deben asociar a un proyecto. El proyecto controla todo el proceso.
  • 2. Los pasos necesarios para trabajar con el entorno de MPLAB IDE son: 1. Seleccionar el dispositivo. 2. Crear el proyecto. 3. Seleccionar las herramientas de lenguaje (Toolsuite). 4. Crear el código fuente (.asm) 5. Agregar los archivos al proyecto. 6. Construir el proyecto. SELECCIONANDO EL DISPOSITIVO. Desde el menú principal se seleccione: Configure>Select Device. Aparecerá la pantalla de selección:
  • 3. En esta pantalla, en la ventana Device se selecciona el dispositivo a utilizar. La ventana de la derecha denominada Device Family permite agruparlos por familia para realizar una selección más rápida. Se activará la información referida a los programadores que soportan al dispositivo seleccionado, así como los lenguajes y depuradores. Las opciones en color verde indican que si lo soporta y ya han sido probados, las amarillas indican que aún no ha sido probado para este dispositivo y las rojas indican que no lo soportan. CREANDO EL PROYECTO. El archivo .asm que se va a crear debe ser relacionado a un proyecto para su ensamblaje, detección de errores de sintaxis, obtención del .hex y simulación. Para crear el proyecto desde el menú principal seleccione Proyect> New proyect (o seleccione Proyect>Proyect Wizard, para activar el asistente de proyectos, el cual lo guiará paso a paso). Asigne un nombre al proyecto (sin extensión) y en Project Directory escriba la dirección donde desea crear el proyecto. Se recomienda que sea la misma carpeta donde creará el archivo .asm.
  • 4. Seleccione View>Proyect y aparecerá la ventana de información del proyecto. SELECCIONANDO LAS HERRAMIENTAS DE LENGUAJE (TOOLSUITE). Para Seleccionar el conjunto de herramientas seleccione Project>Select Lenguaje Toolsuite.
  • 5. En el menú Active Toolsuite Seleccione Microchip MPASM Toolsuite. Observe las herramientas de lenguaje asociadas con la Toolsuite seleccionada. Estas deben ser MPASMWIN, MPLINK y MPLIB. Si alguna de las herramientas muestra una “X” de color rojo significa que MPLAB IDE no sabe donde encontrarla. Revise que la dirección asignada en Location sea la correcta o busque la dirección correcta con el botón Browse. La dirección correcta para cada herramienta esta ubicada en C:Archivos de programaMicrochipMPASM Suite
  • 6. CREANDO UN ARCHIVO FUENTE. Escoja ahora la opción New en el Menú File y se desplegará la ventana donde podrá editar el archivo fuente. Aparecerá la ventana de edición de texto. Escriba en ella el código fuente siguiendo las normas de escritura. Normas de escritura del programa fuente: En cada línea puede haber hasta 4 tipos de información: etiquetas, mnemónicos, operandos y comentarios. Las etiquetas: Deben comenzar por una letra o por “ _ ”, y pueden tener caracteres alfanuméricos, “ _ ”, y “ ? ”. Se escriben en la columna 1 (borde izquierdo de la página). Mnemónicos: Los mnemónicos de las instrucciones de ensamblador, las directivas y las llamadas a macros deben comenzar, al menos, en la columna 2 (1 espacio después del borde izquierdo), aunque normalmente se usa la tecla “TAB”. Si en la misma línea hay una etiqueta, deben estar separados por uno o más espacios (o “TAB”)
  • 7. Operandos: Los operandos van después de los mnemónicos y deben separarse de éstos uno o más espacios (o “TAB”). Los operandos que vienen en listas deben separarse por “ , “ Comentarios: Los comentarios comienzan con “ ; ” y se escriben en cualquier columna. Todo lo que vaya después del “ ; “ se considera comentario. EJEMPLO: El siguiente ejemplo le permitirá seguir las indicaciones que se describen en esta guía para ensamblar y simular sus proyectos. Cópielo con detalle. Cualquier error en la trascripción impedirá la obtención del archivo hex. ;********************************************************************** ;************ Sumador de dos números Hexadecimales *************** ;********************************************************************** list p=16F877 ; Archivo tipo Include, que contiene los nombres simbólicos ; de los registros propios del PIC utilizado. #include <p16f877.inc> ; Definiciones particulares NUM1 EQU 0x20 ;Variable auxiliar para separar uno ;de los números de entrada ORG 0x00 GOTO INICIO ORG 0X05 INICIO ; Configuraciones de los registros BSF STATUS,RP0 ;Se escoge el banco 1 ;para configurar MOVLW b'11000000' ;Programación del Puerto A MOVWF TRISA ;Todos salidas MOVLW 0xFF ;Programación del Puerto B MOVWF TRISB ;Todos entradas MOVLW 0X06 ;Deshabilita el Conversor
  • 8. MOVWF ADCON1 ;Analógico Digital del PuertoA BCF STATUS,RP0 ;Se escoge el banco 0 ;para operar BCF INTCON,GIE ;Deshabilitación de las Interrupciones ; Programa Principal Ciclo MOVF PORTB,0 ;Lee Puerto B para llevar los dos números a W ANDLW 0xF0 ;Máscara para aislar un número MOVWF NUM1 SWAPF NUM1,1 ;El número queda en la posición baja del byte MOVF PORTB,0 ;Los dos números a W ANDLW 0x0F ;Máscara para aislar el otro número ADDWF NUM1,0 ;W:=W+NUM1 MOVWF PORTA ;Cinco bits de salida en Porta GOTO Ciclo END Note que al transcribir el código fuente las letras son todas de color negro. Esto indica que aún no tiene formato de código assembler (.asm). Guarde el archivo creado escogiendo la opción Save As en el menú File. Asigne el nombre suma.asm. Para eso hay que tener cuidado con el formato y en la ventana "Tipo" debe estar seleccionada la opción: Assembly Source Files. Seleccione el directorio donde guardarlo, teniendo en cuenta que la dirección del archivo almacenado no debe exceder los 62 caracteres y el archivo debe tener la extensión .asm.
  • 9. Una vez guardado con la extensión .asm, el programa le asigna un color distinto a cada elemento. Por defecto, las instrucciones son de color azul y resaltadas en negritas, los comentarios son verdes, las etiquetas son rojas; y así, a cada elemento se le detecta rápidamente por su formato y color. Estos pueden ser ajustados por el usuario. AGREGANDO EL(LOS) ARCHIVO(S) AL PROYECTO. Hasta los momentos no se ha relacionado ningún archivo. Al hacer clic con el botón derecho del ratón sobre la opción Source Files y seleccionar Add Files aparece la ventana de selección. Haga clic sobre el archivo o archivos .asm que desea añadir (en este caso sólo es el archivo Suma.asm). Aparecerá en la ventana de información de proyecto el nombre o las nombres de los archivos asociados al él. En este caso será sólo el archivo Suma.asm.
  • 10. Los archivos también se pueden borrar seleccionándolos y utilizando el botón derecho del ratón. Para editar el archivo suma.asm selecciónelo y haga doble clic con el ratón ó use el botón derecho y la opción Editar. CONSTRUYENDO (ENSAMBLANDO) EL PROYECTO. Una vez que el proyecto está creado y los archivos relacionados, se debe ensamblar. Para eso el entorno MPLAB utiliza el programa MPASMWIN. El procedimiento a seguir es el siguiente: Project > Build All. También puede utilizarse el icono correspondiente de la barra de herramientas. En la ventana Output se observarán los detalles del ensamblaje. Si no hay errores se observará una ventana como la siguiente:
  • 11. Fíjese en la última línea. BUILD SUCCEEDED significa que la construcción fue exitosa. No ocurrieron errores de sintaxis. Significa que se generó el archivo Suma.hex. Si ocurrieron errores de sintaxis aparecerá en la ventana Output la información: En la última línea se puede leer: BUILD FAILED, es decir, el ensamblador MPASMWIN no ha sido capaz de generar el archivo .hex. Además, en la pantalla "output" también se encuentran disponibles otras informaciones, como "Messages", "Warnings" y "Errors". De estos tres tipos, el más importante porque impide la generación del fichero hexadecimal son los "Errors", mientras que los otros dos tipos no impiden el ensamblado del programa fuente. Los Mensajes (Message): No impiden la obtención de código máquina y añaden información adicional. Por ejemplo: Message [302]: Register in operand not in bank 0. Ensure that bank bits are correct". El PIC trabaja por defecto en el banco 0 de la memoria de datos. Este mensaje advierte que se ha realizado una operación fuera de ese banco y recomienda asegurar verificar si eso es lo que se quiere hacer. Las Advertencias (Warnings): No impiden la obtención del .hex, pero advierten de algo que al ensamblador le parece extraño. Por ejemplo: Warning[205]: Found directive in column 1. El mnemónico de una directiva comienza en la
  • 12. columna 1, que es el lugar reservado para las etiquetas. Los Errores (Errors): Si impiden la generación del .hex. En la línea de error se puede observar tanto el tipo de error como el número de línea donde éste se encuentra. Al hacer doble clic con el ratón sobre la línea de error, en el programa se señalará la línea para su posterior corrección. Por ejemplo: Error[122]: Ilegal opcode. Hay un error en la sintaxis de la instrucción.. CADA VEZ QUE SE CORRIJA O MODIFIQUE EL PROGRAMA ÉSTE SE DEBE VOLVER A ENSAMBLAR (CONSTRUIR). Sensibilidad ante mayúsculas y minúsculas. El ensamblador MPASM es sensible ante cambios de mayúsculas a minúsculas o viceversa, en los nombres de las etiquetas. Si una etiqueta se declaró como “INICIO”, cada vez que se haga referencia a ella se debe escribir igual; si se escribe por ejemplo “Inicio”, o “IniCIo”, se producirá un error ya que hay variación respecto a la declarada. El MPASM indicará que no conoce el “símbolo” ya que no fue definido previamente (Error 113). Para deshabilitar esta sensibilidad entre mayúsculas y minúsculas active en Project>Build Options>Project
  • 13. En la ventana de Opciones de Proyecto seleccione la pestaña MPASM Assembler y marque la opción Disable case Sensitivity
  • 14. SIMULANDO EL PROYECTO. La correcta simulación de un proyecto depende de las características particulares del programa utilizado. A continuación se describen las herramientas y procedimientos utilizados en la mayoría de los casos. Desde el menú principal seleccione: Debugger>Select Tool>MPLAB SIM A continuación se activará la barra de simulación. La siguiente tabla muestra la forma y función de cada icono o botón de ésta barra. BOTÓN NOMBRE FUNCIÓN ATAJO Run Ejecuta el programa hasta que consiga un punto de quiebre (Breakpoint) o hasta que se detenga el programa (Halt). Los cambios en los registros se observaran sólo cuando se detenga la ejecución del programa. F9 Halt Detiene la ejecución del programa. F5 Animate Ejecuta el programa de forma animada. Se pueden observar los cambios en los registros a medida que estos ocurren. Step Into Ejecuta paso a paso el programa entrando a las Subrutinas. F7 Step Over Ejecuta paso a paso el programa principal. En una instrucción CALL, ejecuta el llamado a subrutina, retorna y se detiene en la dirección siguiente a la llamada. Luego de este retorno, se puede continuar la ejecución paso a paso. F8 Step Out Se sale de una subrutina sin finalizar su ejecución, y regresa a la línea siguiente de la instrucción CALL de donde partió. Reset Lleva al PC (Program Counter) a la dirección 00h (Vector de Reset) y restablece las acciones y opciones a sus valores iniciales, dependiendo de la herramienta y dispositivo seleccionado. El tipo de reset puede ser por Watchdog, Brown out, procesador, MCLR. F6 Adicionalmente, en el menú desplegable Debugger aparecerán las opciones de simulación que antes no aparecían.
  • 15. Los resultados de cualquier acción simulada se verán reflejados en ventanas Es conveniente aprovechar el espacio que brinda el monitor de la computadora del ejor m específicas; por eso, antes de iniciar es necesario cerrar la ventana con los mensajes de la compilación y abrir las ventanas que se vayan a necesitar (Program Memory, File Register, Special Function Register, Watch, entre otras). La forma de activarlas es buscando cada una en el menú View. m odo posible, de modo que las ventanas abiertas no se solapen. Utilice la opción Tile Vertically ó Tile Horizontally del menú Window para organizar el contenido de la pantalla antes de iniciar la simulación.
  • 16. COMENZANDO LA SIMULACIÓN. Para comenzar la simulación, la acción inicial a efectuar es un Reset, ya que esto simula A continuación presione varias veces el botón Step, Step Into o Step Over y observe lo que sucede cuando se energiza el PIC. El Program Counter es cargado con la dirección del Reset Vector (00h), lo que justifica que el origen de la mayoría de los programas sea justamente esta posición en la memoria de programa. que ocurre a los registros. Fíjese que al activar alguno de éstos por segunda vez, el programa ejecuta la instrucción (BSF STATUS, RP0) y la flecha verde apunta a la próxima instrucción. En la ventana del Watch, así como en las otras ventanas, se observa en rojo los registros que se modificaron al ejecutarse la instrucción. El registro status cambió de 0x18 a 0x38 (Esto porque cambió de 0 a 1 el bit 5, para efectuar el salto al banco 1) y el registro PCL cambió de 5 a 6 esta es la dirección de la siguiente instrucción que se ejecutará. CAMBIANDO VALORES A LOS REGISTROS. Se ilustrará la manera de modificar el valor de los registros, lo cual es útil cuando el flujo del programa depende de la ocurrencia de eventos específicos que tardarían mucho si se sigue una simulación paso a paso, como por ejemplo la ejecución de ciclos de retardo de tiempo.
  • 17. Para cambiar el valor de un registro simplemente haga doble clic en él y asigne el nuevo valor. Este cambio lo aceptará sólo si el registro no está asignado como entrada. Intente cambiar el valor del registro PORTA y PORTB. Observe lo que ocurre. Ahora necesitaremos simular entradas externas para asignar un valor de entrada en el registro PORTB. SIMULANDO ENTRADAS EXTERNAS Dentro del menú Debugger seleccione la opción Stimulus y New Workbook. Aparecerá la ventana de configuración del Stimulus, que permite determinar el tipo de entrada a simular.
  • 18. Seleccione la opción Async, para simular entradas asíncronas. En la columna Pin/SFR seleccione el pin RB7. A continuación seleccione Toggle en la columna Action para definir el tipo de acción que ejecutará el pin RB7 cada vez que se presione el botón Fire correspondiente.
  • 19. Repita el procedimiento en las filas siguientes hasta que le haya adjudicado, como Toggle, el pin RB3. Al finalizar, haga clic con el ratón sobre el botón Apply posteriormente almacene en un archivo seleccionando Save. Si presiona con el botón derecho del ratón sobre el botón Fire (>) correspondiente a uno de los estímulos definidos, no observará el resultado hasta que haya avanzado un paso (step) en la ejecución del programa. Sólo se procesará la acción de una entrada simulada por vez. Si presiona dos veces consecutivas sobre el mismo estímulo o se presiona en uno después del otro, se tomará el valor del último que se presionó. ACTIVIDAD: Resetee el sistema. Corra paso a paso el programa nuevamente y a medida que lo va corriendo, haga clic sobre los botones FIRE del Stimulus para asignar un valor al registro PORTB. Recuerde que solo procesará una acción de la entrada simulada a la vez. Avance a la instrucción previa la etiqueta Ciclo. Observe y analice lo que ocurre en las ventanas adjuntas, cada vez que presiona el botón. Step. PREPARE UNA EXPLICACIÓN DE ESTO. CUANDO CREA QUE LA TIENE, COMUNÍQUELA AL PROFESOR.
  • 20. DETERMINANDO TIEMPOS DE EJECUCIÓN. A continuación verá como contar ciclos de reloj y determinar el tiempo de ejecución de un programa o de secciones dentro del mismo. En el menú Debugger seleccione la opción Stopwatch. Aparecerá el recuadro que observa en la siguiente figura. Resetee el programa. En el Stopwatch presione el botón Zero y avance 3 instrucciones en el curso del programa. Observe lo que ocurre. Prosiga esta actividad hasta que alcance la instrucción GOTO Ciclo. Avance un paso más. Explique lo que observa a su profesor.