You are on page 1of 10

ESCUELA SUPERIOR DE INGENIERA MECNICA Y ELCTRICA

INGENIERA EN COMUNICACIONES Y ELECTRNICA


ACADEMIA DE COMPUTACIN
MATERIA:
MICROPROCESADORES
PROF:
JOS LUIS BRAVO LEN

NOMBRES:

FIRMA:
FECHA DE
ENTREGA:

PRACTICA No. 2
OBJETIVO: Utilizar las herramientas de desarrollo de MPLAB IDE
EQUIPO Y MATERIAL:

SOFTWARE DE DESARROLLO MPLAB IDE


PLANTILLA FORMA.ASM
MANUAL DEL PIC 18F4550

DESARROLLO:
1.- Creacin del Proyecto:
1.1.- Crear una carpeta con el nombre:
practica1.
practica1

1.2.- Copiar en la carpeta creada el archivo: FORMA.ASM


y renombrar el archivo como: practica1

practica1

1.3.- Abrir MPLAB IDE


FORMA.ASM

1.4.- Del men principal,


seleccionar la opcin:

1.5.- Seleccionar al asistente de


proyecto:

1.6.- Despus de seleccionar la opcin:


indique el dispositivo a emplear

1.7.- Oprima la opcin


Posteriormente seleccione la herramienta
de Microchip:

como se muestra en la siguiente figura:

1.8.- Salvar el proyecto.


Asigne la carpeta practica1 como el lugar
donde
.
se guardar el proyecto

1.9.- Creacin del nuevo proyecto.


Seleccione la ruta de destino del
proyecto.

1.10.- Adicin de archivos.


Seleccionar el archivo:
practica1.ASM
para agregarlo al proyecto.

1.11.- Haga uso de la opcin :

para gregar el archivo al


proyecto

1.12.- Finalice el proceso

2.- Simulacin.
De acuerdo al diagrama de flujo mostrado a continuacin, elabore un programa que utilice
DIRECCIONAMIENTO DIRECTO para leer de una rea de memoria que inicia en la direccin 0050H,
cinco datos almacenados en cdigo BCD, realice la conversin a su correspondiente cdigo ASCII y los
almacene en la misma rea de memoria.
050H
051H
052H
053H
054H
055H
056H

INICIO

04
06
03
09
01

050H
051H
052H
053H
054H
055H
056H

34
36
33
39
31

W [0x50]
W W + 0x30

W [0x52]

W W + 0x30

[0x50] W

W W + 0x30

[0x53] W

W [0x51]

[0x52] W

W [0x54]

W W + 0x30

W [0x53]

W W + 0x30

[0x51] W

2.1.- Para iniciar la edicin, seleccione el


archivo fuente practica1.ASM, creado en los
pasos anteriores.

[0x53] W

fin

2.2.- Inicie la edicin del programa creado

Inserte las siguientes instrucciones a partir de la directiva ORG 0x1000:


Main:
movf
0x50,0
addlw
0x30
movwf
0x50
movf
0x51,0
addlw
0x30
movwf
0x51
movf
0x52,0
addlw
0x30
movwf
0x52
movf
0x53,0
addlw
0x30
movwf
0x53
movf
0x54,0
addlw
0x30
movwf
0x54

2.3.- Una vez concluida la edicin,


salve el programa y ejecute la
compilacin:

2.4.- Simulacin del programa.


2
Del men principal, elija la
opcin Debugger y seleccione
la herramienta:

2.5.- De las opciones del men


principal, seleccione View y active la
visualizacin de registros con el
comando:

2.6.- Oprima el icono


para seleccionar
y desplegar los registros SFR.

2.7.- Utilizando la opcin


agregue los registros
PORTB, y PCL.

adadd
WREG,

2.8.- Utilice la opcin


desplegar el contenido
registros de memoria.

de

para
los

2.9.- Despliegue el contenido de los


registros de memoria e introduzca
datos BCD en cinco localidades a
partir de la direccin 50H

2.10.- En la carpeta del proyecto creado, localice y abra el archivo con extensin
.LST,. Identifique las columnas de direccin, cdigo de operacin y nemnicos del
programa.

2.11.-A partir del archivo .LST obtenga y anote en la tabla siguiente la


direccin y cdigo de cada una de las instrucciones del programa
DIRECCIN

CODIGO

INSTRUCCIN

REGISTROS SFR
PCL
W

movf 0x50,0
addlw 0x30
movwf 0x50
movf 0x51,0
addlw 0x30
movwf 0x51
movf 0x52,0
addlw 0x30
movwf 0x52
movf 0x53,0
addlw 0x30
movwf 0x53
movf 0x54,0
addlw 0x30
movwf 0x54,0

2.12.- Seleccione la opcin Step Into y coloque el


apuntador en la primera instruccin para la ejecucin
paso por paso del programa

2.13.- Ejecute el programa paso por paso y


anote los cambios en los registros FSR y en los
de memoria conforme se ejecuta cada una de
las instrucciones

50

REGISTROS DE MEMORIA
51
52
53
54

3. Cuestionario
3.1. Qu relacin existe entre el registro PCL y las direcciones de las instrucciones del programa?

3.2 Cul es la direccin inicial del programa?

3.3 Cul es la direccin final

3.4 Cul es la longitud de cdigo de cada instruccin?

3.5. Cul es la longitud total del programa?

3.6. Cul sera el cambio en el cdigo del programa si los registros de memoria empleados fueran a
partir de la direccin 0x40?

3.7. Cul sera el cambio en el cdigo del programa si la literal a sumar fuera 0x20?

Conclusiones