微机系统与接口技术实验指导书不含汇编打印精简本.docx

上传人:b****6 文档编号:7920041 上传时间:2023-01-27 格式:DOCX 页数:60 大小:1MB
下载 相关 举报
微机系统与接口技术实验指导书不含汇编打印精简本.docx_第1页
第1页 / 共60页
微机系统与接口技术实验指导书不含汇编打印精简本.docx_第2页
第2页 / 共60页
微机系统与接口技术实验指导书不含汇编打印精简本.docx_第3页
第3页 / 共60页
微机系统与接口技术实验指导书不含汇编打印精简本.docx_第4页
第4页 / 共60页
微机系统与接口技术实验指导书不含汇编打印精简本.docx_第5页
第5页 / 共60页
点击查看更多>>
下载资源
资源描述

微机系统与接口技术实验指导书不含汇编打印精简本.docx

《微机系统与接口技术实验指导书不含汇编打印精简本.docx》由会员分享,可在线阅读,更多相关《微机系统与接口技术实验指导书不含汇编打印精简本.docx(60页珍藏版)》请在冰豆网上搜索。

微机系统与接口技术实验指导书不含汇编打印精简本.docx

微机系统与接口技术实验指导书不含汇编打印精简本

微机系统与接口技术

实验指导书

            李鹤喜  张健  金旺春 

五邑大学计算机学院

2012-5

目录

目录I

0、系统认识实验2

一、8255并行接口实验7

二、8251串行接口应用实验12

三、8254定时/计数器应用实验22

四、8259中断控制实验27

五、A/D转换实验35

六、D/A转换实验38

七、键盘扫描及显示设计实验41

八、电子发声设计实验46

0、系统认识实验

0.1实验目的

掌握TD系列微机原理及接口技术教学实验系统的操作,熟悉Wmd86联机集成开发调试软件的操作环境。

0.2实验设备

PC机一台,TD-PITE实验装置或TD-PITC实验装置一套。

0.3实验内容

编写实验程序,将00H~0FH共16个数写入内存3000H开始的连续16个存储单元中。

0.4实验步骤

1.运行Wmd86软件,进入Wmd86集成开发环境。

2.根据程序设计使用语言的不同,通过在“设置”下拉列表来选择需要使用的语言和寄存器类型,这里我们设置成“汇编语言”和“16位寄存器”,如图0-1、图0-2所示。

设置选择后,下次再启动软件,语言环境保持这次的修改不变。

本章选择16位寄存器。

图0-1语言环境设置界面

图0-2寄存器设置界面

3.语言和寄存器选择后,点击新建或按Ctrl+N组合键来新建一个文档,如图0-3所示。

默认文件名为Wmd861。

图0-3新建文件界面

4.编写实验程序,如图0-4所示,并保存,此时系统会提示输入新的文件名,输完后点击保存。

图0-4程序编辑界面

5.点击

,编译文件,若程序编译无误,则可以继续点击

进行链接,链接无误后方可以加载程序。

编译、链接后输出如图0-5所示的输出信息。

图0-5编译输出信息界面

6.连接PC与实验系统的通讯电缆,打开实验系统电源。

7.编译、链接都正确并且上下位机通讯成功后,就可以下载程序,联机调试了。

可以通过端口列表中的“端口测试”来检查通讯是否正常。

点击

下载程序。

为编译、链接、下载组合按钮,通过该按钮可以将编译、链接、下载一次完成。

下载成功后,在输出区的结果窗中会显示“加载成功!

”,表示程序已正确下载。

起始运行语句下会有一条绿色的背景。

如图0-6所示。

图0-6加载成功显示界面

8.将输出区切换到调试窗口,使用D0000:

3000命令查看内存3000H起始地址的数据,如图0-7所示。

存储器在初始状态时,默认数据为CC。

图0-7内存地址单元数据显示

9.点击按钮

运行程序,待程序运行停止后,通过D0000:

3000命令来观察程序运行结果。

如图0-8所示。

图0-8运行程序后数据变化显示

10.也可以通过设置断点,断点显示如图0-9所示,然后运行程序,当遇到断点时程序会停下来,然后观察数据。

可以使用E0000:

3000来改变该地址单元的数据,如图0-10所示,输入11后,按“空格”键,可以接着输入第二个数,如22,结束输入按“回车”键。

图0-9断点设置显示图0-10修改内存单元数据显示界面

实验例程文件名为Wmd861.asm。

1.5操作练习

编写程序,将内存3500H单元开始的8个数据复制到3600H单元开始的数据区中。

通过调试验证程序功能,使用E命令修改3500H单元开始的数据,运行程序后使用D命令查看3600H单元开始的数据。

一、8255并行接口实验

1.1实验目的

1.学习并掌握8255的工作方式及其应用。

2.掌握8255典型应用电路的接法。

3.掌握程序固化及脱机运行程序的方法。

1.2实验设备

PC机一台,TD-PITE实验装置或TD-PITC实验装置一套。

1.3实验内容

1.基本输入输出实验。

编写程序,使8255的A口为输入,B口为输出,完成拨动开关到数据灯的数据传输。

要求只要开关拨动,数据灯的显示就发生相应改变。

2.流水灯显示实验。

编写程序,使8255的A口和B口均为输出,数据灯D7~D0由左向右,每次仅亮一个灯,循环显示,D15~D8与D7~D0正相反,由右向左,每次仅点亮一个灯,循环显示。

1.4实验原理

图1-18255内部结构及外部引脚图

并行接口是以数据的字节为单位与I/O设备或被控制对象之间传递信息。

CPU和接口之间的数据传送总是并行的,即可以同时传递8位、16位或32位等。

8255可编程外围接口芯片是Intel公司生产的通用并行I/O接口芯片,它具有A、B、C三个并行接口,用+5V单电源供电,能在以下三种方式下工作:

方式0--基本输入/输出方式、方式1--选通输入/输出方式、方式2--双向选通工作方式。

8255的内部结构及引脚如图1-1所示,8255工作方式控制字和C口按位置位/复位控制字格式如图1-2所示。

图1-28255控制字格式

8255实验单元电路图如图1-3所示:

图1-38255实验单元电路图

1.5实验步骤

1.基本输入输出实验

本实验使8255端口A工作在方式0并作为输入口,端口B工作在方式0并作为输出口。

用一组开关信号接入端口A,端口B输出线接至一组数据灯上,然后通过对8255芯片编程来实现输入输出功能。

具体实验步骤如下述:

(1)实验接线图如图1-4所示,按图连接实验线路图。

(2)编写实验程序,经编译、连接无误后装入系统。

(3)运行程序,改变拨动开关,同时观察LED显示,验证程序功能。

(4)点击“调试”下拉菜单中的“固化程序”项,将程序固化到系统存储器中。

(5)将短路跳线JDBG的短路块短接到RUN端,然后按复位按键,观察程序是否正常运行;关闭实验箱电源,稍等后再次打开电源,看固化的程序是否运行,验证程序功能。

(6)实验完毕后,请将短路跳线JDBG的短路块短接到DBG端。

图1-48255基本输入输出实验接线图

实验程序清单(A82551.ASM)

SSTACKSEGMENTSTACK

DW32DUP(?

SSTACKENDS

CODESEGMENT

ASSUMECS:

CODE

START:

MOVDX,0646H

MOVAL,90H

OUTDX,AL

AA1:

MOVDX,0640H

INAL,DX

CALLDELAY

MOVDX,0642H

OUTDX,AL

JMPAA1

DELAY:

PUSHCX

MOVCX,0F00H

AA2:

PUSHAX

POPAX

LOOPAA2

POPCX

RET

CODEENDS

ENDSTART

2.流水灯显示实验

使8255的A口和B口均为输出,数据灯D7~D0由左向右,每次仅亮一个灯,循环显示,D15~D8与D7~D0正相反,由右向左,每次仅点亮一个灯,循环显示。

实验接线图如图4.35所示。

实验步骤如下所述:

(1)按图1-5连接实验线路图。

(2)编写实验程序,经编译、链接无误后装入系统。

(3)运行程序,观察LED灯的显示,验证程序功能。

(4)自己改变流水灯的方式,编写程序。

(5)固化程序并脱机运行。

图1-58255流水灯实验接线图

实验程序清单(A82552.ASM)

SSTACKSEGMENTSTACK

DW32DUP(?

SSTACKENDS

CODESEGMENT

ASSUMECS:

CODE

START:

MOVDX,0646H

MOVAL,80H

OUTDX,AL

MOVBX,8001H

AA1:

MOVDX,0640H

MOVAL,BH

OUTDX,AL

RORBH,1

MOVDX,0642H

MOVAL,BL

OUTDX,AL

ROLBL,1

CALLDELAY

CALLDELAY

JMPAA1

DELAY:

PUSHCX

MOVCX,0F000H

AA2:

PUSHAX

POPAX

LOOPAA2

POPCX

RET

CODEENDS

ENDSTART

二、8251串行接口应用实验

2.1实验目的

1.掌握8251的工作方式及应用。

2.了解有关串口通讯的知识。

2.2实验设备

PC机两台,TD-PITE实验装置或TD-PITC实验装置两套。

2.3实验内容

1.数据信号的串行传输实验,循环向串口发送一个数,使用示波器测量TXD引脚上的波形,以了解串行传输的数据格式。

2.自收自发实验,将3000H起始的10个单元中的初始数据发送到串口,然后自接收并保存到4000H起始的内存单元中。

3.双机通讯实验,本实验需要两台实验装置,其中一台作为接收机,一台作为发送机,发送机将3000H~3009H内存单元中共10个数发送到接收机,接收机将接收到的数据直接在屏幕上输出显示。

2.4实验原理

1.8251的基本性能

8251是可编程的串行通信接口,可以管理信号变化范围很大的串行数据通信。

有下列基本性能:

(1)通过编程,可以工作在同步方式,也可以工作在异步方式。

(2)同步方式下,波特率为0~64K,异步方式下,波特率为0~19.2K。

(3)在同步方式时,可以用5~8位来代表字符,内部或外部同步,可自动插入同步字符。

(4)在异步方式时,也使用5~8位来代表字符,自动为每个数据增加1个启动位,并能够根据编程为每个数据增加1个、1.5个或2个停止位。

(5)具有奇偶、溢出和帧错误检测能力。

(6)全双工,双缓冲器发送和接收器。

注意,8251尽管通过了RS-232规定的基本控制信号,但并没有提供规定的全部信号。

2.8251的内部结构及外部引脚

8251的内部结构图如图2-1所示,可以看出,8251有7个主要部分,即数据总线缓冲器、读/写控制逻辑电路、调制/解调控制电路、发送缓冲器、发送控制电路、接收缓冲器和接收控制电路,图中还标识出了每个部分对外的引脚。

8251的外部引脚如图2-2所示,共28个引脚,每个引脚信号的输入输出方式如图中的箭头方向所示。

图2-18251内部结构图

图4.378251外部引脚图

3.8251在异步方式下的TXD信号上的数据传输格式

图2-3示意了8251工作在异步方式下的TXD信号上的数据传输格式。

数据位与停止位的位数可以由编程指定。

图2-38251工作在异步方式下TXD信号的数据传输格式

4.8251的编程

对8251的编程就是对8251的寄存器的操作,下面分别给出8251的几个寄存器的格式。

(1)方式控制字

方式控制字用来指定通信方式及其方式下的数据格式,具体各位的定义如图2-4所示。

D7

D6

D5

D4

D3

D2

D1

D0

SCS/S2

ESD/S1

EP

PEN

L2

L1

B2

B1

同步/停止位

奇偶校验

字符长度

波特率系数

同步(D1D0=00)

X0=内同步

X1=外同步

0X=双同步

1X=单同步

异步(D1D0≠0)

00=不用

01=1位

10=1.5位

11=2位

X0=无校验

01=奇校验

11=偶校验

00=5位

01=6位

10=7位

11=8位

异步

00=不用

01=01

10=16

11=64

同步

00=同步方式标志

图2-48251方式控制字

(2)命令控制字

命令控制字用于指定8251进行某种操作(如发送、接收、内部复位和检测同步字符等)或处于某种工作状态,以便接收或发送数据。

图2-5所示的是8251命令控制字各位的定义。

D7

D6

D5

D4

D3

D2

D1

D0

EH

IR

RTS

ER

SBRK

RxE

DTR

TxEN

进入搜索

1=允许搜索

内部复位

1=使8251返回方式控制字

请求发送

1=使RTS输出0

错误标志复位使错误标志PE、OE、FE复位

发中止字符

1=使TXD为低0=正常工作

接收允许

1=允许

0=禁止

数据终端准备好

1=使DTR输出0

发送允许

1=允许

0=禁止

图2-58251命令控制字格式

(3)状态字

CPU通过状态字来了解8251当前的工作状态,以决定下一步的操作,8251的状态字如图2-6所示。

D7

D6

D5

D4

D3

D2

D1

D0

DSR

SYNDET

FE

OE

PE

TxE

RxRDY

TxRDY

数据装置就绪:

当DSR输入为0时,该位为1

同步检测

帧错误:

该标志仅用于异步方式,当在任一字符的结尾没有检测到有效的停止位时,该位置1。

此标志由命令控制字中的位4复位。

溢出错误:

在下一个字符变为可用前,CPU没有把字符读走,此标志置1。

此错误出现时上一字符已丢失。

奇偶错误:

当检测到奇偶错误时此位置1。

发送器空

接收就绪为1表明接收到一个字符。

发送就绪为1表明发送缓冲器空。

图2-68251状态字格式

(4)系统初始化

8251的初始化和操作流程如图2-7所示。

图2-78251初始化流程图

5.8251实验单元电路图

图2-88251实验单元电路图

 

2.5实验步骤

1.自收自发实验

通过自收自发实验,可以验证硬件及软件设计,常用于自测试。

具体实验步骤如下:

(1)参考实验接线图如图2-9所示,按图连接实验线路。

(2)编写实验程序,编译、链接无误后装入系统。

(3)使用E命令更改4000H起始的10个单元中的数据。

(4)运行实验程序,待程序运行停止。

(5)查看3000H起始的10个单元中的数据,与初始化的数据进行比较,验证程序功能。

实验参考例程(A82512.ASM)

M8251_DATAEQU0600H;端口定义

M8251_CONEQU0602H

M8254_2EQU06C4H

M8254_CONEQU06C6H

SSTACKSEGMENTSTACK

DW64DUP(?

SSTACKENDS

CODESEGMENT

ASSUMECS:

CODE

START:

MOVAX,0000H

MOVDS,AX

;初始化8254,得到收发时钟

MOVAL,0B6H

MOVDX,M8254_CON

OUTDX,AL

MOVAL,0CH

MOVDX,M8254_2

OUTDX,AL

MOVAL,00H

OUTDX,AL

;复位8251

CALLINIT

CALLDALLY

;8251方式字

MOVAL,7EH

MOVDX,M8251_CON图2-9自收自发实验接线图

OUTDX,AL

CALLDALLY

;8251控制字

MOVAL,34H

OUTDX,AL

CALLDALLY

MOVDI,3000H

MOVSI,4000H

MOVCX,000AH

A1:

MOVAL,[SI]

PUSHAX

MOVAL,37H

MOVDX,M8251_CON

OUTDX,AL

POPAX

MOVDX,M8251_DATA

OUTDX,AL;发送数据

MOVDX,M8251_CON

A2:

INAL,DX;判断发送缓冲是否为空

ANDAL,01H

JZA2

CALLDALLY

A3:

INAL,DX;判断是否接收到数据

ANDAL,02H

JZA3

MOVDX,M8251_DATA

INAL,DX;读取接收到的数据

MOV[DI],AL

INCDI

INCSI

LOOPA1

MOVAX,4C00H

INT21H;程序终止

INIT:

MOVAL,00H;复位8251子程序

MOVDX,M8251_CON

OUTDX,AL

CALLDALLY

OUTDX,AL

CALLDALLY

OUTDX,AL

CALLDALLY

MOVAL,40H

OUTDX,AL

RET

DALLY:

PUSHCX

MOVCX,3000H

A5:

PUSHAX

POPAX

LOOPA5

POPCX

RET

CODEENDS

ENDSTART

3.双机通讯实验

使用两台实验装置,一台为发送机,一台为接收机,进行两机间的串行通讯。

实验步骤如下:

图2-10双机通讯实验接线图

(1)按图2-10连接实验线路。

(2)为两台机器分别编写实验程序,编译、链接后装入系统。

(3)为发送机初始化发送数据。

在发送机3000H~3009H内存单元写入ASCII值:

30,31,32,33,34,35,36,37,38,39共10个数。

(4)首先运行接收机上的程序,等待接收数据,然后运行发送机上的程序,将数据发送到串口。

(5)观察接收机端屏幕上的显示是否与发送机端初始的数据相同,验证程序功能。

屏幕将会显示字符:

0123456789

实验参考例程(接收机)(A82513.ASM)

M8251_DATAEQU0600H

M8251_CONEQU0602H

M8254_2EQU06C4H

M8254_CONEQU06C6H

SSTACKSEGMENTSTACK

DW64DUP(?

SSTACKENDS

CODESEGMENT

ASSUMECS:

CODE

START:

MOVAL,0B6H;初始化8254

MOVDX,M8254_CON

OUTDX,AL

MOVAL,0CH

MOVDX,M8254_2

OUTDX,AL

MOVAL,00H

OUTDX,AL

CLI

CALLINIT;复位8251

CALLDALLY

MOVAL,7EH

MOVDX,M8251_CON

OUTDX,AL

CALLDALLY

MOVAL,34H

OUTDX,AL

CALLDALLY

MOVAX,0152H;输出显示字符'R'

INT10H

MOVDI,3000H

MOVCX,000AH

A1:

INAL,DX

ANDAL,02H

JZA1

MOVDX,M8251_DATA

INAL,DX

ANDAL,7FH

MOV[DI],AL

INCDI

LOOPA1

MOVAL,00H

MOVSI,300AH

MOV[SI],AL

MOVAH,06H

MOVBX,3000H

INT10H;输出显示接收到的数据

STI

A2:

JMPA2

INIT:

MOVAL,00H;复位8251子程序

MOVDX,M8251_CON

OUTDX,AL

CALLDALLY

OUTDX,AL

CALLDALLY

OUTDX,AL

CALLDALLY

MOVAL,40H

OUTDX,AL

RET

DALLY:

PUSHCX

MOVCX,3000H

A3:

PUSHAX

POPAX

LOOPA3

POPCX

RET

CODEENDS

ENDSTART

实验参考程序(发送机)(A82514.ASM)

M8251_DATAEQU0600H

M8251_CONEQU0602H

M8254_2EQU06C4H

M8254_CONEQU06C6H

SSTACKSEGMENTSTACK

DW64DUP(?

SSTACKENDS

CODESEGMENT

ASSUMECS:

CODE

START:

MOVAL,0B6H;初始化8254,得到收发时钟

MOVDX,M8254_CON

OUTDX,AL

MOVAL,0CH

MOVDX,M8254_2

OUTDX,AL

MOVAL,00H

OUTDX,AL

CALLINIT;复位8251

CALLDALLY

MOVAL,7EH

MOVDX,M8251_CON

OUTDX,AL;8251方式字

CALLDALLY

MOVAL,34H

OUTDX,AL;8251控制字

CALLDALLY

MOVDI,3000H

MOVCX,000AH

A1:

MOVAL,[DI]

CALLSEND

CALLDALLY

INCDI

LOOPA1

A2:

JMPA2

INIT:

MOVAL,00H;复位8251子程序

MOVDX,M8251_CON

OUTDX,AL

CALLDALLY

OUTDX,AL

CALLDALLY

OUTDX,AL

CALLDALLY

MOVAL,40H

OUTDX,AL

RET

DALLY:

PUSHCX

MOVCX,3000H

A4:

PUSHAX

POPAX

LOOPA4

POPCX

RET

SEND:

PUSHAX;数据发送子程序

PUSHDX

MOVAL,31H

MOVDX,M8251_CON

OUTDX,AL

MOVDX,M8251_DATA

OUTDX,AL

MOVDX,M8251_CON

A3:

INAL,DX

ANDAL,01H

JZA3

POPDX

POPAX

RET

CODEENDS

ENDSTART

三、8254定时/计数器应用实验

3.1实验目的

1.掌握8254的工作方式及应用编程。

2.掌握8254典型应用电路的接法。

3.2实验设备

P

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 初中教育 > 英语

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1