微机系统与接口技术实验指导书不含汇编打印精简本.docx
- 文档编号:7920041
- 上传时间:2023-01-27
- 格式:DOCX
- 页数:60
- 大小:1MB
微机系统与接口技术实验指导书不含汇编打印精简本.docx
《微机系统与接口技术实验指导书不含汇编打印精简本.docx》由会员分享,可在线阅读,更多相关《微机系统与接口技术实验指导书不含汇编打印精简本.docx(60页珍藏版)》请在冰豆网上搜索。
微机系统与接口技术实验指导书不含汇编打印精简本
微机系统与接口技术
实验指导书
李鹤喜 张健 金旺春
五邑大学计算机学院
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
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 微机 系统 接口 技术 实验 指导书 汇编 打印 精简