实验一 单片机在线仿真器的使用
一.ME-5103 型单片机在线仿真器简介
ME-5103 型单片机在线仿真器用于开发MCS-51和Piliphs80C51系列单片微机的高性能在线仿真器。
1.主要特性
.增强型在线仿真器,支持MCS-51和Piliphs80C51系列单片微机;
.支持ASM-51,PL/M51,C-51源文件文本调试;
.支持Intel HEX, Intel OMF, Metalink格式;
.联接使用IBM-PC调试时,通讯速率可达115.2kbps;
.自带键盘,显示器;
.仿真目标程序目标数据仿真器程序仿真器数据四种存储器仿真区域。
2.仿真存储器空间分配
ME-5103 型单片机在线仿真器提供仿真存储器空间为48k为0000H-BFFFH,可用于仿真用户的程序和数据,仿真器使用监控程序和数据的空间为C000H-FFFFH
用户的程序存储器和数据存储器为:
U6:0000H-1FFFH,8k 基本RAM 6264
U5:2000H-9FFFH,32k 扩展RAM,ROM或EPROM
U4:000H-BFFFH,,8k 扩展RAM,ROM或EPROM
3.仿真模式定义(通过键盘中MAP键循环选择)
读写区域指示(数据)
取指区域指示(程序)
仿真
模式
作用
暗
暗
0
读写区域和取指区域均为仿真器
暗
亮
1
读写区域为用户目标系统,取指区域为仿真器
亮
暗
2
读写区域为仿真器,取指区域为用户目标系统
亮
亮
3
读写区域和取指区域均为用户
下图为仿真器的键盘和显示布局图:
读写区域指示(数据)
取指区域指示(程序)
7
R7
8
DPTR
9
IE IP
A
A PSW
FUNC
FFIS
USER
FFNO
MAP
FILL
RESET
4
R4
5
R5
6
R6
B
B SP
DEC
COMP
HEX
MOVE
HIST
OSFT
MON
1
R1
2
R2
3
R3
C
TM TC
BTOP
BP
BEND
BT
EXEC
STEP
0
R0
F
SC SB
E
TH1TL1
D
TH0 TL0
-
LAST
+
NEXT
TRAC
4.功能健作用定义
[RESET] 复位键
[MON] 监控健
[LAST/-] 上一个单元地址检查/减运算键
[NEXT/+]下一个单元地址检查/加运算键
[TRAC] 跟踪键
[STEP] 单步执行键
[EXEC] 连续执行键
[BP/BTOP] 断点/块首键
[BT/BEND] 断点循环次数/块末键
[COMP/DEC] 块比较/十进制转换键
[MOVE/HEX] 块移动/十六进制转换键
[OFST/HIST] 偏移量计算/历史路径键
[FILL/MAP] 块填充/区域选择键
[FFIS/FUNC] 块寻找与关键字相同单元/用户函数调用键
[FFNO/USER] 块寻找与关键字不同单元/用户功能调用键
5.复位
接通电源上电或按下[RESET]键,均使系统复位。
复位时,若JP4短接,则监控程序初始化8155后转向0000H单元执行程序。
复位时,若JP4开路,则监控程序初始化进入MON状态
(1) 进入监控状态“P”;
(2) 清除断点标志及块操作标志,恢复断点处的数据;
(3) 中断优先寄存器ISP(0F9H)被清零。
有两种复位方式:
(1) 上电复位
监控将系统初始化为仿真区域0方式,即在仿真器内取指和读写(数码管左侧的LED均不亮),CPU片内的RAM为随机数。用户变量指示器定义为显示累加器的内容,数码管右端的两位为显示程序的操作码。
(2) 按下[RESET]键复位
不改变用户已经选择的仿真区域和片内RAM的数据。
6.监控
按下[MON]键,此时用户的现场参数得到保护,通常进入监控状态“P”。
7.输入地址
通过小键盘的数字键即可输入地址,分以下几种形式:
(1) 常用寄存器:1位数字,如R0-R7用0-7键,TH1用E键;
(2) RAM地址:2位数字,如36,(范围为00-FFH,8051的地址小于80H才有效)
(3) RAM和SFR地址:首位为0的3位数字;
(4) 片外RAM地址:4位数字(仿真器读写指示灯决定是仿真器还是目标系统的数据)。
8.检查和修改数据
(1) 根据输入地址的形式,用[NEXT]或[LAST]键,显示对应单元的的数据,地址位于数码管的左方,数据位于数码管的右方并有一位数码闪烁;
(2) 按下一位数字键后,闪烁的数字被修改。当输入两位数字后,该地址单元的数据修改存入;
(3) 按下[NEXT]或[LAST]键,地址增量或减量,重复(2)操作,即能检查或修改下一单元或上一单元的内容。
二.单片机在线仿真器功能键的使用
1.熟悉NEXT, LAST, MON功能键的使用
NEXT, LAST键具有两个作用,一为检查一个单元的内容,二为地址的增量和减量。通过NEXT, LAST, MON键和数字键应用如下:
按键操作
显示器
注释
RESET
P
0214
0214
地址为0214
56
1456
左移为1456
NEXT
1456 XX
检查1456单元的内容
34
1456 34
1456单元的内容改写为34
AB
1456 AB
内容改写为AB
MON
P
返回监控
6
6
寄存器检查和改写
NEXT
6 XX
XX为寄存器R6的内容
NEXT
7 XX
XX为寄存器R7的内容
02
7 02
02存入寄存器R7
NEXT
8 XX XX
寄存器DPTR即DPH,DPL值
MON
P
返回监控
07
07
片内RAM检查和改写
NEXT
07 02
0区R7地址为07H值02
LAST
06 XX
0区R6地址为06H值XX
78
06 78
RAM 06H值改写78H
MON
P
返回监控
089
089
SFR检查和改写
NEXT
089 00
SFR TMOD值00
30
089 30
TMOD值改写为30H
LAST
088 00
SFR TCON值00H
LAST
087 7F
SFR PCON值7FH
LAST
086 FF
SFR未定义值 FFH
MON
P
返回监控
0000
0000
外部RAM检查和改写
NEXT
0000 XX
地址0000值 XX
02
0000 02
值改写为02
NEXT
0001 XX
增量0001 XX
LAST
0000 02
减量
2.熟悉BP, BT, EXEC功能键的使用
BP键用于设置程序中的断点,只有一个,每当设立一个新的断点旧的断点自动清除, BT键用于设置程序断点的循环次数,次数1-256,缺省值为01, 而00为256次。
在已设置断点处按下BP键或在非断点处连按两次BP键度可以清除断点,而RESET键也可清除断点。
EXEC为全速运行键,按下 EXEC键即从当前的程序计数器开始运行程序,如输入4为地址后按下 EXEC键即从该4位地址作为当前的程序计数器开始运行程序。程序运行经过断点时,将显示地址和操作码。
(1)参考程序
地址 机器码 源程序 注释
ORG 0000H
0000 0130 START: AJMP MAIN ;转入主程序
ORG 0030H
0030 7840 MAIN: MOV R0,#40H ;指向低位
0032 7910 MOV R1,#10H ;计数器初值
0034 7400 MOV A,#0
0036 F6 LOOP: MOV @R0,A
0037 04 INC A ;值加1
0038 08 INC R0 ;指针加1
0039 D9FB DJNZ R1,LOOP
003B 80FE HERE: SJMP HERE ;结束后进入无限循环
(2)在IBMPC微机用交叉汇编软件MBUG汇编,产生目标码文件;
(3)在MBUG将目标码文件传送到ME-5103仿真器进行调试;
传送完后可用前述方法检查程序。该程序经过16次循环后进入结束后无限循环,设处于仿真模式0状态,调试操作如下:
按键操作
显示器
注释
RESET
P
复位
0038
0038
地址为0038
BP
0038
0038处设置为断点
0A
0A
BT
0A
0000
0000
运行程序的起始地址
EXEC
0038 08
运行命令执行后在0038H处停止
MON
P
返回监控
40
检查片内RAM的值
NEXT
40 00
40H单元为00H
NEXT
41 01
41H单元为01H
连按8次NEXT后
49 09
49H单元为09H
NEXT
4A XX
4AH单元为XX,循环10次断点
MON
P
片内RAM检查和改写
01
01
设置循环1次断点
BT
01
0000
0000
运行程序的起始地址
EXEC
0038 08
运行命令执行后在0038H处停止
EXEC
0038 08
每按一次继续运行,观察数码管上
...连续15次
方的8个LED,以二进制方式显示
累加器的内容
4.实验报告
写出用ME-5103仿真器汇编操作过程。