Upload
juanma-becerra
View
220
Download
0
Embed Size (px)
Citation preview
7/28/2019 Presentacion 8051 Parte I
1/86
Herramientas paradesarrollos sobre
plataformas MCS-51
KEIL VISION 2
Parte 1
Ing. Gustavo Alessandrini
7/28/2019 Presentacion 8051 Parte I
2/86
Temario
Arquitectura MCS-51
Macro Assembler
IDE para MCS-51 Edicin
Debugger
Ejemplos
7/28/2019 Presentacion 8051 Parte I
3/86
Familia 8051 - Hardware
Unidad aritmtico-lgica de 8 bits
32 pins de E/S (4 grupos de 8) que puedenser accedidos individualmente
2 contadores/temporizadores de 8 bits
Full duplex UART
6 fuentes de interrupciones con dos
niveles de prioridad Espacios separados de memoria de cdigo
y datos (64 kB c/u)
7/28/2019 Presentacion 8051 Parte I
4/86
Organizacin de la memoria
CODE XDATADATA IDATA
SFR
0000h
FFFFh
80h
FFh
0000h
FFFFh
FFh
80h
00h
7Fh2Fh
1Fh
7Fh
00h
7/28/2019 Presentacion 8051 Parte I
5/86
Modos de direccionamiento
Los modos de direccionamiento de unmicro- computador son las diferentesformas de transformacin del campo de
operando de la instruccin en la direccin(localizacin) del operando
Se utilizan tcnicas de direccionamiento conlos siguientes fines
Dar versatilidad de programacin al usuarioproporcionando facilidades tales como ndices,direccionamientos indirectos, etc.
Reducir el nmero de bits del campo de
operando
7/28/2019 Presentacion 8051 Parte I
6/86
Modos de direccionamiento
La disponibilidad de diferentes esquemas de
direccionamiento le da al programador
experimentado flexibilidad para escribir
programas que son ms eficientes en cuanto a
nmero de instrucciones y tiempo de ejecucin
Es tal la importancia de los modos de
direccionamiento, que la potencia de unamquina se mide tanto por su repertorio de
instrucciones como por la variedad de modos
de direccionamiento que es capaz de admitir
7/28/2019 Presentacion 8051 Parte I
7/86
Modos de direccionamiento
La especificacin del modo dedireccionamiento puede ir en el cdigo deoperacin o en el campo de cada operando
Modos de direccionamiento del 8051
Directo
Indirecto
Por registro Implcito
Inmediato
Indexado
7/28/2019 Presentacion 8051 Parte I
8/86
Modos de direccionamiento
Direccionamiento directo
ADD A,4Ch A (A)+(4C)
Direccionamiento indirectoMOV A,@R0 A ((R0))
MOVX A,@DPTR A ((DPTR))
Direccionamiento por registroMOV Rn,A Rn (A)
MOV Rn,#FFh Rn FF
7/28/2019 Presentacion 8051 Parte I
9/86
Modos de direccionamiento
Direccionamiento implcito
INC A A (A)+1
Direccionamiento inmediatoMOV A,#3Dh A 3D
Direccionamiento indexado
MOVC A,@A+DPTR A ((A)+(DPTR))
7/28/2019 Presentacion 8051 Parte I
10/86
Modos de direccionamiento
DATA and IDATA accesoMOV R1, #22H ;set R1 to point at DATA address 22H
MOV R0, #0A9H ;set R0 to point at IDATA address A9H
MOV A, @R1 ;read the value at DATA address 22H
;into the accumulator
MOV @R0, A ;write the value in the accumulator;to IDATA address A9H
INC R0 ;set R0 to point at IDATA address AAH
INC R1 ;set R1 to point at DATA address 23H
MOV 34H, @R0 ;write the value at IDATA address AAH;to DATA address 34H
MOV @R1, #67H ;write 67H to DATA address 23H
7/28/2019 Presentacion 8051 Parte I
11/86
Modos de direccionamiento
XDATA accesoMOV DPTR, #3048H ;set DPTR to point at XDATA address
;3048H
MOVX A, @DPTR ;read the data at XDATA address 3048H;into the accumulator
INC DPTR ;set DPTR to point at XDATA address;3049H
MOV A, #26H ;set the accumulator to 26H
MOVX @DPTR, A ;write 26H to XDATA address 3049H
MOV R0, #87H ;set R0 to point at XDATA address 87H
MOVX A, @R0 ;read the data at XDATA address 87H;into the accumulator
7/28/2019 Presentacion 8051 Parte I
12/86
Modos de direccionamiento
CODE accesoMOV DPTR, #TABLE_BASE ;set DPTR to point at the
;base of a lookup table
MOV A, index ;load the accumulator with an
;index into the table
MOVC A, @A+DPTR ;read the value from the
;table into the accumulator
7/28/2019 Presentacion 8051 Parte I
13/86
Sistema de interrupciones
El 8051 bsico tiene 6 fuentes de
interrupciones
2 fuentes externas (INT0, INT1)
2 fuentes internas timer/counter
2 fuentes internas provenientes de la lnea
serie (recepcin y transmisin)
7/28/2019 Presentacion 8051 Parte I
14/86
Vector de interrupciones
Fuente Direccin de salto
Reset 0000h
External 0 0003h
Timer 0 000bh
External 1 0013h
Timer 1 001bh
Serial RX/TX 0023h
Timer 2 (8052) 002bh
P i i
7/28/2019 Presentacion 8051 Parte I
15/86
Priori a e asinterrupciones
El 8051 soporta dos niveles de prioridad paraatender las interrupciones: alta y baja
Un servicio de atencin de una interrupcinde baja prioridad solo puede ser interrumpidopor una interrupcin de alta prioridad
Un servicio de atencin de una interrupcin
de alta prioridad no puede ser interrumpido
7/28/2019 Presentacion 8051 Parte I
16/86
Prioridad de las interrupciones
A cada fuente de interrupcin se le puedeindividualmente asignar alta o baja prioridadde acuerdo a como se programe el bit
asociado en el registro IP (interrupt priority)
- - PT2 PS PT1 PX1 PT0 PX0
(IP) Interrupt priority register. Bit addressable B8h
1: alta prioridad
0: baja prioridad
7/28/2019 Presentacion 8051 Parte I
17/86
Habilitacin de interrupciones
Todas las interrupciones pueden ser habilitadas
o bloqueadas en forma general
Cada fuente de interrupcin puedeindividualmente habilitarse o bloquearse
EA - ET2 ES ET1 EX1 ET0 EX0
(IE) Interrupt enable register. Bit addressable B8h
1: fuente de interrupcin habilitada
0: fuente de interrupcin deshabilitada
7/28/2019 Presentacion 8051 Parte I
18/86
Temporizadores y contadores
El 8051 bsico tiene 2 registros utilizables
como temporizadores / contadores
8, 13 16 bits de cuenta Pueden utilizarse
Como temporizador
fc = 1/12 fosc
Como contador de eventos externos
fmximade evento = 1/24 fosc
7/28/2019 Presentacion 8051 Parte I
19/86
Temporizador/contador
Modo 13 16 bits sin auto recarga
7/28/2019 Presentacion 8051 Parte I
20/86
Temporizador/contador
Modo 8 bits con auto recarga
7/28/2019 Presentacion 8051 Parte I
21/86
UART
Full duplex UART, bajo control del software
8 9 bits de palabra de datos
Velocidad de comunicacin programable
Unidad Asincrnica de Recepcin Transmisin serie
7/28/2019 Presentacion 8051 Parte I
22/86
Tipos de memoria
CODE
Reservado para el programa
64 kBytes DATA
Memoria interna para datos, direccionable enforma directa
128 Bytes
Rpido acceso
7/28/2019 Presentacion 8051 Parte I
23/86
IDATA
Memoria interna para datos, direccionable enforma indirecta
128 Bytes (8051), 256 Bytes (8052)
BDATA
Memoria interna para datos, direccionable de
a bit (128 bits)
Uso con direccionamiento directo 16 Bytes
Tipos de memoria
7/28/2019 Presentacion 8051 Parte I
24/86
Tipos de memoria
XDATA
Memoria externa para datos
64 kBytes PDATA
Memoria externa paginada para datos
256 Bytes
7/28/2019 Presentacion 8051 Parte I
25/86
Programacin del 8051
Macro Assembler Ax51
7/28/2019 Presentacion 8051 Parte I
26/86
Programacin del 8051
Assembly Statements: Un programa escrito en
assemblyest formado por un conjunto de
declaraciones (statements), las cuales pueden
ser de 3 tipos
Directivas
Control
Instrucciones (mnemnicos)
7/28/2019 Presentacion 8051 Parte I
27/86
Programacin del 8051
Las declaraciones deben estar contenidas enuna nica lnea de cdigo
Cada lnea de un programa puede contener unanica declaracin de control, directiva oinstruccin
No son column sensitiveesto significa que
pueden indentarse Todos los programas deben finalizar con la
directiva END para indicar al ensamblador queall finaliza el programa
7/28/2019 Presentacion 8051 Parte I
28/86
Programacin del 8051
Directivas
Proporcionan al programador un medio para
indicar al ensamblador como procesar lasinstrucciones
Permiten definir constantes y reservar espacio
para variables Las directivas no deben ser confundidas con
instrucciones
7/28/2019 Presentacion 8051 Parte I
29/86
Programacin del 8051
Las directivas se dividen en categoras Control de segmento
Definicin de smbolos
Inicializacin de memoria Reserva de memoria
Declaracin de procedimientos
Enlace de programa
Control de direcciones
Otras
7/28/2019 Presentacion 8051 Parte I
30/86
Programacin del 8051
7/28/2019 Presentacion 8051 Parte I
31/86
Declaraciones de control
Controlan las operaciones que realiza el
ensamblador cuando genera un archivo de
listado o un archivo de cdigo objeto.
Las declaraciones condicionales indicarn al
ensamblador qu cdigo es ensamblado, bajo
ciertas condiciones Deben comenzar con el caracter $ ej:
$INCLUDE (reg51.inc)
Programacin del 8051
7/28/2019 Presentacion 8051 Parte I
32/86
Instrucciones
Son las rdenes especficas que generarn
cdigo de programa cuando sean ensambladas
por el ensamblador
En general tienen el siguiente formato
Programacin del 8051
[etiqueta:] mnemnico [operando] [,operando] [,operando] [;comentario]
7/28/2019 Presentacion 8051 Parte I
33/86
Comentarios
Son lneas de texto que pueden (deben) ser
includas en el programa para identificar y
explicar las partes del mismo
Pueden ubicarse en cualquier lugar
Deben ir precedidos del caracter ;
Los comentarios no tienen impacto sobre la
generacin del cdigo objeto
Programacin del 8051
P i d l 80 1
7/28/2019 Presentacion 8051 Parte I
34/86
Smbolos
Un smbolo es un nombre que define elprogramador para representar una constante,
variable, direccin, etc. Los nombres se componen de caracteres
permitidos (hasta 31) { A-Z, a-z, 0-9, _, ? }
Deben comenzar con cualquiera de loscaracteres anteriores, excepto los dgitos
Assembly no es case sensitive
Programacin del 8051
P i d l 8051
7/28/2019 Presentacion 8051 Parte I
35/86
Etiquetas (labels)
Una etiqueta es un smbolo que se utiliza para definir
un lugar en el programa
Las reglas aplicadas a nombres de smbolos tambin se
aplican para etiquetas
Una etiqueta debe ser el primer texto en una lnea
Debe estar seguida del caracter : Puede estar precedida por tabulaciones o espacios
Se puede definir una nica etiqueta por lnea
Programacin del 8051
P i d l 8051
7/28/2019 Presentacion 8051 Parte I
36/86
Operandos, expresiones y operadores
Un operando es una constante numrica, smbolo,expresin o cadena de caracteres que dependen
de la directiva o instruccin donde se utilice Una expresin es una combinacin de, nmeros,
smbolos y operadores, que se evaluan paraobtener un nmero como resultado
Las expresiones son evaluadas en tiempo deensamblado
Programacin del 8051
P i d l 8051
7/28/2019 Presentacion 8051 Parte I
37/86
Operandos, expresiones y operadores (cont)
Los operadores se utilizan para combinar
operandos dentro de un programa, no son
instrucciones de programa, ni generan cdigo
Los operadores representan operaciones que son
evaluadas en tiempo de ensamblado
Programacin del 8051
P i d l 8051
7/28/2019 Presentacion 8051 Parte I
38/86
Macros (Standard Assemblers Macros)
Una macro es un nombre que permite colocar
en un programa un conjunto de declaraciones
(instrucciones, directivas), que sern
ensambladas en aquellos lugares del programa
donde dicho nombre fue invocado
No debe ser confundida con una subrutina
Programacin del 8051
P i d l 8051
7/28/2019 Presentacion 8051 Parte I
39/86
Cundo utilizar subrutinas o macros?
Subrutinas son ms usadas cuando un procedi-miento
se usa frecuentemente o si la cantidad de memoria
utilizada debe mantenerse al mnimo
Macros deberan utilizarse cuando se necesita
mxima velocidad de procesador y/o cuando no
importa la cantidad de memoria usada Macros son ms adecuadas cuando se utilizan bloques
de cdigo pequeos en forma repetitiva, para la
creacin de tablas de conversin, etc.
Programacin del 8051
P i d l 8051
7/28/2019 Presentacion 8051 Parte I
40/86
Directivas para macros: Se utilizan espec-ficamente en la definicin de la macro
Programacin del 8051
ENDM Finaliza la definicin de la macro
EXITM Termina la expansin de la macro
IRPEspecifica una lista de argumentos que son sustituidos por
parmetros especificados en las siguientes lneas
IRPCEspecifica un argumento que es sustitudo, un caracter a la
vez, por un parmtero especfico en la lnea siguiente
LOCAL Indica un smbolo local usado dentro de la macro
MACROIndica un comienzo de definicin de macro, su nombre, y
lista de argumentos pasados a la macro
REPTIndica la repeticin de las lineas siguientes de la macro
P i d l 8051
7/28/2019 Presentacion 8051 Parte I
41/86
Definicin de una macro La macro debe estar definida antes de ser
utilizada
Debe comenzar con la directiva MACRO, la cualdeclara el nombre con que ser invocada y los
parmetros que recibe
Debe finalizar con la directiva ENDM El texto entre MACRO y ENDM se denomina
cuerpo de la macro
Programacin del 8051
P i d l 8051
7/28/2019 Presentacion 8051 Parte I
42/86
Definicin de una macro (ejemplos)
WAIT MACRO X ; macro definition
REPT X ; generate X NOP instructions
NOP
ENDM ; end REPT
ENDM ; end MACRO
WAIT2 MACRO X ; macro definition
IF NUL X ; make sure X has a value
EXITM ; if not then exitENDIF
REPT X ; generate X NOP instructions
NOP
ENDM ; end REPT
ENDM ; end MACRO
Programacin del 8051
nombre
cuerpo
parmetro
P i d l 8051
7/28/2019 Presentacion 8051 Parte I
43/86
Parmetros de una macro Pueden pasarse hasta 16 parmetros en su
lnea de invocacin
Deben estar separados por comas, tanto en ladefinicin como en la invocacin de la macro
Programacin del 8051
P i d l 8051
7/28/2019 Presentacion 8051 Parte I
44/86
Parmetros de una macro (ejemplo)
CLRMEM MACRO ADDR, LEN
LOCAL LOOP ; etiqueta localMOV R7, #LEN
MOV R0, #ADDR
MOV A, #0
LOOP: MOV @R0, A
INC R0
DJNZ R7, LOOP
ENDM
Programacin del 8051
P i d l 8051
7/28/2019 Presentacion 8051 Parte I
45/86
Repeticiones de bloques en una macro
REPT, IRP e IRPC son directivas de macros
para repetir bloques de texto en el cuerpo de
una macro
Cada una de estas directivas debe finalizar
con su propia directiva de finalizacin ENDM
Programacin del 8051
P i d l 8051
7/28/2019 Presentacion 8051 Parte I
46/86
REPT repite un bloque de texto un nmeron de veces
Programacin del 8051
DELAY MACRO ; macro definition
REPT 5 ; insert 5 NOPinstructions
NOP
ENDM ; end REPT block
ENDM ;end macro definition
NOP
NOP
NOP
NOP
NOP
P i d l 8051
7/28/2019 Presentacion 8051 Parte I
47/86
IRP repite un bloque de texto, uno porcada argumento
Programacin del 8051
CLRREG MACRO ; macro definition
IRP RNUM,
MOV RNUM, #00h
ENDM ; end IRP
ENDM ; end macro definition
MOV R0, #00h
MOV R1, #00h
MOV R2, #00h
MOV R3, #00h
MOV R4, #00h
MOV R5, #00h
MOV R6, #00h
MOV R7, #00h
Programacin del 8051
7/28/2019 Presentacion 8051 Parte I
48/86
IRPC repite un bloque de texto, uno por cadacaracter en el argumento dado
Programacin del 8051
ERROUT MACRO ; macro definition
IRPC CHR,
jnb TI, $
clr TI
mov a, # CHR
mov SBUF, A
ENDM ; end IRPC
ENDM ; end macro definition
jnb TI, $
clr TImov A, # E
mov SBUF, A
jnb TI, $
clr TI
mov A, # rmov SBUF, A
jnb TI, $
clr TI
mov A, # r
mov SBUF, A
Programacin del 8051
7/28/2019 Presentacion 8051 Parte I
49/86
Llamado (invocacin) de una macro
Una vez que la macro fue definida, puede ser
llamada varias veces desde distintos puntos
del programa
El llamado consiste del nombre de la macro
seguido por los parmetros que puede recibir
Programacin del 8051
Programacin del 8051
7/28/2019 Presentacion 8051 Parte I
50/86
Llamado (invocacin) de una macro
Programacin del 8051
DELAY MACRO n ; macro definition
REPT n ; insert n NOP
instructionsNOP
ENDM ; end REPT block
ENDM ; end macro definition. . .
mov P0, #0 ; clear port 0
DELAY 10 ; wait 10 NOPs
mov P0, # 0ffh ; set P0
DELAY 20 ; wait 20 NOPs
. . .
Definicin
Llamado
Llamado
P d d ll SW
7/28/2019 Presentacion 8051 Parte I
51/86
Proceso de desarrollo SW
.asm
A51
L51LIB51
OH51 V2
.obj.obj.obj .lib
.lst
.bin.lib
.hex
.map
In Circuit
Emulator
Programador EpromKit evaluacin
H i t d d ll SW
7/28/2019 Presentacion 8051 Parte I
52/86
Herramientas de desarrollo SW
Vision/51
Compilador C51 Macro assembler A51
Biblioteca C LIB51 RTX51
Linker BL51
dScope-51 Kit desarrollo
DE-EB51
Programador
EPROM
VISION 2
d d ll
7/28/2019 Presentacion 8051 Parte I
53/86
Herramientas de desarrollo SW
Ejecutable
Carga desde PC (.HEX)
Ejecucin
Depuracin
Correccin F i n !Fin
depuracin?
llave en modo : LOAD
llave en modo : RUN
Vi i 2 IDE
7/28/2019 Presentacion 8051 Parte I
54/86
Vision2 IDE
Manejo de proyectos
Facilidades para la creacin de programas
ejecutables Edicin de cdigo fuente
Depuracin (debugging) de programas
Simulacin en el mismo ambiente dedesarrollo
Vi i 2 IDE
7/28/2019 Presentacion 8051 Parte I
55/86
Vision2 IDE
Vision2 permite trabajar ms rpido a
travs de una plataforma fcil de usar
El editor y el depurador estn integradosen una misma aplicacin suministrando
un ambiente de desarrollo nico para todo
el proyecto
Vi i 2 IDE
7/28/2019 Presentacion 8051 Parte I
56/86
Vision2 IDE
Source codeeditor
window
Output window
Projectwindow
P j t t
7/28/2019 Presentacion 8051 Parte I
57/86
Project management
Un proyecto es unconjunto de archivos
con cdigo que son
compilados/ensam-blados y enlazados
(linkeados) para
obtener un nicocdigo de programa
ejecutableProject
window
P j t t
7/28/2019 Presentacion 8051 Parte I
58/86
Project management
Creacin de un nuevo proyecto: 1. Seleccionar New Project desde Project menu para abrir
una New Project dialog box
2. Ingresar el nombre del proyecto en la Project Name box
3. Seleccionar la carpeta para guardar el proyecto(Sugerencia: utilizar una carpeta para cada proyecto)
4. Click OK
5. Luego de oprimido OK (o guardar) aparece la opcin
para seleccionar un dispositivo para el objetivo (target) quese est creando, aqui debe escogerse de la lista elindicado para el proyecto en cuestin (Sugerencia: utilizarATMEL 89C52 que es el utilizado en los kits de desarrollo)
6. Click OK
N P j t
7/28/2019 Presentacion 8051 Parte I
59/86
New Project
P j t t
7/28/2019 Presentacion 8051 Parte I
60/86
Project management
Agregado de archivos al proyecto: En el target creado, se deben agregar el/los archivo/s que
formarn parte del proyecto, esto implica dos operaciones:
Abrir un nuevo archivo
En la entrada de men file oprimirNew, esto abrir unespacio en blanco en la ventana de edicin de cdigo
Guardar el archivo creado con nombre y extensin (a51asm), con la opcin Save As
Agregar el archivo creado al proyecto En la ventana de proyecto, haciendo click con el botn
derecho sobre la carpeta Source Group 1, seleccionarla opcin Add file to group
Seleccionar el archivo creado de la lista y oprimirAdd
A d d hi
7/28/2019 Presentacion 8051 Parte I
61/86
Agregado de archivos
A d d hi
7/28/2019 Presentacion 8051 Parte I
62/86
Agregado de archivos
O i l t
7/28/2019 Presentacion 8051 Parte I
63/86
Opciones para el proyecto
El cuadro de dilogo Options for target se abre
oprimiendo el botn en la barra de herramientas
o click del botn derecho sobre la carpeta Target 1
en la ventana de proyecto Sugerencia: No modificar las opciones establecidas
por defecto, excepto la frecuencia de cristal, y en
las opciones de salida seleccionar la opcin CreateHex File, para que genere el archivo .hex que se
utilizar en el kit de desarrollo
Editor
7/28/2019 Presentacion 8051 Parte I
64/86
Editor
Editor toolbar
Build toolbar
7/28/2019 Presentacion 8051 Parte I
65/86
Build toolbar
Build toolbar
Build project
7/28/2019 Presentacion 8051 Parte I
66/86
Build project
Construir el proyecto significa realizar lospasos necesarios para obtener el programa
ejecutable
Cada proceso involucrado (ensamblado,
enlazado, creacin del .hex) generar un
reporte de salida visible en la output window
Build project
7/28/2019 Presentacion 8051 Parte I
67/86
Build project
Debugger window
7/28/2019 Presentacion 8051 Parte I
68/86
Debugger window
Debugger
7/28/2019 Presentacion 8051 Parte I
69/86
Debugger
Debugger toolbar
Debugger
7/28/2019 Presentacion 8051 Parte I
70/86
Debugger
Distintas opciones para ejecutar un programa
Ejecucin normal (run)
Paso a paso
Por funcin (o subrutina completa)
Hasta terminar la funcin (o subrutina)
Hasta la posicin del cursor
Debugger
7/28/2019 Presentacion 8051 Parte I
71/86
Debugger
Distintas opciones para detener la ejecucin
de un programa
Detencin normal (halt execution)
Breakpoints
Se pueden colocar/retirar breakpoints
durante la edicin del cdigo, los cuales
sern activados en la sesin de debugger
Debugger
7/28/2019 Presentacion 8051 Parte I
72/86
Debugger
Atributos: Muestran sobre la primer columnade la ventana de cdigo el estado de
ejecucin del programa, breakpoints, etc.
Debugger
7/28/2019 Presentacion 8051 Parte I
73/86
Debugger
Watch window: Muestra el valor actual devariables y permite el cambio de los mismos
Memory window: Permite observar el estado
de 2 reas de memoria y cambiar sucontenido
Watch
window
Memory
window
Debugger
7/28/2019 Presentacion 8051 Parte I
74/86
Debugger
Simulacin de perifricos, interrupciones,registros y puertos (pins) de entrada/salida
Simulacin de registros
7/28/2019 Presentacion 8051 Parte I
75/86
Simulacin de registros
Permite observar y/omodificar el estado deregistros internos del
micro-controlador Indica la cantidad de
ciclos de instruccin y eltiempo (en segundos de
acuerdo con el cristalseleccionado) quetranscurrieron desde elcomienzo de la ejecucin
Simulacin E/S
7/28/2019 Presentacion 8051 Parte I
76/86
Simulacin E/S
Permite colocar enestado alto/bajo
cualquiera de los
pins del dispositivoseleccionado
Indica el estado
cuando el programaacta sobre un
determinado puerto
o pin
Simulacin timers/counters
7/28/2019 Presentacion 8051 Parte I
77/86
Simulacin timers/counters
Permite modificar elestado de cuenta,
modo de trabajo, etc.
del dispositivoseleccionado
Indica estado del
temporizador(contador) cuando el
programa lo modifica
Simulacin interrupciones
7/28/2019 Presentacion 8051 Parte I
78/86
Simulacin interrupciones
Permite modificar elestado del sistema de
interrupciones
Indica estado delsistema cuando el
programa lo modifica
Activacin o desactiva-cin de pedidos exter-
nos, pueden hacerse
por los respectivos pins
Simulacin UART
7/28/2019 Presentacion 8051 Parte I
79/86
Simulacin UART
Permite modificar elestado de los registros
asociados a la UART
Indica estado de la UARTcuando se produce una
recepcin/transmisin
Serial window
7/28/2019 Presentacion 8051 Parte I
80/86
Serial window
Permite la emulacin de una terminal parala UART
Modos de edicin ASCII o HEX pueden
ser configurados por un men local
Disassembly window
7/28/2019 Presentacion 8051 Parte I
81/86
Disassembly window
Permite observar en una misma ventanael cdigo fuente y el cdigo objeto del
programa que est siendo depurado
Muy til cuando se programa en lenguajeC y se quiere observar el cdigo que
gener el compilador para una
determinada funcin o bloque
Disassembly window
7/28/2019 Presentacion 8051 Parte I
82/86
Disassembly window
Code coverage
7/28/2019 Presentacion 8051 Parte I
83/86
Code coverage
Muestra el porcentaje de las instruccionesdel programa que han sido ejecutadas
Permite detectar facilmente partes delcdigo que no han sido ejecutadas
Perfomance analyzer
7/28/2019 Presentacion 8051 Parte I
84/86
Perfomance analyzer
Guarda y muestra el tiempo de ejecucinde funciones o bloques del programa
Utilizable para analizar donde el programaconsume ms tiempo de ejecucin
Debugger
7/28/2019 Presentacion 8051 Parte I
85/86
Debugger
IMPORTANTE: Para unavisualizacin correcta de
la ejecucin del programa,
se debe activar la opcinPeriodic Window Update
en la entrada de men
View
Bibliografa recomendada
7/28/2019 Presentacion 8051 Parte I
86/86
Bibliografa recomendada
uv2_v2.pdfKeilVision2 IDE an DebuggerQuick Start
Gs51.pdfGetting Started and Creating
Applications. Keil software A51.pdfMacro Assembler and Utilities. Keil
software
Finalwd.pdfThe final word on 8051. Keilsoftware
01502a01.pdfAP-69 An Introduction to the IntelMCS 51 Single Chip microcomputer family