微机原理与接口技术实验指导(12学时)

更新时间:2023-05-22 13:53:01 阅读量: 实用文档 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

《微机原理与接口技术》

实验讲义 (第四版)

编写:微机原理课程组 单位:信息工程学院 时间:2011年9月

第一章 系统概述

引言 本《实验指导书》适用于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机的用户带来极大方便。

第二章 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 窗口

在此菜单可设置窗口的排列顺序,可打开相应的工作窗口。具体详见中文菜单。

实验1 二进制多位加法运算

一、实验目的

1、熟悉实验系统键盘显示的使用。

2、掌握使用加法类运算指令编程及调试方法。 3、掌握加法类指令对状态标志位的影响。 二、实验内容

计算X+Y+Z=?(X、Y、Z为16位二制数) 三、编程指南

由于本实验是三个十六位二制数相加运算,因此,当X+Y时要考虑用ADC指令,把进位C加到结果的高16位中,当(X+Y)+Z时,再把进位C加到结果的高16位中,本实验设定三个加数0FFFFH,计算结果应为2FFFDH。 四、实验步骤

联机模式:

(1)在PC机和实验系统联机状态下,运行该实验程序,可用鼠标左键单击菜单栏“文件”或工具栏“打开图标”,弹出“打开文件”的对话框,然后打开598k8Asm文件夹,点击S1.ASM文件,单击“确定”即可装入源文件,再单击工具栏中编译装载,即可完成源文件自动编译、装载目标代码功能,再单击“调试”中“连续运行”或工具图标运行,即开始运行程序。

(2)运算结果保留在内存4100H~4102H单元中,点击DJ-8086K软件中存贮器RAM窗口,输入RAM的起始地址4100、4101、4102,单元内容应为FD、FF、02。

脱机模式:

⑴在P.态下,按SCAL键,输入2CA0,按EXEC键。

⑵复位RST键,运算结果保留在内存4100H~4102H单元中,共内容分别为:FD、FF、02,低位在前,高位在后,具体操作方法:输入键 [4100]→[ME]→[NX]

→[NX]。 五、实验程序清单

CODE SEGMENT ;S1.ASM-->BIN ADD ASSUME CS:CODE

ORG 2CA0H ;this is a program of add

START: CLC

MOV SI,4000H ;result in [4100] MOV [SI],0ffffH MOV [SI+2],0ffffH MOV [SI+4],0ffffH MOV AX,0000H

MOV [SI+102H],AX MOV AX,[SI] ADD AX,[SI+2]

ADC [SI+102H],0000 ADD AX,[SI+4] MOV [SI+100H],AX ADC [SI+102H],0000 JMP $

CODE ENDS END START

实验2 求最大值和最小值

一、实验目的

1、学习子程序的定义和调用方法。 2、掌握子程序设计、调试。 二、实验内容

对内存中给定的几个无符号字节数,求其最大值和最小值并在数码管上显示。

三、实验程序框图

四、实验步骤

联机模式:

(1)在内存4000H~4007H中写入任意八个字节的数,按下MON键,返回P状态。

(2)在PC机和实验系统联机状态下,运行该实验程序,可用鼠标左键单击菜单栏“文件”或工具栏“打开图标”,弹出“打开文件”的对话框,然后打开598K8ASM文件夹,点击S7.ASM文件,单击“确定”即可装入源文件,再单击工具栏中编译装载,即可完成源文件自动编译、装载目标代码功能,再单击“调试”中“连续运行”或工具图标运行,即开始运行程序。

(3)数码管显示为:“XX——XX”,最左两位为最大值,最右两位为最小值。

脱机模式:

1、在P.态下,按SCAL键,然后在内存4000H~4007H中写入任意八个字节的数,按下MON键,返回P状态。

2、在P.态下,输入2E70,按EXEC键。

3、数码管显示为:“XX——XX”,最左两位为最大值,最右两位为最小值。 五、实验程序清单

CODE ASSUME

SEGMENT ;S7.ASM,LOOK FOR MAX & MIN CS:CODE

ORG 2E70H ;INPUT DATA 4000H--4007H

START:

JMP START0

PA EQU 0FF20H ;字位口 PB EQU 0FF21H ;字形口 PC EQU 0FF22H ;键入口 BUF DB ?,?,?,?,?,?

data1:

db0c0h,0f9h,0a4h,0b0h,99h,92h,82h,0f8h,80h,90h,88h,83h,0c6h,0a1h

db 86h,8eh,0ffh,0ch,89h,0deh,0c7h,8ch,0f3h,0bfh,8FH

START0: CON1: MAXMIN: CON2: X1: X2: EXIT: DISP: DIS1: MOV SI,4000H

MOV CX,0008H CALL MAXMIN CALL BUF1

CALL DISP

JMP CON1

JCXZ EXIT

PUSH SI PUSH CX PUSH BX MOV BH,[SI] MOV BL,BH

LODSB

CMP AL,BH JNA X1 MOV BH,AL JMP X2

CMP AL,BL

JNB X2 MOV BL,AL

LOOP CON2

MOV AX,BX POP BX POP CX POP SI

RET

MOV AL,0FFH ;00H

MOV DX,PA OUT DX,AL

MOV CL,0DFH ;MOV BX,OFFSET BUF

MOV AL,[BX]

MOV AH,00H PUSH BX

MOV BX,OFFSET DATA1

显示子程序 ,5ms

ADD BX,AX MOV AL,[BX] POP BX MOV DX,PB OUT DX,AL MOV AL,CL MOV DX,PA OUT DX,AL PUSH CX

DIS2: MOV CX,00A0H

LOOP $ POP CX

CMP CL,0FEH ;01H JZ LX1 MOV AL,0FFH ;00H MOV DX,PA OUT DX,AL INC BX

ROR CL,1 ;SHR CL,1 JMP DIS1

LX1: MOV AL,0FFH

MOV DX,PB OUT DX,AL RET

BUF1: MOV BH,AH

CALL ZH MOV BUF+5,AL MOV BUF+4,AH MOV AL,BH CALL ZH MOV BUF,AH MOV BUF+1,AL MOV BUF+2,17H MOV BUF+3,17H RET

;-------------------------------------------------------- ZH: MOV BL,AL

MOV CL,4 ROL AL,CL AND AL,0FH MOV AH,AL MOV AL,BL AND AL,0FH RET

;------------------------------------------------------- CODE ENDS END START

实验3 8255A并行口实验(一)

一、实验目的

1.了解实验箱的组成及实验系统软件的使用。

2.掌握8255A的工作方式、编程原理和与微机的接口方法。 二、实验内容

用8255PA口控制PB口。 三、实验接线图

四、编程指南

⒈ 8255A芯片简介: 8255A可编程外围接口芯片是INTEL公司生产的通用并行接口芯片,它具有A、B、C三个并行接口,用+5V单电源供电,能在以下三种方式下工作: 方式0:基本输入/ 输出方式 方式l:选通输入/ 输出方式 方式2:双向选通工作方式

⒉ 使8255A端口A工作在方式0并作为输入口,读取Kl-K8个开关量,PB口工作在方式0作为输出口。8255端口地址见第一章表“I/O地址分配(二)” 五、实验程序框图

六、实验步骤

1 8255A芯片A口的PA0-PA7依次和开关量输入Kl-K8相连。 2 8255A芯片B口的PB0-PB7依次接Ll-L8。 3 运行实验程序。

七、思考题

1 由8255PA口接发光二极管,PB口接开关,该如何编程?

2 由8255控制发光二极管顺序循环点亮,即“流水灯”过程,该如何编程? 3 利用8255在方式0下工作,令其在PB1和PB2产生如图所示的波形,试编程实现。(将图中的延时时间单位为ms的地方均改为s)

实验4 串行接口和应用

一、实验目的

利用实验机内的8251芯片,实现与PC机通讯。 二、实验内容

(1) 利用实验机内的8253芯片的分频作为8251的收发时钟频率。 (2) 利用实验机内小键盘,每按动一次任一数字键 ,就把该键值通过8251发送给PC机接收,并在PC机屏幕上显示出该键值。 三、实验接线图

图4-1 接线图

四、编程指导

(1) 8251状态口地址:03F9H,8251数据口地址:03F8H; (2) 8253命令口地址:43H,8253计数器#1口地址:41H;

(3) 8255命令口地址:0FF23H,键扫口/字位口:0FF20H,键入口PC:0FF22H,字形口PB:0FF21H;

(4) 通讯约定:异步方式,字符8位,一个起始位,一个停止位,波特率因子为16,波特率为9600;

(5) 计算T/RXC,收发时钟fc,fc=16*9600=153.6K; (6) 8253分频系数:1843.2K / 153.6K=12。 五、实验步骤

(1) 8251单元:T/RXC→OUT1,TXD→EX-TXD,RXD→EX-RXD,JX20→JX17; (2) 8253单元:GATE1→+5V,CLK1→1.8432MHZ; (3) CZ11用户通信口→PC机串口;

(4) 在P.态下,按SCAL键,输入1A00,按EXEC键; (5) 数码管显示8251—1,等待按键,发送键值;

(6) 运行“串口调试助手”,按动小键盘数字键,在PC机屏幕上显示相应的数字,按MON键发送结束,按RST键,返回P.态。 六、实验程序(自己编写)

七、思考题

实验5 8259单级中断控制器实验

一、实验目的

⒈ 掌握8259中断控制器的接口方法。 ⒉ 掌握8259单级中断控制器的应用编程。 二、实验内容

利用8259实现对外部中断的响应和处理,要求按键以后使发光二极管按照每次加1的方式进行亮灭。 三、实验接线图

四、编程指南

⑴ 8259芯片介绍

中断控制器8259A是专为控制优先级中断而设计的芯片。它将中断源优先级排队、辨别中断源以及提供中断矢量的电路集于一片中。因此无需附加任何电路,只需对8259A进行编程,就可以管理8级中断,并选择优先模式和中断请求方式。即中断结构可以由用户编程来设定。同时,在不需要增加其它电路的情况下,通过多片8259A的级联,能构成多达64级的矢量中断系统。

⑵ 本实验中使用3号中断源IR3, “

”插孔和IR3相连,中断方式

为全嵌套、边沿触发、非级联、普通中断结束,中断类型码根据上表分析,每按一次开关触发一次中断请求。此时发光二极管按照加1方式亮灭,延时用软件延时的方式。端口地址见连线图。 五、实验程序框图

IR3中断服务程序:

六、实验步骤

1、按图连好实验线路图。

⑴8259的INT连8088的INTR;⑵8259的INTA连8088的INTA;⑶“

插孔和8259的3号中断IR3插孔相连,“

”端初始为低电平;⑷8259的

CS端接FF80H孔;⑸8255A芯片的PA0-PA7依次和发光二极管L1~L8相连。

2、运行实验程序并观察结果。 七、思考题

1 另由开关K1接IR0,K2接IR1,开关K1拨动使发光二极管从左往右循环点亮一遍,开关K2拨动则使发光二极管从右往左循环点亮一遍,最多实现三重中断嵌套,并可回到断点处继续运行。试编程实现该功能。

2 利用8253每1S产生一次中断请求,送8259的IR3,通过该信号控制使得8255PA口连接的发光二极管每秒加1的方式亮灭。试编程实现该功能。 3 利用8253、8259和数码LED显示器构建一个能准确计时的数字时钟,要求能显示时、分、秒。试编程实现该功能。(显示电路如下图所示,字型口和字位口端口地址分别为FF21H和FF20H)

实验6 定时器/计数器

一、实验目的

⒈ 学会8253芯片和微机接口的原理和方法。 ⒉. 掌握8253定时器/计数器的工作方式和编程原理。 二、实验内容

用8253的0通道工作在方式3,产生方波,其输出作为1通道的输入信号;1通道工作在方式2,产生分频信号。通过2个发光二极管分别观察OUT0和OUT1的输出信号。 三、实验接线图

四、编程指南

⒈ 8253芯片介绍

8253是一种可编程定时/计数器,有三个十六位计数器,其计数频率范围为0-2MHz, 用+5V单电源供电。端口地址为0040H~0043H。

8253的功能用途: ⑴ 延时中断

⑸ 实时时钟 ⑹ 数字单稳

⑺ 复杂的电机控制器

⑵ 可编程频率发生器 ⑶ 事件计数器 ⑷ 二进制倍频器

2,8253的六种工作方式: ⑴ 方式0:计数结束中断

⑷ 方式3:方波频率发生器

⑵ 方式l:可编程频率发生 ⑸ 方式4:软件触发的选通信号 ⑶ 方式2:频率发生器 五、实验程序框图

⑹ 方式5:硬件触发的选通信号

本文来源:https://www.bwwdw.com/article/1hi4.html

Top