微机原理与接口技术实验指导书.docx
- 文档编号:24000390
- 上传时间:2023-05-23
- 格式:DOCX
- 页数:61
- 大小:2.94MB
微机原理与接口技术实验指导书.docx
《微机原理与接口技术实验指导书.docx》由会员分享,可在线阅读,更多相关《微机原理与接口技术实验指导书.docx(61页珍藏版)》请在冰豆网上搜索。
微机原理与接口技术实验指导书
实验安排
第一次实验:
存储区1中存放着ASCII码表(00H—7FH),要求编写程序,将存储区1中的内容复制到存储区2。
然后,将存储区2中的数字编码转换为如下编码:
30H—AAH,31H—BBH,32H—CCH33H—DDH,34H—EEH,35H—FFH,36H—A8H,37H—BFH38H—C9H,39H—D1H。
第二次实验:
1、两个数组的多位数加法操作(比如数组是100个字节的数据等),可以考虑数组中的数据既可以是二进制数,也可以是十进制数。
2、编程完成以下公式的运算:
(假设公式中的所有变量均为16位有符号的数)
1)W=X+Y*300要求乘积的高位在W中,低位在R中
2)W=P/(Q-15)要求商存入W,余数存入R
第三次实验:
1、编程实现各种进制之间的转换,例如十进制到二进制、二进制到十进制,十六进制到二进制、二进制到十六进制等;
2、编写数字排序子程序,通过主程序调用实现数组数据的排序(升序或降序);
第四次实验:
基本I/O和地址译码实验
1、8/32位I/O接口设计实验
2、地址译码电路设计实验
第五次实验:
8259中断控制器实验
1、8259查询中断应用实验
2、点阵汉字滚动显示实验
第六次实验:
8255和8254实验,应用中断方式等
1、连接8255与键盘扫描单元,编写程序完成键盘扫描功能,并将读到的按键值依次显示在数码管上
2、利用8254的定时功能,编写程序完成在数码管上循环显示任意字符串
第七次实验:
A/D和D/A实验
1、A/D转换实验
2、D/A产生任意波形的实验
微机原理与接口技术实验指导书
吉林大学仪器科学与电气工程学院
2010年12月
第一章软件实验部分
本章主要通过实验来学习80X86的指令系统、寻址方式以及程序的设计方法,同时掌握集成操作软件Tdpit的使用。
实验一显示程序与数据传送实验
1、实验目的
1)掌握在PC机上以十六进制形式显示数据的方法。
2)掌握部分DOS功能调用使用方法。
3)掌握与数据有关的不同寻址方式。
3)熟悉Windows集成操作软件Tdpit的操作环境和操作方法。
2、实验设备
PC微机一台、TD-PIT++实验系统一套。
3、实验内容及说明
1.显示程序实验
一般来说,有很多程序需要显示输出提示运行的状况和结果,有的还需要将数据区中的内容显示在屏幕上。
本实验要求将指定数据区的数据以十六进制数形式显示在屏幕上,并利用DOS功能调用完成一些提示信息的显示。
通过本实验,初步掌握实验系统配套操作软件的使用。
实验中所使用DOS功能调用(INT21H)说明如下。
(1)显示单个字符输出
入口:
AH=02H
调用参数:
DL=输出字符
(2)显示字符串
入口:
AH=09H
调用参数:
DS:
DX=串地址,’$’为结束字符
(3)键盘输入并回显
入口:
AH=01H
返回参数:
AL=输出字符
(4)返回DOS系统
入口:
AH=4CH
调用参数:
AL=返回码
2.数据传送实验
本实验要求将数据段中的一个字符串传送到附加段中,并输出附加段中的目标字符串到屏幕上。
4、实验步骤
1.显示程序实验
(1)运行Tdpit集成操作软件,进入编辑调试集成环境。
(2)根据程序设计使用语言不同,在“语言设置”菜单项中设置所使用的语言。
如图1-1所示。
该项一经设置,会再下次启动后仍保持不变。
图1-1设置语言环境
(3)开始新建文件进行编程。
点击“文件”菜单项中的“新建”,可以新建一个空白文档。
默认名为Td-pit1。
如图1-2所示。
图1-2新建空白文档
(4)编写程序,如图1-3所示,并保存,此时软件会提示输入新的文件名,输入文件名后点击保存。
图1-3程序编辑界面
(5)点击
,编译文件,若程序编译无误,然后再点击
,链接程序。
编译连接成功会在输出信息栏显示输出信息,如图1-4所示。
图1-4编译连接输出信息
(6)编译连接成功后可以点击
,运行程序,查看运行结果。
(7)可以点击
,调试程序,进入调试界面,进行程序的调试。
2.数据传送实验
(1)运行Tdpit集成操作软件,编写实验程序。
(2)编译连接无误后,点击
,进入调试环境,进行程序的调试。
如图1-5所示。
图1-5进入调试环境
(3)按F8键单步运行程序,执行完MOVDS,AX语句后,观察DS寄存器中出现的段地址。
激活Dump数据显示区,用Ctrl+G命令,输入要查看的数据区地址-“0C69:
0000”。
如图1-6所示。
可以在Dump数据区看到DS数据段中MSR源数据串-"HELLO,WORLD!
$"。
如图1-7所示。
图1-6根据DS值查看数据段
图1-7DS源数据段数据
(4)继续单步运行程序,执行MOVES,AX语句后,可以看到ES附加数据段出现的段地址,用同样的方法可以查看ES:
0000的数据。
如图1-8所示。
图1-8根据ES值查看附加数据段
(5)数据传输还没开始进行,此时ES段的数据为空。
继续单步执行完程序,可以看到ES数据段逐渐被写入源数据段DS的数据。
直到数据传输完毕,可以看到ES数据段中目的数据串MSD已经被写入了数据串-"HELLO,WORLD!
$"。
如图2-2-5所示。
图1-9根据ES值查看附加数据段
(6)可以更改程序中声明的源数据区数据,考察程序的正确性。
实验二数码转换程序实验
1、实验目的
掌握不同进制数及编码相互转换的程序设计方法。
2、实验设备
PC微机一台、TD-PIT++实验系统一套。
3、实验内容及说明
计算机输入设备输入的信息一般是由ASCII码或BCD码表示的数据或字符,CPU一般均用二进制数进行计算或其他信息处理,处理结果的输出又必须依照外设的要求变为ASCII码、BCD码或七段显示码等。
因此,在应用软件中,各类数制的转换和代码的转换是必不可少的。
计算机与外设间的数码对应关系如表2-1所示。
数码转换关系如图2-1所示。
图2-1计算机与外设间的数码转换关系
表2-1数码转换对应关系
十六进制
BCD码
二进制机器码
ASCII码
七段码
共阳
共阴
0
0000
0000
30H
40H
3FH
1
0001
0001
31H
79H
06H
2
0010
0010
32H
24H
5BH
3
0011
0011
33H
30H
4FH
4
0100
0100
34H
19H
66H
5
0101
0101
35H
12H
6DH
6
0110
0110
36H
02H
7DH
7
0111
0111
37H
78H
07H
8
1000
1000
38H
00H
7FH
9
1001
1001
39H
18H
67H
A
1010
41H
08H
77H
B
1011
42H
03H
7CH
C
1100
43H
46H
39H
D
1101
44H
21H
5EH
E
1110
45H
06H
79H
F
1111
46H
0EH
71H
1.将ASCII码表示的十进制数转换为二进制数
十进制数可以表示为:
Dn×10n+Dn-1×10n-1+…+D0×100=Di×10i其中Di代表十进制数1、2、3…9、0。
上式可以转换为:
ΣDi×10i=((…(Dn×10+Dn-1)×10)+Dn-2)×10+…+D1)×10+D0
由上式可归纳十进制数转换为二进制的方法:
从十进制数的最高位Dn开始作乘10加次位的操作,依次类推,则可求出二进制数结果。
本实验要求将缓冲区中的一个五位十进制数00012的ASCII码转换成二进制数,并将转换结果按位显示在屏幕上。
2.将十进制数的ASCII码转换为BCD码
本实验要求将键盘输入的一个五位十进制数54321的ASCⅡ码存放在数据区中,转换为BCD码后,并将转换结果按位分别显示于屏幕上。
若输入的不是十进制数的ASCⅡ码,则输出“FF”。
提示:
一字节ASCⅡ码取其低四位即变为BCD码。
3.将十六进制数的ASCII码转换为十进制数
十六位二进制数的值域为0-65535,最大可转换为五位十进制数。
五位十进制数可表示为:
ND=D4×104+D3×103+D2×102+D1×10+D0
因此,将十六位二进制数转换为五位ASCⅡ码表示的十进制数,就是求D1-D4,并将它们转化为ASCⅡ码。
本实验要求将缓冲区中存放的000CH的ASCII码转换成十进制数,并将转换结果显示在屏幕上。
4.BCD码转换为二进制码
本实验要求将四个二位十进制数的BCD码存放在某一内存单元中,转换出的二进制数码存入其后的内存单元中,转换结束,送屏幕显示。
4、实验步骤
(1)运行Tdpit集成操作软件,按照各实验要求分别编写实验程序。
(2)对实验程序进行编译、链接。
(3)使用运行功能执行程序,观察运行结果。
(4)使用调试功能调试程序,观察在调试过程中,程序指令执行之后各寄存器及数据区的内容。
(5)更改数据区中的数据,反复测试,验证程序功能。
实验三运算类指令编程实验
1、实验目的
1)掌握运算类指令编程及调试方法。
2)掌握运算类指令对各状态标志位的影响及测试方法。
2、实验设备
PC微机一台、TD-PIT++实验系统一套。
3、实验内容及说明
80x86指令系统提供了实现加、减、乘、除运算的基本指令,可对表3-1所示的数据类型进行算术运算。
表3-1数据类型算术运算表
数制
二进制
BCD码
带符号
无符号
组合
非组合
运算符
+、-、÷、×
+、-
+、-、÷、×
操作数
字节、字、多精度
字节(二位数字)
字节(一位数字)
1.二进制双精度加法运算
本实验要求计算X+Y=Z,将结果Z输出到屏幕,其中X=001565A0H,Y=0021B79EH。
实验利用累加器AX,先求低十六位和,并存入低址存储单元,后求高16位和,再存入高址存储单元。
由于低位和可能向高位有进位,因而高位字相加语句需用ADC指令,则低位相加有进位时,CF=1,高位字相加时,同时加上CF中的1。
在80386以上微机中可以直接使用32位寄存器和32位加法指令完成本实验的功能。
2.十进制数的BCD码减法运算
本实验要求计算X-Y=Z,其中,X、Y、Z为BCD码,其中X=0400H,Y=0102H。
3.乘法运算
本实验要求实现十进制数的乘法,被乘数和乘数均以BCD码形式存放于内存中,被乘数为54320H,乘数为3H,运算结束后,将乘积在屏幕上显示。
4.用减奇数开平方运算
80x86指令系统中有乘除法指令但没有开平方指令,因此,开平方运算是通过程序来实现的。
用减奇数法可求得近似平方根,获得平方根的整数部分。
我们知道,N个自然数中的奇数之和等于N2,即:
1+3+5=9=32
1+3+5+7=16=42
1+3+5+7+9+11+13+15=64=82
若要做S的开方运算,那麽就可以从S中逐次减去自然数中的奇数1,3,5,7…,一直进行到相减数为0或不够减下一个自然数的奇数为止,然后统计减去自然数的奇数个数,它就是S的近似平方根。
本实验要求利用减奇法计算0040H的开平方值,并将运算结果显示在屏幕上。
4、实验步骤
(1)运行Tdpit集成操作软件,按各实验要求编写实验程序。
(2)分别对实验程序进行编译、链接。
(3)使用运行功能运行程序,观察运行结果。
(4)使用调试功能调试程序,观察在调试过程中,各运算指令执行后,各寄存器、标志位及数据区内容的变化。
(5)更改数据区中的数据,反复测试,验证程序功能。
第二章硬件实验部分
接口技术是把由处理器、存储器等组成的基本系统与外部设备连接起来,从而实现CPU与外部设备通信的一门技术,任何微机应用开发工作都离不开接口的设计、选用及连接。
微机应用系统需要设计的硬件是一些接口电路,所要编写的软件是控制这些接口电路按要求工作的驱动程序。
因此,接口技术是微机应用中必不可少的基本技能。
实验四8/32位I/O接口实验
1、实验目的
1)掌握基本I/O接口电路的设计方法。
2)熟悉I/O操作指令及8/32位I/O端口的操作方法。
3)了解LED点阵的基本结构。
4)学习LED点阵扫描显示程序的设计方法。
2、实验设备
PC微机一台、TD-PIT++实验系统一套。
3、实验内容
(1)利用8位I/O接口,实现微机对外部输入数据的读取和对输出数据的输出。
用拨动开关和数据灯作为输入和输出显示设备,将读到开关的数据显示在数据灯上。
(2)利用32位的I/O接口,按照32位的I/O操作方式,操作点阵LED显示单元的16行×16列点阵。
(3)使用32位I/O接口单元的32位输出O0~O31控制点阵LED单元R0~R15和L0~L15。
编写程序,在16×16点阵上显示汉字(学生姓名)。
4、实验原理
1.输入接口设计
输入接口一般用三态缓冲器实现,外部设备输入数据通过三态缓冲器,通过数据总线传送给微机系统。
74LS245是一种8通道双向的三态缓冲器,其管脚结构如图4-1所示。
DIR引脚控制缓冲器数据方向,DIR为1表示数据由A[7:
0]至
B[7:
0],DIR为0表示数据由B[7:
0]至A[7:
0]。
G引脚为缓冲器的片选信号,低电平有效。
图4-174LS245双向三态缓冲器管脚图
2.输出接口设计
输出接口一般用锁存器实现,从总线送出的数据可以暂存在锁存器中。
74LS374/74LS574是一种8通道上沿触发锁存器。
74LS574管脚结构如图4-2所示。
D[7:
0]为输入数据线,Q[7:
0]为输出数据线。
CLK引脚为锁存控制信号,上升沿有效。
当上升沿到时,输出数据线锁存输入数据线上的数据。
OE引脚为锁存器的片选信号,低电平有效。
图4-274LS574上沿触发锁存器管脚图
3.8位I/O接口设计
用一组74LS245和74LS374/574可以构成一个8位的I/O接口电路,既实现数据的输入又实现数据的输出,输入输出可以占用同一个端口。
是输入还是输出用总线读写信号来区分。
总线读信号IOR和片选信号CS相“或”来控制输入接口74LS245的使能信号G。
总线写信号IOW和片选信号CS相“或”来控制输出接口74LS574的锁存信号CLK。
实验系统中基本I/O接口单元就实现了这种的电路,8位I/O电路连接如图4-3所示。
INAL,DX;将IA[7:
0]连接设备的8位数据通过数据总线D[7:
0]输入到AL。
OUTDX,AL;将AL中的数据通过数据总线D[7:
0]输出到OA[7:
0]连接的设备。
图4-3用74LS245和74LS574组成的8位I/O接口电路
4.32位I/O接口设计
用四组8位的I/O接口电路可以构成一个32位的I/O接口电路,可以一次进行32位数据宽度的I/O操作。
I/O读、写、片选信号对输入输出的控制基本和8位I/O接口电路相同,但是,对于32位数据总线,每个字节都对应着一位字节使能信号,共有4位字节使能信号BE0~BE3,因此每个8位I/O接口电路是否有效要受BE[3:
0]的控制。
INEAX,DX;将I[31:
0]连接设备的32位数据通过数据总线D[31:
0]输入到EAX。
OUTDX,EAX;将EAX中的数据通过数据总线D[31:
0]输出到O[31:
0]连接的设备。
5.16×16点阵工作原理
8×8点阵LED相当于8×8个发光管组成的阵列,对于共阳极LED来说,其中每一行共用一个阳极(行控制),每一列共用一个阴极(列控制)。
行控制和列控制满足正确的电平就可使相应行列的发光管点亮。
实验平台上点阵LED的管脚及相应的行、列控制位如图4-4所示。
图4-4点阵LED管脚图
共阳极和共阴极LED的内部结构分别如图4-5和4-6所示。
图4-5共阳极LED内部结构图图4-6共阴极LED内部结构图
4、实验说明及步骤
1.8位I/O操作实验
本实验实现的是将开关K[7:
0]的数据通过输入数据通道读入CPU的寄存器,然后再通过输出数据通道将该数据输出到数据灯显示,该程序循环运行,直到按动PC键盘上任意按键再退出程序。
实验程序流程如图4-7所示。
参考实验接线如图5
-8所示。
实验步骤如下:
(1)按图4-8连接实验线路图。
(2)运行Tdpit集成操作软件,根据实验内容,编写实验程序,对实验程序进行编译、链接。
(3)运行程序,拨动开关,观看数据灯显示是否正确。
图4-78位I/O接口设计实验参考流程图图4-88位I/O接口设计实验参考接线图
2.32位I/O操作实验
本实验利用点阵LED显示单元的16×16点阵,将16行控制和16列控制合成一个32位端口来操作(列控制连接到发光管的阳极,行控制连接发光管的阴极,列为“1”,相应的行为“0”,则对应的一列发光管点亮)。
用32位I/O接口单元中的32位输出O[31:
0]的高16位控制16列,低16位控制16行,即一次I/O操作就可完成LED点阵的一次显示。
实验要求控制点阵循环逐行显示,直到按动PC键盘上任意按键再停止程序退出。
实验步骤如下:
(1)实验接线图如图4-9所示,按图连接实验线路图。
(2)运行Tdpit集成操作软件,根据实验内容,编写实验程序,对实验程序进行编译、链接。
(3)运行程序,观看LED点阵显示是否正确。
3.点阵显示实验
利用取字模软件得到汉字字符数组,设计程序,在点阵上显示学生姓名。
实验参考接线如图4-9所示。
实验步骤如下:
(1)按图4-9连接实验线路图。
(2)运行Tdpit集成操作软件,根据实验要求编写实验程序,编译、链接。
(3)运行程序,观察点阵的显示,验证程序功能。
使用点阵显示符号时,必须首先得到显示符号的编码,这可以根据需要通过不同的工具获得。
实验五8255并口控制器应用实验
1、实验目的
1)学习并掌握8255的工作方式及其应用。
2)掌握8255典型应用电路的接法。
2、实验设备
PC微机一台、TD-PIT++实验系统一套。
3、实验内容
1.基本输入输出实验。
编写程序,使8255的A口为输出,B口为输入,完成拨动开关到数据灯的数据传输。
要求只要开关拨动,数据灯的显示就发生相应改变。
2.流水灯显示实验。
编写程序,使8255的A口和B口均为输出,数据灯D7~D0由左向右,每次仅亮一个灯,循环显示,D15~D8与D7~D0正相反,由右向左,每次仅点亮一个灯,循环显示。
3.计数器显示实验。
编写程序,使8255的A口和B口均为输出,数据灯D15~D0显示二进制形式的计数结果。
4、实验原理
8255可编程外围接口芯片是Intel公司生产的通用并行I/O接口芯片,它具有A、B、C三个并行接口,用+5V单电源供电,能在以下三种方式下工作:
方式0--基本输入/输出方式、方式1--选通输入/输出方式、方式2--双向选通工作方式。
8255的内部结构及引脚如图5-1所示,8255工作方式控制字和C口按位置位/复位控制字格式如图5-2所示。
图5-18255内部结构及外部引脚图
图5-28255控制字格式
8255实验单元电路图如图5-3所示:
图5-38255实验单元电路图
5、实验步骤
1.基本输入输出实验
本实验使8255端口A工作在方式0并作为输出口,端口B工作在方式0并作为输入口。
用一组开关信号接入端口B,端口A输出线接至一组数据灯上,然后通过对8255芯片编程来实现输入输出功能。
具体实验步骤如下述:
(1)实验接线图如图5-4所示,按图连接实验线路图。
(2)运行Tdpit集成操作软件,根据实验内容,编写实验程序,编译、链接。
(3)运行程序,改变拨动开关,同时观察LED显示,验证程序功能。
图5-48255基本输入输出实验接线图
2.流水灯显示实验
使8255的A口和B口均为输出,数据灯D7~D0由左向右,每次仅亮一个灯,循环显示,D15~D8与D7~D0正相反,由右向左,每次仅点亮一个灯,循环显示。
实验步骤如下所述:
(1)实验接线图如图5-5所示,按图连接实验线路图。
(2)运行Tdpit集成操作软件,根据实验内容,编写实验程序,编译、链接。
(3)运行程序,观察LED灯的显示,验证程序功能。
(4)自己改变流水灯的方式,编写程序。
图5-58255流水灯实验接线图
3.计数器显示实验
使8255的A口和B口均为输出,数据灯D15~D0显示二进制形式的计数结果。
实验步骤如下所述:
(1)实验接线图如图5-5所示,按图连接实验线路图。
(2)运行Tdpit集成操作软件,根据实验内容,编写实验程序,编译、链接。
(3)运行程序,观察LED灯的显示,验证程序功能。
实验六8259中断控制器实验
1、实验目的
1.掌握8259中断控制器的工作原理。
2.掌握8259中断控制器的应用编程方法。
2、实验设备
PC微机一台、TD-PIT++实验系统一套。
3、实验内容
(1)利用实验平台上的8259控制器,通过查询中断源方法,设计一个查询中断应用实验,处理IR0和IR1发出的中断请求。
(2)利用上述查询中断实验,实现点阵汉字(学生姓名)的滚动显示。
要求通过IR0实现点阵的左右滚动显示和停止,通过IR1实验点阵汉字的上下滚动显示和停止。
4、实验原理
1.中断控制器8259简介
中断控制器8259是Intel公司专为控制优先级中断而设计开发的芯片。
它将中断源优先级排队、辨别中断源以及提供中断矢量的电路集于一片中,因此无需附加任何电路,只需对8259进行编程,就可以管理8级中断,并选择优先模式和中断请求方式,即中断结构可以由用户编程来设定。
同时,在不需增加其他电路的情况下,通过多片8259的级连,能构成多达64级的矢量中断系统。
它的管理功能包括:
1)记录各级中断源请求,
2)判别优先级,确定是否响应和响应哪一级中断,
3)响应中断时,向CPU传送中断类型号。
8259的内部结构和引脚如图6-1所示。
图6-18259内部结构和引脚图
8259的命令共有7个,一类是初始化命令字,另一类是操作命令。
8259的编程就是根据应用需要将初始化命令字ICW1-ICW4和操作命令字OCW1-OCW3分别写入初始化命令寄存器组和操作命令寄存器组。
ICW1-ICW4各命令字格式如图6-2所示,OCW1-OCW3各命令字格式如图6-3所示,其中OCW1用于设置中断屏蔽操作字,OCW2用于设置优先级循环方式和中断结束方式的操作命令字,OCW3用于设置和撤销特殊屏蔽方式、设置中断查询方式以及设置对8259内部寄存器的读出命令。
图6-2(a)ICW1格式
图6-2(b)ICW2格式
图6-2(c)ICW3格式
图6-2(d)ICW4格式
图6-3OCW命令字格式
2.8259寄存器及命令的控制访
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 微机 原理 接口 技术 实验 指导书