2015年微机原理及应用实验指导书
微机原理与接口技术实验讲义
河北师范大学职业技术学院电子系
2015.11
实验目的与要求
一、实验目的
微机原理实验内容共安排了6个实验,其目的是使读者熟悉8086指令系统和掌握汇编语言程序设计的方法,并能利用DEDUG调试工具来调试汇编程序,为读者从事计算机研究与应用工作打下一个坚实的基础。
汇编语言是唯一能够充分利用计算机硬件特性的面向机器的语言。微机接口技术及应用实验共安排了6个实验,是编制有关控制程序的,使8086CPU内部的中断控制器、定时器、并行接口完成相应的工作,借以熟悉机内各接口芯片的工作和使用方法,了解8086CPU的中断和系统功能调用的使用方法。
二、实验要求
(1) 实验前要做好充分准备,包括了解程序流程图、源程序清单、调试步骤、调试方法及对程序结果的分析等。
(2) 上机时要熟悉教学实验设备的使用方法。在程序的调试过程中,有意识地学习和掌握DEBUG程序的各种操作命令,以便掌握程序的调试方法及技巧。
(3) 程序调试完后,须由实验辅导教师在机器上检查运行结果,经教师认可后才算完成。每个实验完成后,应写出实验报告。实验报告的要求如下:①程序说明。用来说明程序的功能、结构和数据结构等。②调试说明。便于学生总结经验,提高编程及调试能力。它包括:调试情况,如上机时遇到的问题及解决办法,观察到的现象及其分析,对程序设计技巧的总结及分析等;程序的输出结果及对结果的分析。②实验的心得体会。
(4) 上机时要遵守实验室的规章制度,爱护实验设备。
实验一数据传送
一、实验目的
1.熟悉8086指令系统的数据传送指令,掌握传送指令的寻址方式。
2.利用DEBUG调试工具来调试汇编程序。
二、实验设备
PC机及相应的软件。
三、实验内容
1、 从3500H内存单元开始建立(0~15共16个数据。程序如图1所示。
图1
实验步骤:
(1)打开PC机电源,进入Windows XP
(2)点击开始,指向运行,在打开窗口键入CMD,(划线部分是实际输入的内容),代表回车键。
(3)在提示符下,输入DEBUG,此命令是调用调试程序DEBUG程序,所幕显示“一”提示符,表示进入DEBUG状态。
(4)输入程序 A命令:(在“一”提示符开始输入程序段)
-A 2000
程序流程图
输入程序过程中,若在Enter前发现本行有错误字符,则可以按←键删除重输;当Enter后,系统提示“eeror”的,地址指针仍旧会停留在当前行,等你重新输入。
输入程序后,可以按以下操作进行反汇编,查看程序:
(5)修改程序:当发现源程序有输入错误时,可做相应的修改,例如;修改2003语句为 MOV CX,000FH的操作如下:
注意:当输入程序出现多语句或少语句时,DEBUG调试工具没有删除和插入功能,修改输入程序的错误,需从出错的源程序的偏移地址IP开始,顺序输入正确的观程序。
(6)运行程序:程序的运行方式有跟踪与显示、设置断点、连续运行方式。
每次运行一条指令就显示行寄存器和8
个标志位的内容以及下一条要执行的指令及地址
IP,重复T就可一条一条地运行整个程序,且到程序结束。
2连续运行命令G ○
-G=2000 2011
用G命令执行程序段,起始地址为2000H,终止地址为20llH,并列出执行后CPU各寄存器的内容和最后一条指令。
如果只用G命令不加地址参数,程序运行的起始地址IP为100H。
该命令方式每次显示128个字节的内容。显示的内容为两种方式:左边为十六进制内容,右边为与十六进制相对应的ASCII码字符,对不可见的字符以“.”代替。
②结果存放在寄存器,用显示、修改寄存器命令R
该命令既能显示又能修改寄存器内容,例如:
(8)退出DEBGG返回DOS。
-Q
2、 用数据传送指令编写程序,将内存3500H单元开始的0—15共16个数传送到3600H单元开始的数据区中,参考程序及流程图如图所示。
实验步骤:
(1)输入程序并检查无误。
(2)G=2l00 2111 ,运行程序。
(3)D3600 ,显示结果是:
3、用PUSH指令将一组数据压入堆栈,通过三种个同的出栈方式出栈,将出栈后数据的变化情况,并将结果填入表中。
(4)当三种出栈方式调试完成后,以第三种出栈程序为准,用单步将堆栈区和SP的内容变化填入表中。
四、预习要求
1.复习8086指令系统中的传送指令,了解传送指令的寻址方式。
2.初步掌握调试程序DEBUG及其使用。
五、实验报告要求
1.写出本实验内容与步骤。
2.整理出运行各程序段运行结果。
3. 小结DEBUG调试工具的使用方法。
实验二汇编语言上机操作
一、实验目的
掌握汇编语言程序编辑、汇编、连接、运行以及利用DEBUG调试程序的方法。
二、实验设备
PC机及相应的软件。
三、实验内容及步骤
1、编辑一个指定的汇编语言源程序,并对其进行汇编、连接和运行。
2、利用DEBUG进行程序调试,掌握常用命令的使用方法,观察运行结果。
3、汇编语言上机过程
D:\>EDIT ABC.asm D:\>MASM ABC;
有语法错,回到EDIT下修改源程序 D:\>LINK ABC;
有错,回到EDIT下修改源程序 D:\>ABC
运行结果错,回到EDIT下修改源程序 或在DEBUG下调试,找原因。 D:\>DEBUG ABC.exe
汇编语言程序举例1
例1 将BL寄存器的内容按二进制形式显示出来 设:(BL)=01010011B 输出显示:01010011
参考程序
code SEGMENT ASSUME CS: code
start: MOV BL, 53H ;设置一个测试53H
MOV CX , 8 ;显示字符个数为8
next: SHL BL , 1 ;将显示位移至CF中 JC one ;CF=1?
MOV DL , 30H ;CF=0,将0的ASCII放在DL中 JMP print
one: MOV DL , 31H ;CF=1,将1的ASCII放在DL中print: MOV AH , 2
INT 21H ;调用DOS功能显示 DEC CX ;循环次数减1 JNZ next ;判断是否结束
MOV AH, 4CH
;返回DOS
INT 21H codeENDS END start
D:\>EDIT ShowBL.ASM编写源程序
D:\>MASM ShowBL.ASM 汇编成ShowBL.obj Microsoft (R) Macro Assembler Version 5.10
Copyright (C) Microsoft Corp 1981, 1988. All rights reserved. 48912 + 447243 Bytes symbol space free 0 Warning Errors 0 Severe Errors
D:\>LINK ShowBL; 连接成ShowBL.exe
Microsoft (R) Overlay Linker Version 3.61
Copyright (C) Microsoft Corp 1983-1987. All rights reserved. LINK : warning L4021: no stack segment
D:\>ShowBL 装载并执行ShowBL.exe 01010011 D:\>
在DEBUG下查看ShowBL.exe的装入情况: D:\>DEBUG ShowBL.exe
- R ;查看当前寄存器内容
AX=0000 BX=0000 CX=001B DX=0000 SP=0000 BP=0000 SI=0000 DI=0000
DS=0B51 ES=0B51 SS=0B61 CS=0B61 IP=0000 NV UP EI PL NZ NA PO NC B353 MOV BL,53 - U CS:0;查看程序
0B61:0000 B353 MOV BL,53 0B61:0002 B90800 MOV CX,0008 0B61:0005 D0E3 SHL BL,1 0B61:0007 7205JB 000E …….
0B61:0017 B44C MOV AH,4C 0B61:0019 CD21 INT 21 ……. -G=0
;执行程序 01010011
;屏幕显示
Program terminated normally -
汇编语言程序举例2
例2 编写完整的汇编语言程序,完成内存数据块传送功能。将某段中的字符串“Hello!”传送到另一段中。
利用变量定义字符串和缓冲区
参考程序 aa SEGMENT ; 数据段1 xx DB 'Hello!’ ; 定义源串 aa ENDS bb SEGMENT ;数据段2 yy DB 6 dup (?) ; 定义目的缓冲区
bb ENDS
cc SEGMENT ;代码段 ASSUME CS:cc, DS:aa, ES:bb start : CLD ;设置传送方向
MOV AX , aa ;DS:SI ←源串首地址 MOV DS , AX LEA SI , xx
MOV AX , SEG yy ;ES:DI ←目的首地址 MOV ES , AX MOV DI , OFFSET yy
MOV CX , 6 ;CX ←串的长度 REP MOVSB ;串传送
MOV AH , 4CH ;调用4CH系统功能,返回DOS
INT 21H
cc ENDS
END start ;指示程序结束和程序入口
D:\>EDIT hello.asm ;编写源程序 D:\>MASM hello.asm;汇编源程序
Microsoft (R) Macro Assembler Version 5.10
Copyright (C) Microsoft Corp 1981, 1988. All rights reserved. 49860 + 421241 Bytes symbol space free 0 Warning Errors 0 Severe Errors
D:\>LINK hello ; ;连接程序
Microsoft (R) Overlay Linker Version 3.61
Copyright (C) Microsoft Corp 1983-1987. All rights reserved. LINK : warning L4021: no stack segment
D:\>hello ; 执行程序 D:\>
D:\>DEBUG hello.exe ;利用DEBUG查看结果 -U ;查看程序代码 129F:0000 FC CLD
129F:0001 B89D12 MOV AX , 129D 129F:0004 8ED8 MOV DS , AX 129F:0006 8D360000 LEA SI , [ 0000 ] 129F:000A B89E12 MOV AX , 129E 129F:000D 8EC0 MOV ES , AX 129F:000F BF0000 MOV DI , 0000 129F:0012 B90600 MOV CX, 0006 129F:0015 F3 REPZ 129F:0016 A4 MOVSB
129F:0017 B44C MOV AH, 4C 129F:0019 CD21 INT 21
„„
-D 129D:0 L20 ;执行程序前,查看源串内容 129D:0000 48 65 6C 6C 6F 21 00 00-00 00 00 00 00 00 00 00 Hello!.......... 129D:0010 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
-D 129E:0 L20 ;执行程序前,查看目的串 129E:0000 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................ 129E:0010 FC B8 9D 12 8E D8 8D 36-00 00 B8 9E 12 8E C0 BF ... ...6........
-
-G ; 执行程序 Program terminated normally
-D ES: 0 1F ; 查看目的串
129E:0000 48 65 6C 6C 6F 21 00 00-00 00 00 00 00 00 00 00 Hello!.......... 129E:0010 FC B8 9D 12 8E D8 8D 36-00 00 B8 9E 12 8E C0 BF .......6........
-D 129D : 0 L50 ; 从源串重新查看
129D:0000 48 65 6C 6C 6F 21 00 00-00 00 00 00 00 00 00 00 Hello!.......... 129D:0010 48 65 6C 6C 6F 21 00 00-00 00 00 00 00 00 00 00 Hello!.......... 129D:0020 FC B8 9D 12 8E D8 8D 36-00 00 B8 9E 12 8E C0 BF .......6........ 129D:0030 00 00 B9 06 00 F3 A4 B4-4C CD 21 09 E8 08 00 03 ........L.!..... 129D:0040 F1 E8 03 00 3C 0D C3 AC-E8 EC F8 75 04 3C 3B 75 ....
-U ;查看程序代码 129F:0000 FC CLD
129F:0001 B89D12 MOV AX , 129D 129F:0004 8ED8 MOV DS , AX 129F:0006 8D360000 LEA SI , [ 0000 ] 129F:000A B89E12 MOV AX , 129E 129F:000D 8EC0 MOV ES , AX 129F:000F BF0000 MOV DI , 0000 129F:0012 B90600 MOV CX, 0006 129F:0015 F3 REPZ 129F:0016 A4 MOVSB
129F:0017 B44C MOV AH, 4C 129F:0019 CD21 INT 21
实验三 汇编语言程序上机调试
一、实验目的
掌握循环结构程序设计的方法,熟练汇编语言程序上机调试的方法和过程。 二、实验设备 PC机及相应的软件。 三、实验内容
编写程序
要求比较两个字符串STRING1和STRING2所含字符是否相同,若相同则显示 “MATCH”,若不相同显示“NOMATCH”。 四、实验步骤
编辑源程序,经汇编、链接、执行、调试后,上机完成上述任务,并将程序及运
行结果写在报告中。
实验四JPWJ-1教学系统认识实验
一、实验目的
掌握TDN86/51教学系统的基本操作。 二、实验设备
JPWJ-1教学系统实验箱一台。 PC机1台 三、实验内容
计算X+Y+Z=?(X、Y、Z为16位二制数) 编程指南
由于本实验是三个十六位二制数相加运算,因此,当X+Y时要考虑用ADC指令,把进位C加到结果的高16位中,当(X+Y)+Z时,再把进位C加到结果的高16位中,本实验设定三个加数0FFFFH,计算结果应为2FFFDH。 四、实验步骤 1、系统认识实验
(1)使用串行通讯电缆将实验系统与PC机相连。
(2)双击PC机桌面上的DJ86PCI快捷方式图标,进入窗口操作界面。选择对应的串行口号。
(3) 鼠标点击文件下拉菜单的新建进入编辑状态。输入并保存源程序,扩展名为L1.ASM。(4)再单击工具栏中编译装载,即可完成源文件自动编译、装载目标代码功能,再单击“调试”中“连续运行”或工具图标运行,即开始运行程序。
(5)运算结果保留在内存4100H~4102H单元中,点击DJ-8086K软件中存贮器RAM窗口,输入RAM的起始地址4100、4101、4102,单元内容应为FD、FF、02。 参考程序
CODE ASSUME
START:
SEGMENT ;S1.ASM-->BIN ADD CS:CODE
ORG 2CA0H ;程序入口地址 CLC
MOV SI,4000H ;被加数首址 MOV [SI],0ffffH ;输入被加数 MOV [SI+2],0ffffH ; 输入加数1 MOV [SI+4],0ffffH ; 输入加数2
MOV AX,0000H ;AX清零
MOV [SI+102H],AX ;存结果单元4102清零 MOV AX,[SI] ;取被加数
ADD AX,[SI+2] ;被加数+加数1 ADC [SI+102H],0000 ;带进位加 ADD AX,[SI+4] ;连加加数2 MOV [SI+100H],AX ;存结果低位 ADC [SI+102H],0000 ;存结果高位 JMP $
;结束
CODE ENDS END START
2、系统操作练习
将内存3500H单元开始的0-15共16个数传送到3530H单元开始的存储区中。参考程序
CODE SEGMENT ASSUME CS:CODE ORG 1000H START: MOV AL,0 MOV CX,16
MOV SI,3500H L1: MOV [SI],AL
INC AL
INC SI
LOOP L1 MOV SI,3500H MOV DI,3530H MOV CX,0010H A1: MOV AX,[SI] MOV [DI],AX INC SI INC SI INC DI INC DI
DEC CX JNZ A1 A2: JMP A2 CODE ENDS END START 实验步骤:
(1)编辑程序并检查无误后,经编译后装入系统。 (2)运行以上程序,按实验系统的复位键返回监控状态。(3)查看3500与3530显示结果并记录。
实验五 8253定时/计数器应用实验
一、实验目的
1、熟悉8253在系统中的典型接法。
2、掌握8253的工作方式及应用编程。
二、实验设备
1、
2、 JPWJ-1教学实验系统一台。 PC机1台。
三、实验内容
1、8253计数器应用实验
编写程序
设8253的计数器0、计数器1、计数器2以及控制口地址为40H、41H、42H、43H。如果将计数器0设置成方式3,计数器1设置成方式3,计数器0的输出OUT0作为计数器1时钟输入,CLK0连接T2(1MHz),计数器1的OUT1输出20Hz方波,并将OUT2连接L8。观察LED的变化。
如果将CLK0连接T1(2MHz)计数器1输出20Hz,并OUT2连接L8。比较程序有哪些的变化。
实验线路:自己设计
CODE SEGMENT
ASSUME CS:CODE ORG 1000H
START:
CODE
ENDS START END
2 、 8253应用于电子发声实验
实验内容:
利用实验系统的1.8432MHZ作为8253的时钟信号,音符表的内容对应8253的时间常数,让8253的计数器1工作于方式3输出相应的音调送扬声器产生音乐。
实验线路:
参考程序:
STACK
SEGMENT 64 DUP(?) STACK DW
STACK
DATA
TABL ENDS SEGMENT DB 33H, 33H, 3DH, 33H, 26H, 26H, 26H, 26H, 2DH, 2DH, 26H, 2DH, 33H
DB 33H, 33H, 33H, 33H, 33H, 4DH, 45H, 3DH, 3DH, 3DH, 45H, 4DH, 45H
DB 45H, 45H, 45H, 45H, 45H, 45H, 45H, 33H, 33H, 3DH, 33H, 26H, 26H
DB 26H, 28H, 2DH, 2DH, 26H, 26H, 33H, 33H, 33H, 33H, 45H, 3DH, 39H
DB 39H, 39H, 52H, 4DH, 4DH, 4DH, 4DH, 4DH, 4DH, 4DH, 4DH, 2DH, 2DH
DB 26H, 26H, 26H, 26H, 26H, 26H, 28H, 28H, 2DH, 28H
,
26H, 26H, 26H
DB 26H, 2DH, 28H, 26H, 2DH, 2DH, 33H, 3DH, 4DH, 45H, 45H, 45H, 45H
DB 45H, 45H, 45H, 45H, 33H, 33H, 3DH, 33H, 26H, 26H, 26H, 28H, 2DH
DB 2DH, 26H, 2DH, 33H, 33H, 33H, 33H, 33H, 33H, 45H, 3DH, 39H, 39H
DB 39H, 52H, 4DH, 4DH, 4DH,
00H
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA
ORG 1000H
START: MOV AX,DATA
MOV DS,AX
MOV BX,OFFSET TABL
MOV AL,[BX]
MOV AH,00H
A1: MOV DL,25H
MUL DL
PUSH AX
MOV AL,0B7H
OUT 43H,AL
POP AX
OUT 41H,AL
MOV AL,AH
OUT 41H,AL
INC BX
MOV AH,00H
MOV AL,[BX]
TEST AL,0FFH
4DH, 4DH,4DH, 4DH,4DH,
JZ A3 MOV CX,77FFH
PUSH AX
POP AX
LOOP A2 A2:
JMP A1
MOV BX,OFFSET TABL
MOV AL,[BX]
MOV AH,00H
JMP A1 A3:
CODE ENDS
END START
实验步骤:
(1)接线:8253的CLK1连接系统的PCLK(1.8432MHZ);OUT1连接扬声器的输入端SPK+;GATE2接高电平。
(2)编辑程序并检查无误后,经汇编、连接后装入系统。
(3)运行程序,即可听到扬声器发出的声音。
实验六 8255并行接口应用实验
一、实验目的
1、掌握8255的各种工作方式及其应用。
2、熟悉在系统的实验单元上连接实验电路。
二、实验设备
1、JPWJ-1教学实验系统一台,PC机1台。
2、连接导线(排线)若干。
三、实验内容
8255的端口地址是:
PA口:0FF28H; PB口:0FF28H; PC口:0FF2AH; 控制口:0FF2BH
1、8255接口应用实验(1)
实验内容:
设8255的端口A工作于方式0,作为输出口,端口B工作于方式0,作为输入口。由8255端口B输入一组开关状态信号,8255端口A输出开关的状态信号至一组发光二极管显示。
实验线路:
参考程序:
STACK1
DW
SEGMENT STACK 64 DUP(?)
STACK1
CODE
ENDS SEGMENT ASSUME CS:CODE ORG 1000H
MOV AL,82H
MOV DX,0FF2BH START:
OUT DX,AL
A1: MOV DX,0FF29H
IN AL,DX
DEC DX
OUTDX,AL JMP A1
ENDS CODE
END START
四、实验步骤
(1)接线:8255的PA0--PA7连接发光二极管的接线端L1—L8;8255的PB0--PB7连接开关的接线端K1—K8。
(2)编辑程序并检查无误后,经编译后装入系统。
(3)运行程序,拨动开关,观察发光二极管的显示与开关状态的对应情况。
结果:
2、8255接口应用实验(2)
实验内容:
让8255的端口A工作于方式0,作为输出口,端口B工作于方式1,作为输入口,则端口C的PC2为选通信号输入端STBB,PC0为中断请求信号输出端INTRB。由8255端口B输入一组开关状态信号,8255端口A输出开关的状态信号至一组发光二极管显示。当B口数据就绪后,发STBB信号,采用查询方式,CPU读取端口B的数据并送端口A输出显示。
实验线路:
五、实验步骤
(1)接线:8255的PA0PA7连接发光二极管的接线端L1L8;8255的PB0PB7连接开关的接线端K1K8;PC2接开关ANO的负脉冲信号输出端。
(2)自己编写程序并检查无误后,经编译后装入系统。
(3)运行程序,拨动开关K1K8,然后按动开关ANO,观察发光二极管的显示与开关状态的对应情况。
程序是:
结果:
附录一 DEBUG命令及操作
1.A 启动小汇编程序
命令格式:A[段址:][偏移量] 。
A 段址:偏移量--从段址:偏移量构成的实际地址单元起填充汇编程序的目标码。
A 偏移量--从默认的段址:偏移量构成的实际地址单元起填充汇编程序的目标码。
A——从默认段址:默认偏移量构成的实际地址单元起填充汇编程序的目标码。 需要说明的是,对汇编语言的输入有如下规定:
(1)数字一律为不带H后缀的十六进制数;
(2)[m]类操作一定留在[ ]之前标注:W(字)或B(字节),如:
MOV D[2010],AL
MOV W[2010],AX
2.B 设置断点
在系统提示符下键入B,系统提示[i]:等待用户给出断点地址,回车后,系统继续提示[i+1]:。若直接用回车响应则结束访命令。注意:系统允许设置至多10个断点,并且只能通过按动复位开关或重新上电来实现清除所设断点。
3.D 显示--段地址单元中的数据
命令格式:D [段址:]起始地址,[尾地址]
D [段址]:偏移地址。
4.E 编辑指定地址单元中的数据
命令格式:E[段址]:偏移量
该命令每次只能显示或修改一字节数据,进入E命令状态就可通过“空格”键使地址向高地址方向移动,而“—”键使地址向低地址方向移动,同时也可直接填入新数据来修改地址单元中的内容。若直接用回车键响应,则退出E命令。
5.G 连续运行程序
命令格式:G=[[段址:]偏移量.
GB:[[段址:]偏移量
其中G命令表示无断点连续运行由段址:偏移量指定的入口程序,而GB格式表示带断点连续运行由段址:偏移量指定入口的程序。
6.M 数据块搬移
命令格式:M[段址:]源起始址,尾址 [目标段址]目标起始址
执行该命令可以实现整块数据区的搬移。
7.R 寄存器显示与修改
命令格式:R或R寄存器名。
R命令使屏幕显示:
CS=XXXX,DS=XXXX,I P=XXXX,AX=XXXX,F=XXXX
命令格式:R寄存器名。
如:R AX 即显示AX寄存器的内容。
8.T 单步运行指定的程序
命令格式:T[段址:偏移量]
单步运行的程序入口地址由段址:偏移量来指定。每次执行完毕,系统将显示CS、IP、AX的内容到显示器上,如T0000:2000表示从0000:2000H地址起单步执行一条指令语句。
附录二 JPWJ-1实验箱
第一章 系统概述
引言 本《实验指导书》适用于DJ系列8086/88微机实验开发系统,本书就DJ-598K实验开发系统的8086部分作详细介绍,其它机型均可参考。在使用DJ系列单片机、微机实验开发系统之前,请务必先阅读本章内容,以便对实验系统的硬件结构、硬件信息有个全面了解,对后面实验有必不可少的帮助。
1.1 系统主要特点
1、598K是集51、96、8088(以下简称88)三大系列CPU于一体的三合一实验系统。内置5196仿真器和8086实验系统。该系统以8086实验系统作为基板,自成一体,可单独作为8086微机原理和接口实验使用,也可分别叠插51或96CPU卡,构成51/96单片机实验开发系统,598K系统结构紧凑,资源充分共享,无总线开关切换,自动识别CPU的类型。
2、8086实验系统采用主频为14.7MHZ的8088CPU为CPU,并以最小工作方式构成系
统。
3、配有二片61C256静态RAM构成系统的64K基本内存,存放用户程序/数据,地
址范围为00000H-0FFFFH,其中00000H-00FFFH监控占用。
配有二片W27C512 EEPROM(64K),EP1存放监控程序, 地址范围F0000H-FFFFFH;EP2存放实验程序,为实验系统独立运行时下载实验程序提供方便。
4、自带键盘、显示器,能独立运行,为实验程序调试带来方便。
5、配备Windows/XP仿真调试软件,支持机器码、汇编、C等三种语言的开发和调
试。
6、提供标准RS232异步通讯口, 以连接IBM-PC机。
7、配有各种微机常用I/O接口芯片,定时/计数接口芯片8253、A/D转换接口芯片
0809、D/A转换接口芯片0832、中断控制器8259、键盘显示接口8279、并行I/O接口芯片8255、通讯接口芯片8250、8251、485和DMA控制器8237等。
8、 配备键盘、数码显示、发光二极管显示、开关量、LED16×16、LCD12864、温
度压力、步进电机、直流电机、扬声器等输入输出设备。
9、带有脉冲发生器、计数器电路、单脉冲发生器等常用电路。
10、可以单步、断点、全速调试各实验程序。
11、内置稳压电源,为实验提供+5V/3A、±l2V/0.5A直流稳压电源。
12、使用环境:环境温度0~+40℃,无明显潮湿,无明显振动碰撞。
1.2 系统资源分配
8088有1兆存储空间,系统提供用户使用的空间为00000H-0FFFFH, 用于存放、
调试实验程序。具体分配如下: ⑴存贮器地址分配
⑵I/O地址分配(一):
I/O地址分配(二):
监控占用00004H-0000FH作为单步(T)、断点(INT3)、无条件暂停(NMI)中断矢量区, 用户也可以更改这些矢量, 指向用户的处理, 但失去了相应的单步、断点、暂停等监控功能。
F0000H-FFFFFH监控程序区系统占用。 1.3系统配置
系统内含串行通讯和键盘显示监控的全部软硬件设施,典型配置如下: ⑴主机板+PC机 ⑵主机板
二种配置的使用特点如下:
配置一:主机板和 PC机通过RS232串行口相连。这种配置形式可以充分利用PC机的软硬件资源,实现源程序的编辑、汇编和链接和调试。实验程序源文件(·ASM)在随机光盘598K8ASM文件夹,你可以利用PC机的键盘显示等输入输出设备完成各种软硬件实验。
配置二:为最经济型配置,它不需要和PC机联机,自成一体,通过一组键盘命令完成所有软硬件实验,每个实验程序固化在实验监控中。这种配置为没有PC机的用户带来极大方便。
第二章 系统组成和结构
8086(部分)实验系统由8088控制单元、实验单元、开关电源和DJ8086K集成调试软件组成。8088控制单元由8088CPU、CPLD(1032)、监控EP1(27512)、内存RAM1,2和键盘显示电路组成。实验单元采用一体化、分模块设计,结构合理清晰。 2.1 系统接口定义
(1)CZ11:用户实验通讯接口;
图2-1
(2)CZ4:打印接口;
图2-2
(3)JX0,JX17为系统提供的数据总线接口;
图2-3
(4)CZ7:系统提供的扩展接口;
图2-4
(5)JX12、JX14:液晶显示接口。
图2-5-1
LCD1602引脚定义: 通
过JX12、JX14接口,DJ8086系列实验仪可以驱动一个标准的点阵字符液晶显示屏(16*1行、16*2行、16*4行)等,引脚信号如下图:
LCD12864引脚定义:
通过JX12、JX14接口,DJ8086系列实验仪可以驱动显示一个标准的点阵液晶显示屏(128*64)等,点阵LCD液晶显示屏通用接口J12864的20个引脚信号的管脚定义如表2.2所示。
表
(6)开关及跳线:
JK:为键盘/显示选择开关。JK置系统,键盘/显示选择系统配置的8255接口芯片,
进入监控状态;JK置外接,由用户选择自定义的I/O接口芯片控制。
KB6:为通信选择开关。KB6置59,选择51/96单片机系统和PC机通信;KB6置88,选择8086系统和PC机通信(单8086系统无KB6)。
JXT:为ISP单元晶振选择跳线器。跳线器短接XT,锁紧插座18,19脚和晶振源相连,反之,锁紧插座18,19脚和晶振源断开。(适合机型:DJ598K)
JF:为仿真选择开关,左边为598仿真,右边为PCI/EDA仿真。(适合机型:DJ598PCI) 2.2 系统硬件组成
(1)LED发光二极管指示电路:实验台上包括16只发光二极管及相应驱动电路。
见图2-6,Ll-L16为相应发光二极管驱动信号输入端,该输入端为低电平“0”时发光二极管亮。(箱式实验机简化为12只发光二极管)
图2-6
(2)逻辑电平开关电路:见图2-7。实验台上有8只开关Kl-K8,与之相对应的K1-K8
各引线孔为逻辑电平输出端。开关向上拨相应插孔输出高电平“l”,向下拨相应插孔输出低电平“0”。
图2-7
(3)单脉冲电路:实验台上单脉冲产生电路如图2-8,标有“
”和“
”
的两个引线插孔为正负单脉冲输出端。AN0为单脉冲产生开关,每拨动一次来
回产生一个单脉冲。
图2-8
(4)分频电路:该电路由一片74LS393组成,见图2-9。T0-T7为分频输出插孔。
该计数器在加电时由RESET信号清零。当脉冲输入为8.0MHZ时,T0-T7输出脉冲频率依次为4.0MHZ,2.0MHZ,1.0MHZ,500KHZ,250KHZ,125KHZ,62500HZ,31250HZ。
图2-9
(5)脉冲发生电路:实验台上提供8MHZ的脉冲源,见图2-10,实验台上标有8MHZ
的插孔,即为脉冲的输出端。
图2-10
(6)485接口电路:
图2-11
(7)系统通讯接口电路
图2-12
8)数码管显示电路
图
2-13
(
(9)键盘电路
图2-14
第三章系统安装与使用
8086实验系统安装与使用 1、键盘、显示设置:
JK(开关)置‘系统’:键盘/显示接口选择系统配置的8255接口芯片,进入监控状态。
2、KB6:通讯选择开关,KB6开关拨向88一侧(单8086实验仪无KB6),选择PC机和8086系统通讯。将随机配送的串行通讯线,一端与实验仪的RS232D型插座CZ1相连,另一端与PC机COM1或COM2串行口相连。 3、不插或卸掉已装的CPU卡(单8086实验仪无CPU卡安装、插座),接通实验系统电源,+5V LED指示灯应正常发光,实验仪数码管应显示闪动P.,说明实验仪初始化成功,处于待命状态。(否则应及时关闭电源,待修正常后使用) 4、JF:为仿真选择开关,选择左边为598仿真。(适合机型:DJ598PCI) 5、打开PC机电源,执行DJ8086K的集成调试软件,关于该软件的详细说明请参阅《第五章DJ8086K实验系统与PC机联机操作》。
第四章键盘监控使用简介
4.1 引言
本章详细叙述键盘监控程序的功能和操作方法。 系统一经接通电源,数码管上显示监控提示符“P.”。 4.2 键盘显示
⑴ 系统配备6位LED显示器,左边4位显示地址,右边2位显示该地址内容。 ⑵ 系统具有24个注塑键盘,左边l6个是数字键,右边8个是功能键。 在键盘监控状态下用户可以通过一组键命令完成下列操作 · 读写寄存器内容 · 读写存储器内容 · EPROM传送 · 断点设置/清除
· 通过单步、断点、连续等功能来调试运行实验程序。 4.3 功能键操作说明一缆表
4.4 总操作过程
8086十六位微机实验系统上电总清以后, 显示器上显示监控提示符“P.”,各寄存器的初始化值如下:
SP=0683H,CS=0000H,DS=0000H,SS=0000H,ES=0000H,IP=l000H,FL=0000H 注意: ·所有命令均在提示符“P.”状态输入。 ·在键盘监控状态,段地址缺省值为0000H。 4.5 监控程序命令及操作
⑴ 存贮器单元内容显示修改
操作:××××ME即在提示符“P.”下,先输入四位存贮单元地址, 再按ME键,显示器左边4位显示地址,右边2位显示该单元的内容。此时
·按NX键使地址加1再显示。 ·按LS键使地址减l再显示。
·键入十六进制数据,则将改写现行地址单元的内容。
·按MON键则返回监控,显示提示符“P.”。
⑵ 寄存器内容显示修改
操作:×RG即在“P.”提示符下,先输入寄存器代号, 再按RG键,显示器右边4位显示寄存器中内容,左1、2位显示寄存器名。此时:
·按NX键,则依次循环显示下一个寄存器中的内容。
·按LS键,则依次显示上一个寄存器中的内容。
·输入十六进制数字, 则该寄存器中的内容被修改。
·按MON键则返回监控,显示提示符“P.”。
⑶ EPROM传送
操作:在提示符“P.”状态下,按SCAL键,开始EPROM传送,把EPROM中1000H~FFFFH内容传送到相应的内存中,传送时数码管 显示闪动的“——”,传送完毕返回监控,显示提示符“P.”。
⑷ 单步运行
操作:有三种状态都可以进入单步操作(段地址固定为0000H)
·在监控提示符“P.”状态下,按STEP键,从默认的起始地址IP=1000H单元开始单步运行一条指令语句。
·在存贮器单元读写状态(即左边4位显示存贮器地址,右边2位显示存贮器单元内容)下,从当前存贮器地址开始单步运行一条指令语句。
·先输入四位起始地址,再按STEP键,则从输入的起始地址开始运行一条指令语句。每运行一条语句,显示器显示下一条指令语句的地址及其内容。
⑸ 连续运行
操作:有三种状态可以进入连续运行
·在监控提示符“P.”状态下,按EXEC键,从默认起始地址CS=0000H,IP=1000H开始连续运行用户程序。
·在存贮器读写状态下,按EXEC键,从现行存贮器地址开始(CS=0000H)连续运行用户程序。
·先输入4位起始地址,再按EXEC键,则从输入的起始地址开始连续运行用户程序(CS=0000H)。
要想从运行用户程序返回监控, 可以按主机RST键, 则重新进入监控状态,初始化部分寄存器。
⑻ 断点运行(默认段地址CS=0000H)
操作:××××F1,××××EXEC,即在提示符“P.”状态下,输入4位断点地址,按F1键,再输入4位起始地址,按EXEC键,程序从起始地址开始运行,显示器显示“「”执行符。当程序运行到断点地址处会自动停下来,并显示断点地址和内容,同时保护所有寄存器的值。
第五章 8086K实验系统与PC机联机操作
5.1 DJ-8086k软件概述
⑴ 该软件适用于DJ-8086K、DJ-8086KP、DJ-598K等实验仪。
⑵ 该软件运行环境:该软件适宜在安装Windows98/2000/XP操作系统的PC机上
运行。
5.2 DJ-8086k软件安装
运行随机光盘上“DJ-8086k.EXE”安装文件,根据提示完成软件安装,然后双击桌面上‘DJ-8086k’快捷图标,即可运行DJ-8086k软件。
5.3 DJ-8086k软件启动和联机
5.3.1启动和联机
双击桌面上‘DJ-8086k’快捷图标,即可运行DJ-8086k软件,屏幕显示DJ-8086k软件的工作窗口,底边状态栏由“下位机没有连接„”变成“连接上下位机”,说明联机成功,否则会弹出对话框提示:“下位机没有连接„”,此时单击“OK”,实验系统和PC机处于脱机状态,然后用户根据连接硬件实际情况来设定COMl或COM2,设定方法如下:依次单击菜单栏:“设置(X)、通讯口设置(Z)、COM1或COM2”确定,然后点击‘打开端口’,状态设定后,系统会自动检测连接。如果此时确定端口正确,但系统仍然没有连接,可按以下两种方法解决:(1)单击工具栏上的“重新连接”按钮,即可联机;(2)复位实验系统,使得数码管上显示监控提示符“P.”, 然后关闭DJ-8086k软件,重新运行,故障即可排除。
5.3.2 联机失败原因及解决办法
⑴ 实验系统与PC机没有连接;
⑵ 实验系统电源没有打开;
⑶ 串口实际位置与软件设置不一致;
⑷ 通讯开关位置不正确, 检查实验系统各状态设置开关是否正确;
⑸ 软件有病毒;
⑹ 实验系统或PC机处于非正常状态。
对于⑴⑵⑷⑸的错误,只要在硬件上检查一下,或用杀毒软件清毒一下即可:如文件已被破坏或需软件升级,可到本公司网站下载,网址:WWW.QD-DJ.CN。对于第⑶种错误,重复5.3.1操作,对第⑹种错误,联机之前先按一下实验系统RST复位按钮,使实验系统处于P态, 否则说明实验系统不正常,应送当地销售部门或返厂维修。如PC机工作失常也会引起联机失败,可关闭DJ-8086k软件,重新运行或调换PC机试一下。
5.4 DJ-8086k软件主窗口
① 顶部为菜单栏和工具栏, 提供调试全部命令和功能。
② 中间部分为工作窗口区,提供软件调试、寄存器、标志位、存储器、汇编代码对照、编译信息显示等窗口。
③ 底部为状态栏,提示软件联机状态等信息。
5.5 菜单栏和工具栏命令简介
工具栏使用:只要移动鼠标,指向工具栏中选定的图标,即会提示该图标所执行的命令。
5.5.1 文件菜单栏
● 新建文件
单击菜单栏“文件”或工具栏“新建”图标,即会建立一个新的源程序编辑窗口,此时可在此窗口编辑、输入源程序。
●F3打开文件
单击菜单栏“文件”或工具栏“打开”图标,弹出“打开文件”的对话框,然后选择要装入的源文件,单击“确定”即可装入源文件。
● 关闭
单击菜单栏“文件”下的“关闭”即可关闭源程序编辑窗口。
● 保存
单击菜单栏“文件”下的“保存”或按CTRL+S,即可保存文件。
● N建立新文件
分别单击“F文件”、“建立新文件”即可创建新文件,再选择“换名存盘”填入所存文件名即可。
● 另存为
单击菜单栏“文件”下的“另存为”,可弹出另存为对话框,在此可选择新的文件名和保存文件夹,单击“保存”完成保存操作。
● 退出
依次单击“文件”、“退出”或单击菜单栏上的最后一个门形按钮“关闭按钮”即可退出DJ-8086k软件调试环境。
5.5.2 编辑菜单栏
5.5.3 调试菜单栏
● 编译装载F9
打开源文件,依次单击:调试”\“编译装载F9”或工具栏上的编译装载图标,状态栏会提示正在编译、编译成功、正在装载数据、装载数据结束,几秒钟后便会弹出‘源文件调试窗口’,如编译出错,会提示错误信息,待修改源文件正确后,重新编译装载即可。
● 连续运行
单击菜单栏“调试”下的“连续运行”或单击工具栏的连续运行图标,即全速连续运行程序。
● 程序单步
单击菜单栏“调试”下的“程序单步”或单击工具栏的程序单步图标,即可单步运行程序。
● 重新连接
可单击菜单栏中“重新连接“,也可单击工具栏的”重新连接“图标,即可重新连接上下位机。
● 复位
菜单栏中“复位”无效,可单击工具栏的“复位”图标,即可复位软件,寄存器置初值,指令指针返回到程序首地址。
5.5.4 设置
● 单击“设置”下的“通讯口设置”或工具栏上的“通讯口设置”即可打开“通讯设置”对话框,在此可设置端口。
5.5.5窗口
在此菜单可设置窗口的排列顺序,可打开相应的工作窗口。具体详见中文菜单。
第六章实验指导
实验说明
本章是为8086十六位微机实验系统编写的详细实验指导,系统上提供的全套实验是为《微机原理和接口》课程配置的。手册中详细叙述了各实验的实验目的、实验内容、实验线路原理图、实验步骤、实验程序框图和程序清单,减轻和免除了主讲教师和实验辅导教师为设计、准备、调试实验线路和实验程序所需的工作量,节约了宝贵的时间。书中所有软硬件实验都己经过调试运行。需要特别说明的三点是:
一、所有实验程序用两种方式存放:其一放在随机光盘中,源程序(.ASM)在598K8ASM目录下;其二源程序的目标代码存放在实验监控EP2中,各个实验程序在EPROM中的存放入口地址详见附表。
当选择主板+PC系统配置时,你既可以运行存放在EPROM中的实验程序,也可以运行598K8ASM目录下的实验程序。
当你选择主板这种系统配置时,你可以通过系统自带的键盘显示输入各种命令运行实验监控中的实验程序,显示实验结果,完成各个实验,这种配置为没有PC机的用户带来极大方便。
二、EPROM内的实验程序通过EPROM传送命令把EPROM中内容传送到内存才能运行。(按下实验系统键盘上的SCAL键,即可把EPROM中的内容传送到内存RAM、或按下DJ-8086K软件工具栏上的“读EPROM到内存RAM”图标,完成传送。)
三、所有实验都是相互独立的,次序上也没有固定的先后关系,在使用本系统进行教学时,教师可以根据本校(院)的教学要求,选择相应的实验。
对同一问题的解决办法往往不是唯一的,我们欢迎用户在使用本系统过程中提出最为优秀的实验方案,并对本系统提出改进意见。
四、各实验原理图中的粗黑线表示在实验时需要连接的线。
五、以下实验请严格按照“实验步骤”来操作,操作次序不要颠倒。