Mplab V8.00
Mplab V8.00
00
Desde el escritorio acceda al programa a través del ícono MPLAB IDE v.8.00,
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.
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.
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).
Si alguna de las herramientas muestra una “X” de color rojo significa que MPLAB IDE
no sabe donde encontrarla.
Escoja ahora la opción New en el Menú File y se desplegará la ventana donde podrá
editar el archivo fuente.
9 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).
9 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”)
9 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 “ , “
9 Comentarios:
Los comentarios comienzan con “ ; ” y se escriben en cualquier
columna.
Todo lo que vaya después del “ ; “ se considera comentario.
EJEMPLO:
;**********************************************************************
;************ Sumador de dos números Hexadecimales ***************
;**********************************************************************
list p=16F877
#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
; 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.
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).
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.
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.
Las Advertencias (Warnings): No impiden la obtención del .hex, pero advierten de algo
que al ensamblador le parece extraño. Por ejemplo:
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.
A continuación presione varias veces el botón Step, Step Into o Step Over y observe
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á.
Intente cambiar el valor del registro PORTA y PORTB. Observe lo que ocurre.
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:
9 Resetee el sistema.
9 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.
9 Avance a la instrucción previa la etiqueta Ciclo.
9 Observe y analice lo que ocurre en las ventanas adjuntas, cada vez que presiona el
botón. Step.
Prosiga esta actividad hasta que alcance la instrucción GOTO Ciclo. Avance un
paso más. Explique lo que observa a su profesor.