You are on page 1of 9

UNTECS IET - 2014 I MICROPROCESADORES

Gua de laboratorio Pg. 1


LABORATORIO 04

DESARROLLO DE APLICACIONES CON EL MODULO ENTRENADOR MTS-86C



CONEXION DEL MTS-86C a la PC
01. Conecte en la laptop el adaptador USB a RS-232.
02. Instale el controlador respectivo.
03. En el Administrador de Dispositivos de Windows, verifique el nmero de puerto COM
asignado.
04. Conecte fsicamente la PC y el MTS-86C mediante el cable serial RS-232.
05. Ejecute el programa HyperTerminal de Windows
06. Seleccione el puerto COM1 o el que haya sido asignado en los pasos previos.
07. Configure la velocidad de comunicacin a 19200 bps.
08. Seleccione Xon/Xoff como protocolo de control de flujo.
09. Seleccione 8N1 (8 bits de datos, paridad nula y un bit de parada).



10. En el MTS-86C presione cualquier tecla (entre A y F) para establecer la comunicacin
con la PC. Debe mostrarse la pantalla de bienvenida siguiente.


UNTECS IET - 2014 I MICROPROCESADORES
Gua de laboratorio Pg. 2
ESCRITURA DE CODIGO
11. Escriba el siguiente programa fuente empleando un editor de texto (NOTEPAD o
WORDPAD)



Este programa enciende el banco de 8 leds disponibles en el MTS-86C.

GENERACION DE ARCHIVO INTEL HEX
12.- Grabe su archivo con extensin .ASM en la carpeta ASSEMBLY.

Pngale de nombre, por ejemplo, Prog_01.asm

OBS. El nombre del archivo no debe tener ms de ocho caracteres.

13.- Ingrese a la ventana (o lnea) de comandos, para ello ejecute desde Windows:

COMMAND.EXE (o CMD.EXE)

14.- Desde la ventana de comandos, ingrese a la carpeta ASSEMBLY, para ello escriba:

cd \
cd assembly

Obs. El comando cd significa Change Directory

15.- Obtenga el archivo con extensin .OBJ.
Para ello, escriba en la lnea de comandos:

masm Prog_01.asm

OBS. Cuando un proyecto consta de varios archivos fuentes, estos deben ser
enlazados o unidos mediante otro programa (LINK.EXE). El enlace NO se realiza con
UNTECS IET - 2014 I MICROPROCESADORES
Gua de laboratorio Pg. 3
las fuentes (.ASM) directamente, sino con los archivos OBJs.

16.- Corrija los errores que hubieren y verifique la creacin del archivo Prog_01.OBJ .

17.- Obtenga el archivo con extensin .EXE.
Para ello escriba en la lnea de comandos:

Link Prog_01.obj

18.- Verifique la creacin del archivo Prog_01.EXE.

OBS. Este archivo contiene el programa ms informacin adicional para ser ejecutado
desde una computadora personal con sistema operativo de Microsoft.

Para el caso de los mdulos MTS-86C, esa informacin adicional debe ser eliminada.
Solo debe quedar el programa en s.

19.- Obtenga el archivo con extensin .BIN.
Para ello escriba en la lnea de comandos:

exe2bin Prog_01.exe

20.- Verifique la creacin del archivo Prog_01.BIN.

OBS. El archivo .BIN contiene el programa byte a byte tal como se grabar en memoria.
Lo puede visualizar con editor binario (utilice uno de los proporcionados por el docente).

21.- Finalmente, obtenga el archivo con extensin .HEX.
Para ello escriba en la lnea de comandos:

bin2hex

Indique el archivo Prog_01.bin

22.- Verifique la creacin del archivo Prog_01.HEX.

OBS. Este archivo contiene exactamente la misma informacin que el archivo .BIN, pero
en formato texto estandarizado para uso con equipos grabadores y programadores. Es
de amplio uso. Revise en Internet los detalles de este formato de archivo.

Puede visualizar el contenido del archivo .HEX con un editor de textos cualquiera.

MASM.EXE Microsoft Assembler. Genera el archivo OBJ
LINK.EXE Microsoft Linker. Genera el archivo EXE

EXE2BIN.EXE Convierte el formato EXE a BIN. Genera el archivo BIN
BIN2HEXEXE Convierte el formato BIN a INTEL HEX. Genera el archivo HEX

UNTECS IET - 2014 I MICROPROCESADORES
Gua de laboratorio Pg. 4
DESCARGA DE UN ARCHIVO INTEL HEX EN EL MTS-86C
23. Verifique que este activa la conexin RS-232 entre la PC y el MTS-86C
24. Presione L en la ventana de Hyper Terminal de Windows.

Debe especificar la direccin de inicio donde se cargar el programa. En este caso ser
en 0200:0000, pero solo se indica la parte de segmento segn se muestra en la figura
siguiente.



El OFFSET se considera 0000.

25. Click en la pestaa TRANSFER ubicada en la esquina derecha superior. Seleccione
send text file.

26. Seleccin el archivo .HEX generado anteriormente.
El programa se descarga en la memoria del MTS-86C a partir de
la direccin indicada.



UNTECS IET - 2014 I MICROPROCESADORES
Gua de laboratorio Pg. 5
27. Ejecute el programa usando el comando g (GO ejecutar). Indique como direccin
0200:0000.



28. Su programa se ejecuta, los 8 leds se encendern.

DEBUGGING (DEPURACION) EMPLEANDO HYPER TERMINAL
Comandos disponibles desde la consola de Hyper Terminal.
E Examinar y modificar datos de memoria
MTS-86C > E 0300:0000
0300:0000 00 _
SPACE Avanza a la direccin siguiente
ENTER Finaliza
BC Ingresa nuevo dato (BCh, por ejemplo)

De este modo puede ingresar manualmente un programa en memoria o
verificar/modificar su contenido.

D Volcar (DUMP) datos a pantalla
MTS-86C > D 0200:0000
Cuntas filas muestra? ________________________
Cuntos bytes por fila existen? ________________________
En qu formatos se muestran los datos? ________________________
Por qu algunos datos no son visibles? ________________________

G Ejecutar un programa
Se realiz en el paso 27.
UNTECS IET - 2014 I MICROPROCESADORES
Gua de laboratorio Pg. 6
R Examinar y modificar contenidos de los registros del microprocesador

T Ejecutar un programa paso a paso (step by step)
F Llenar un dato en un bloque de memoria
MTS-86C > F 0300:0,20 11
Llena el dato 11h desde 0300:0000 hasta 0300:0020
Verifique con el comando F.

M Mover datos de un bloque de memoria a otro
MTS-86C > M 0200:0000,0020,0300:0000
Copia los datos de 0200:0000 hasta 0200:0020 a 0300:0000.
Verifique los bloques origen y destino.

O Enviar dato a puerto de E/S
MTS-86C > O 3FD2,F0
Se enva 11110000b al banco de LEDs ubicado en el puerto 3FD2h.

MTS-86C > O 3FF0,C0
Se enva 11000000b al FND, qu dgito aparecer? ____________________________

I Leer dato de puerto de E/S
MTS-86C > I 3FD0
Lee el estado del DIPSWITCH ubicado en el puerto 3FD0h.
Conmute algunos SWITCHS y vuelva a ejecutar el comando.
TAREA
01.- Investigue en qu consiste el protocolo de control de flujo XON/XOFF.
02.- Investigue el formato INTEL HEX.
03.- Indique y detalle las diferencias entre los formatos que puede adoptar un cdigo fuente:
ASM, EXE, BIN y HEX.

UNTECS IET - 2014 I MICROPROCESADORES
Gua de laboratorio Pg. 7
ENVIO DE UN DATO CONSTANTE (95h) A UN BANCO DE OCHO LEDS
El banco de LEDs (que consta de ocho LEDs) debe mostrar permanentemente el patrn
siguiente:



DESCRIPCION DEL CIRCUITO
Los ocho LEDs son manejados por el driver 74LS240 conectado al puerto B del 8255.

74LS240

74LS240: OCTAL INVERTER BUFFER AND LINE DRIVERS WITH 3-STATE OUTPUTS

Las seales arrojadas por el 8255 por el puerto B son invertidas por el 74LS240. Dado que los
LEDs estn conectados con el nodo a tierra, se encendern con nivel bajo a la salida del
74LS240 o nivel alto a la salida del puerto B del 8255.

PROGRAMA FUENTE
CNT3 EQU 3FD6h ; Direccin del registro de configuracin del 255
BPORT3 EQU 3FD2h ; Direccin del puerto B del 8255

CODE SEGMENT
ASSUME CS:CODE, DS:CODE

ORG 0
;Configura el 8255 mediante su registro de control
START: MOV SP, 4000h ; Inicializacin de la pila
MOV AL, 90h ; Inicializa el 8255
MOV DX, CNT3
OUT DX, AL

;Enva dato al banco de LEDs
MOV AL, 95h ; Dato a mostrar en el banco de LEDs
MOV DX, BPORT3 ; Carga en DX la direccin del puerto B
OUT DX, AL ; Enva el dato al puerto B del 8255
HLT

CODE ENDS
END START

DESCRIPCION DEL PROGRAMA
a) El mdulo MTS-86C dispone de tres chips 8255. El usado en este laboratorio se accede
mediante sus cuatro registros internos a travs de los puertos de E/S siguientes:
UNTECS IET - 2014 I MICROPROCESADORES
Gua de laboratorio Pg. 8
Port Address Registro o funcin
3FD6h Registro de control para configuracin o inicializacin del 8255
3FD4h Puerto C
3FD2h Puerto B
3FD0h Puerto A

Segn las conexiones existentes en el mdulo, la finalidad de cada puerto es la
siguiente:
PUERTO C SALIDA Parlante
PUERTO B SALIDA Banco de 8 LEDs
PUERTO A ENTRADA Banco de 8 SWITCHES

b) El modo de funcionamiento del 8255 se configura escribiendo en el registro de control
(ubicado en el puerto 3FD6h).

Este registro es escrito con el valor 90h (1001 0000). El chip queda configurado del
siguiente modo.

Dispositivo habilitado
Puerto A como entrada
Puerto B como salida
Puerto C como salida
Funcionamiento en modo 00 (entrada/salida bsica): datos de salida latcheados y
datos de entrada no latcheados.

La figura siguiente muestra la estructura del registro de control. Este registro permite configurar
el sentido (entrada o salida) de cada puerto y el modo en que funcionarn.





UNTECS IET - 2014 I MICROPROCESADORES
Gua de laboratorio Pg. 9
CONTROL DEL PARPADEO DE UN BANCO DE LEDS
Al ejecutarse el programa, los ocho LEDs deben mostrar el siguiente patrn en forma repetitiva:




DESCRIPCION DEL CIRCUITO
El mismo de la experiencia previa.

PROGRAMA FUENTE
CNT3 EQU 3FD6h
BPORT3 EQU 3FD2h

CODE SEGMENT
ASSUME CS:CODE, DS:CODE

ORG 0

;Configura el 8255 mediante su registro de control
START: MOV SP, 4000h
MOV AL, 90h
MOV DX, CNT3
OUT DX, AL

;Enva repetitivamente 0Fh y F0h al banco de LEDs
MOV AL, 0Fh
MOV DX, BPORT3

J1: OUT DX, AL ; Enva 0F al puerto B

MOV CX, 0A000h ; Inicia un contador a 40960
LOOP $ ; Repite lazo saltando hacia s mismo 40960 veces

NOT AL ; Invierte el 0F
JMP J1 ; Salta a J1 y se repite todo indefinidamente

CODE ENDS
END START


DESCRIPCION DEL PROGRAMA
a) El lazo LOOP se ejecuta CX veces. En cada ejecucin CX se decrementa en 1; cuando
llega a cero, la ejecucin del programa continua en la instruccin siguiente a LOOP.
Para el programa CX se inicializa con A000h, esta da como resultado que el LOOP se
ejecute 40960 veces.

EJERCICIO
MODIFICAR EL CODIGO PARA CAMBIAR LA SECUENCIA EN LOS LEDS, EJECUTAR EL
PROGRAMA EN EL MTS-86C.
Edgard Oporto julio 2014

You might also like