微机原理与接口.docx
- 文档编号:280484
- 上传时间:2023-04-28
- 格式:DOCX
- 页数:45
- 大小:242.37KB
微机原理与接口.docx
《微机原理与接口.docx》由会员分享,可在线阅读,更多相关《微机原理与接口.docx(45页珍藏版)》请在冰点文库上搜索。
微机原理与接口
微机原理与接口
实验指导书
胥保文编著
班级学号:
____________
学生姓名:
____________
江苏大学工业中心测控实验室
二〇〇四年四月
第一章系统概述
1.1系统组成
Dais系列微机实验系统的8088/8086微机接口实验管理CPU89C52单元、目标CPU8088/8086单元、接口实验单元和内置稳压电源组成,通过RS232串行接口与PC微机相连,系统硬件主要内容如下:
CPU
管理CPU89C52单元、目标CPU8088/8086单元
系统存储器
监控在89C52内E2PROM(8K)、RAM6264、RAM61256(32K)、BPRAM61256(32K)
接口芯片及单元实验
8253、8255、8529、ADC0809、DAC0832、6264、164、273、244、393分频、电子发声单元、电机控制单元、开关及发光二极管、单脉冲触发器、继电器控制、16*16点阵、8155扩展3*3键盘、四位LED显示等。
外设接口
打印接口、RS232C串口、D/A驱动接口、步进电机驱动接口、音频驱动接口、PC总线接口、2*16LCD液晶显示接口
显示器键盘
6位LED、二路双踪示波器
键盘
32个自定义键盘
EPROM编程器
对EPROM2764/2718快速读出
系统电源
±5V2A、±12V/0.5A
1.2系统功能与特点
(1)自带键盘、显示器,能独立运行,也可以PC微机为操作平台。
(2)系统采用紧耦合多CPU技术,用89C52作为系统管理CPU,8088/8086
作为目标机接口扩展CPU。
(3)目标CPU8088/8086采用主频为14.3818MHz,系统以最小工作方式构
成。
(4)配有一片6264构成系统的8K基本内存,地址为0F000:
0000H~1FFFH,
作为监控程序区和数据区:
另配一片61C256(32K)作为实验程序空间,
地址从0000:
0000H~7FFFH(其中00000H~003FFH作为目标中断向量
区),还配一片61C256(32K)作为用户设置的断点区(BPRAM)。
1.3系统资源分配
实验系统寻址范围定义如下:
系统数据区
F000:
0000~00FFH
系统堆栈区
F000:
0100~01FFH
系统程序区
F000:
0200~07FFH
用户程序区
用户数据区
0000:
1200~7FFFH
用户堆栈区
0000:
0600~0400H
中断向量区
0000:
0000~03FFH
系统已定义的I/O地址如下:
接口芯片
口地址
用途
74LS273
FFDDH
字位口
74LS273
FFDCH
字形口
74LS275
FFDEH
键入口
82555A口
FFD8H
EP总线
82555B口
FFD9H
EP地址
82555C口
FFDAH
EP控制
82555控制口
FFDBH
控制字
1.4软件的使用
⑴在桌面上点击图标然后选择以实验系统所插串口一致的选项,
点击“确定”便进入Dais集成调试环境。
⑵点击工具条中图标,建立新文件进行编程。
⑶点击工具条中图标,进行源文件的编译、装载,在出现编译成功
的对话框后点击“OK”框自动进入源文件调试状态。
⑷点击工具条中“调试”项,自动弹出硬件实验项目选择框。
⑸在工具条中点击所需的运行方式:
单步、宏单步、运行。
⑹若需要以断点方式运行,可直接点击源语句行前的图标来完成所需
断点的设置与清除,然后再点击图标进入断点运行状态。
⑺系统一旦进入运行状态后,若需要终止该程序的运行请点击图标退出当前操作返回待命状态。
1.5键盘显示
(1)系统配备6位LED显示器,左边4位显示地址,右边2位显示该地址内容。
(2)系统具有一个4*8键盘,左边16位是数字键,右边16个是功能键。
1.6初始化状态
8088十六位微机实验系统上电总清(或按复位键)以后,显示器上显示监控提示符“P”,各寄存器的初始值如下:
SP=0600H,CS=0000H,DS=0000H,SS=0000H,ES=0000H,IP=1000H,FL=0000H
注意:
所有命令均在提示符“P”状态输入。
在键盘监控状态,段地址缺省值为0000H。
1.7寄存器内容显示
(1):
在“P”提示符下,直接按REG键,可依次循环显示或修改PC值
(IP)、PSW值(FL)值、SP值。
(2):
在“P”提示符下,先输入寄存器代号(一位16进制数),再按
REG键,显示器左边2位显示寄存器名,右边4位显示该寄存
器内容。
此时:
·按NX键,则依次循环下一个寄存器中的内容
·按LS键,则依次循环上一个寄存器中的内容
·有一个数码管在闪烁,表示该位可修改
·输入十六进制数字,则该寄存器中的内容被修改,同时移到下一位
0
1
2
3
4
5
6
7
8
9
A
B
C
D
AX
BX
CX
DX
SP
BP
SI
DI
DS
ES
SS
CS
IP
FL
(3):
在“P”提示符下,先输入内存地址(四位16进制数),再按ME
键,显示器左边4位显示内存地址,右边2位显示该地址内容。
此时:
·按NX键,则依次循环下一个地址中的内容
·按LS键,则依次循环上一个地址中的内容
·有一个数码管在闪烁,表示该位可修改
·输入十六进制数字,则该地址中的内容被修改,同时移到下一位
1.8通用外围电路
1.逻辑电平开关电路
2.发光二极管显示电路
3.脉冲发生器电路
4.计数器电路
5.单脉冲电路
6.继电器及驱动电路
7.直流电机及驱动电路
8.步进电机及驱动电路
9.电子音响及驱动电路
10.模拟信号、基准电压产生电路
11.脉冲滤波电路
12.译码电路
第二章软件实验
软件实验一清零程序
一、实验目的
掌握8088汇编语言程序设计和调试方法,熟悉键盘操作。
二、实验内容
把RAM区内4000H~40FFH单元的内容清零。
三、程序框图
四、实验步骤
用连续或单步方式运行程序,检查4000H~40FFH中执行程序前后的内容变化。
五、思考
假使把4000H~40FFH中的内容改成FFh,如何修改程序。
软件实验二 拆字程序
一、实验目的
掌握汇编语言设计和调试方法。
二、实验内容
把4000H的内容拆开,高位送4001H低位,低位送4002H低位,4001H、4002H高位清零,一般本程序用于把数据送显示缓冲区时用。
三、程序框图
四、实验步骤
用连续或单步方式运行程序,检查4000H~4002H中内容变化情况。
五、思考
如何用断点方式调试本程序。
软件实验三 拼字程序
一、实验目的
进一步掌握汇编语言设计和调试方法。
二、实验内容
把4000H、4001H的低位分别送入4002H高低四位,一般本程序用于把显示缓冲区的数据取出拼装成一个字节。
三、程序框图
四、实验步骤
单步或用断点方式运行程序,检查4002H内容变化情况。
软件实验四 数据区移动
一、实验目的
掌握RAM中的数据操作。
二、实验内容
把4100H源RAM区首地址内的16字节数据传送到4200H目标RAM区。
三、设计思想
程序要求把内存中一数据区(称为源数据块)传送到另一存储区(称为目的数据块)。
源数据块和目的数据块在存储器中可能有三种情况,如下图:
对于两个数据分离的情况,如图(a),数据的传送从数据块的首地址开始,或者从数据块的末地址开始均可。
但对于有部分重叠的情况,则要加以分析,否则重叠部分会因“搬移”而遭破坏。
可以得出如下结论:
当源数据首址大于目的块首址时,从数据块首址开始传送数据。
当源数据首址小于目的块首址时,从数据块末址开始传送数据。
四、程序框图
五、实验步骤
调试运行程序,检查4100H~410FH中内容是否和4200H~420FH中内容完全一致。
软件实验五 数据排序实验
一、实验目的
熟悉8088指令系统,掌握程序设计方法。
二、实验内容
编写并调试一个排序子程序,其方法为用冒泡法将RAM中的几个单元字节无符号的正整数,按从小到大的次序重新排列。
三、程序框图
四、实验步骤
⑴在4000H~400AH中通过键盘命令输入不等的10个数,从第一个数开始,依次把相邻的两个数进行比较,即第(N-2)个数与第(N-1)个数比较,第(N-1)个数与第N个数比较等等;若第(N-1)个数不大于第N个数,则两者交换,否则不交换,直到N个数的相邻两个数都比较完为止。
此时。
N个数中的最小数将被排在N个数的最后。
⑵对剩下的(N-1)个数重复第⑴步,找到(N-1)个数中的最小数。
⑶重复第⑵步,直到N个数全部排序好为止。
(4)运行本实验程序后检查4000H~400AH中内容是否按从大到小排列。
在和PC机联机时,用连续单步方式,可很清楚地看出数据排序时数据移动变化情况。
五、思考
编一程序把4000H~400AH中内容按从小到大排列。
软件实验六 找“零”个数
一、实验目的
熟悉汇编语言编程,掌握串操作指令的使用。
二、实验内容
在4000H~400FH中查出有几个字节是零,把个数放在4100H中。
三、程序框图
四、实验步骤
在4000H~400FH的几个单元中填入零,运行本程序后检查4100H中是几个单元数。
五、思考
修改程序,查找其他内容。
软件实验七 32位二进制乘法
一、实验目的
掌握8088汇编语言程序设计方法,熟悉二进制乘法指令的使用。
二、实验内容
进行两个32位无符号二进制的乘法运算。
三、实验预备知识
本程序是利用无符号二进制数乘法运算指令。
四、设计思想
如下图所示,设A、B为被乘数的高、低16位二进制数,C、D为乘数的高、低16位二进制数,
N1*N2=(A*216+B)*(C*216+D)
=BD+AD*216+BC*216+AC*232
通过分析可知,共需进行四次乘法运算,每次进行两个16位二进制数的乘法的,共得到四个部分积,然后再求部分积累加和。
64位积在内存中的存放格式:
五、实验步骤
在30D3H~30DAH中输入无符号整数的字,连续或单步运行本实验程序后检查30DBH~30E2H中内容。
软件实验八 多分支程序
一、实验目的
掌握汇编语言的编程,熟悉程序散转的设计方法。
二、实验内容
编写程序,根据送入的数据转移运行。
三、设计思想
多分支结构相当于一个多路开关,在程序设计中通常是根据某寄存器或某单元的内容进行程序转移。
在设计多分支转移程序时,如果分支太多,则平均转移速度太慢,本实验采用转移地址表实现多分支转移,可以提高平均转移速度。
编程提示
字形口地址:
FFDCH
字位口地址:
FFDDH
LED数码管0~F的字行代码:
0
1
2
3
4
5
6
7
8
9
A
B
C
D
E
F
灭
C0
F9
A4
B0
99
92
82
F8
80
90
88
83
C6
A1
86
8E
FF
LED数码管的字位代码:
字位
1
2
3
4
5
6
代码
20
10
08
04
02
01
四、程序框图
五、实验步骤
在4000H中分次输入00,01,02……0F,每次运行程序后观察数码管上数字循环情况。
软件实验九 显示子程序
一、实验目的
熟悉LED显示器的显示过程。
二、实验内容
编写程序,依次闪动显示“Dais88”“good”。
三、程序框图
五、实验步骤
连续运行自己编写的程序,观察数码管显示情况。
第三章硬件实验
硬件实验一 8255A并行口实验㈠方波
一、实验目的
掌握可编程I/O接口芯片8255的接口原理使用,熟悉对8255初始化编程和输入、输出软件的设计方法。
二、实验内容
在8255A.B.C口用示波器测出波形。
三、实验框图
四、实验步骤
(1)打开电源(微机系统),双击“Intel8088微机实验系统”图标,点击下拉式菜单“文件”并选中“新建文件”,把编好的程序输入进去。
(2)进行编译、连接、装载,如果有错误,请根据提示返回源程序修改。
直到没有错误为止。
(3)运行程序。
(4)用示波器观察波形。
硬件实验二 8255A并行口实验㈡PA输入、PB输出
一、实验目的
⑴掌握8255A和微机接口方法。
⑵掌握8255A的工作方式和编程原理。
二、实验内容
用8255PA作开关量输入口,PB作输出口。
三、程序框图
四、实验电路图
粗线为所要连接的线,细线实验系统已连接好。
五、编程提示
8255A芯片简介
8255A可编程外围接口芯片是Intel公司生产的通用并行接口芯片,它具有A、B、C三个并行接口,用+5V电源供电,能在以下三种方式下工作:
方式0:
基本输入/输出方式
方式1:
选通输入/输出方式
方式2:
双向选通工作方式
使8255A端口A工作在方式0并作为输入口,读取K1—K8八个开关量,送PB口显示。
PB口工作在方式0作为输出口。
六、实验步骤
⑴按实验电路图连接线路:
①8255A芯片A口的AP0~PA7依次和开关量输入插孔K1~K8相连。
②8255A芯片B口的AB0~PB7依次接L1~L8
⑵运行实验程序。
1打开电源(微机系统),双击“Intel8088微机实验系统”图标,点击
下拉式菜单“文件”并选中“新建文件”,把编好的程序输入进去。
②进行编译、连接、装载,如果有错误,请根据提示返回源程序修改。
直到没有错误为止。
③运行程序。
④拨动K1~K8开关,观察L1~L8发光二极管的亮灭。
硬件实验三 8255A并行口实验㈢控制交通灯
一、实验目的
掌握通过8255A并行口传输数据的方法,以控制发光二极管的亮与灭。
二、实验内容
用8255作输出口,控制十二个发光二极管燃灭,模拟交通灯管理。
三、程序框图
四、实验电路图
五、编程提示
①通过8255A控制发光二极管PB3、PB0、PA5、PA2对应黄灯,PB1、PA6、PA3、PA0对应红灯,PB2、PA7、PA4、PA1对应绿灯,以模拟交通路灯的管理。
②要完成本实验,必须先了解交通路灯的亮灭规律,没有一个十字路口1、3为南北方向,2、4为东西方向,初始状态为四个路口的红灯全亮。
之后,1、3路口的绿灯亮,2、4路口的红灯亮,1、3路口方向通车。
延时一段时间后,1、3路口的绿灯熄灭,而1、3路口的黄灯开始闪烁,闪烁若干次以后,1、3路口红灯亮,而同时2、4路口的绿灯亮,2、4路口方向通车,延时一段时间后,2、4路口的绿灯熄灭,而黄灯开始闪烁,闪烁若干次以后,再切换到1、3路口方向,之后,重复上述过程。
③程序中设定好8255A的工作模式,及三个端口均工作在方式0,并处于输出状态。
④各发光二极管共阳极,使其点亮应使8255A相应端口的位清0。
六、实验步骤
⑴按实验电路图连接线路:
8255APA0-L12(红)PA1-L11(绿)PA2-L10(黄)
PA3-L9(红)PA4-L8(绿)PA5-L7(黄)
PA6-L6(红)PA7-L5(绿)PB0-L4(黄)
PB1-L3(红)PB2-L2(绿)PB3-L1(黄)
⑵运行实验程序。
①打开电源(微机系统),双击“Intel8088微机实验系统”图标,点击
下拉式菜单“文件”并选中“新建文件”,把编好的程序输入进去。
2进行编译、连接、装载,如果有错误,请根据提示返回源程序修改。
直到没有错误为止。
3运行程序。
先通过单步运行,注意延迟时间设短的,观察发光二极管的情况,并观察寄存器窗口内各寄存器数据的变化。
然后通过连续运行,再观察发光二极管的情况,并调整延迟时间,直到满意为止。
硬件实验四 A/D转换实验
一、实验目的
了解模/数转换基本原理,掌握ADC0809的使用方法。
二、实验内容
利用实验系统上的0809作为A/D转换器,实验系统上的电位器提供模拟量输入,编制程序,将模拟量转换成数字,通过数码管显示出来。
三、程序框图
注:
A/D地址为FFE0H,字位口地址FFDDH,字形口地址FFDCH
四、实验电路
五、实验步骤
①按实验电路图连接138译码输入端A.B.C,其中A连A2,B连A3,C连A4,138使能控制输入端G与位于地址线A0引出孔所在位置下方的使能控制输出端G作对应连接,该端的寻址范围为0FFE0H~0FFFFH。
②把A/D区0809的0通道IN0用插针接至W1的中心抽头V01插孔(0~5V)。
③把0809的CLK插孔与六位LED显示器左下方的ALE插孔相连,VREF端连接+5V;EXIC1上插上74LS02芯片,A/D区D0~D7接口用8芯排线或8芯扁平线与数据总线D0~D7任一接口相连,其余按A/D实验接线图要求连接。
④编写、运行程序,LED显示器右边二位显示当前采集的电压值转换后的数字量,调节W1,LED的内容将随着电压变化而相应变化,LED以十六进制方式对应显示数字量D7~D0。
硬件实验五 D/A转换实验㈠方波
一、实验目的
了解数/模转换的基本原理,掌握DAC0832芯片的使用方法。
二、实验内容
编制程序,利用0832芯片输出方波。
三、程序框图
四、实验电路
五、编程提示
①首先须由CS片选信号确定DAC寄存器的端口地址,然后锁存一个数据通过0832输出,典型程序如下:
MOVDX,DAPORT;0832地址
MOVAL,DATA;输出数据到0832
OUTDX,AL
②产生方波信号的周期由延时间常数确定。
六、实验步骤
①按实验四的步骤①要求连接138译码电路,把D/A区0832片选CS信号线接至译码输出插孔Y0。
②将D/A区WR插孔连到六位LED显示的左下方控制线WR或IOWR插孔。
③将电位器W2的输出VREF连到D/A区的VREF上,调节W2使VREF为+3.5V。
④用8芯排线或8芯扁平线将D/A区单元总线接口D0—D7与数据总线单元D0~D7任一接口相连。
⑤输入编好的程序并运行,用示波器观察D/A的AOUT插孔,或用软件示波器观察。
应有方波输出。
硬件实验六 D/A转换实验㈡锯齿波
一、实验目的
进一步掌握数/模转换的基本原理
二、实验内容
编制程序,利用0832芯片输出锯齿波。
三、程序框图
四、实验电路(同实验五)
五、编程提示
产生锯齿波程序
0832芯片输出产生锯齿波,只须由AL中存放数据的增减来控制。
当AL中数据从00逐渐增加到FF产生溢出,再从00增大到FF,不断循环,从而产生连续不断的锯齿波。
六、实验步骤
(同实验五)
硬件实验七 8259单级中断控制器实验
一、实验目的
⑴掌握8259中断控制器的接口方法。
⑵掌握8259中断控制器的应用编程。
二、实验内容
编制程序,利用8259芯片的IR作为中断源,产生单一中断,系统显示中断号“7”。
三、程序框图
四、实验电路
五、编程提示
⑴8259芯片介绍
中断控制器8259A是专业性为控制优先级中断设计的芯片。
它将中断源优先级排队,辩别中断源以及提供中断矢量的电路集于一片中。
因此无需附加任何电路,只需对8259A进行编程,就可以管理8级中断,并选择优行模式和中断请求方式,即中断结构可以由用户编程来设定。
同时,在不需要增加其它电路的情况下,通过多片8259A的级联,能构成多达64级的矢量中断系统。
中断序号
0
1
2
3
4
5
6
7
变量地址
20H~
23H
24H~
27H
28H~
2BH
2CH~
2FH
30H~
33H
34H~
37H
38H~
3BH
3CH~
3FH
⑵本实验中使用7号中断源IR7,“SP”插孔和IR7相连,中断方式为边沿触发方式,每按二次AN按钮产生一次中断,编写程序,使系统每次响应外部中断IR7时,显示1个字符“7”,满“7”次后显示“P.”继续等待中断。
六、实验步骤
⑴按实验电路图连接线路:
1按实验四的步骤①要求连接138译码电路,“SP”插孔和8259的7号
中断IR7插孔相连,“SP”端初始为低电平。
②8259的CS端连138译码器的Y0孔。
③将8259的单元总线接口D0~D7,用8芯排线或8芯扁平线与数据总
线单元D0~D7任一接口相连。
⑵运行实验程序
⑶按动AN按钮,LED数码管从最高位开始依次显示“7”,显示满六位后,
最高位显示“P.”继续等待中断。
硬件实验八 定时/计数器、8253方波
一、实验目的
⑴学会8253芯片和微机接口原理和方法。
⑵掌握8253定时器/计数器的工作方式和编程原理。
二、实验内容
8253的0通常工作在方式3,产生方波。
三、程序框图
四、实验电路
五、编程提示
8253芯片介绍
8253是一种可编程定/计数器,有三个十六位计数器,其计数频率范围为0~2MHZ,用+5V单电源供电。
8253的功能用途:
⑴延时中断⑸实时时钟
⑵可编程频率发生器⑹数字单稳
⑶事件计数器⑺复杂的电机控制器
⑷二进制倍频器
8253的六种工作方式:
⑴方式0:
计数结束中断⑷方式3:
方波频率发生器
⑵方式1:
可编程频率发生⑸方式4:
软件触发的选通信号
⑶方式2:
频率发生器⑹方式5:
硬件触发的选通信号
8253的0号通道工作在方式3,产生方波。
六、实验步骤
⑴按实验电路图连接138译码输入端A.B.C,其中A连A2,B连A3,C连
A4,138使能控制输入端G与位于地址线A0引出孔所在位置下方的使
能控制输出端G作对应连接,该端的寻址范围为0FFE0H~0FFFFH。
其余
实验电路图连接线路:
①8253的GATE0接+5V。
28253的CLK0插孔接分频器74LS393的T2插孔,分频器的频率源为:
4.9152MHz(已连好)。
T2插孔的频率为614.4KHz
③把8253的CS孔与138译码器的Y0孔相连。
④用8芯排线或8芯扁平线把D0~D7总线接口(
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 微机 原理 接口