微机原理及应用实验-简 - 图文 下载本文

《微机原理及应用》实验教程

二、实验仪器、设备及材料

● PC机及配套的微机接口实验装置; ● IC芯片:8253 ● 示波器

三、实验内容

● 根据要求进行方案设计; ● 利用实验装置进行电路插接; ● 编程运行并用示波器进行测试。

四、实验步骤

(1)方案设计

考虑到实验装置提供1MHz时钟,其周期为1us,而本实验所要求产生的两路时钟信号,其负脉冲宽度均为1us;所以,如果仅仅考虑所要求的波形,这两路信号都可以利用1MHz时钟经8253方式2分频后产生。但是本实验要求这两种时钟信号有确定的相位关系,即第2路时钟要比第1路时钟相对滞后10us。设计方案有两种:第一种方案,两路信号由8253两个通道按方式2分频产生,第一个通道先触发工作,滞后10us,第二个通道再触发工作;第二种方案,第一路信号由8253一个通道按方式2分频产生,第二路信号由第一路信号延时10us后产生。

第一种方案,利用8253通道0和1构造两个分频器,均按方式2工作,分别产生两路时钟信号,电路结构如图5.4:

图6.4 8253时钟电路方案(一)

编程时首先触发通道0工作,延时10us后触发通道1工作,即可满足设计要求。这是一种软、硬件相结合的方案。

第二种方案,利用8253通道0构造分频器,按方式2工作,输出第1路时钟信号,再利用通道1按方式5工作,并利用通道0输出信号对通道1进行触发,经通道1延时后输出第2路信号,可满足设计要求。以下分析通道1的工作原理。根据方式5的工作时序,是由GATE信号触发计数的,如果GATE信号是一个负脉冲,其后沿(即升沿)触发计数,计数值归零时,该通道会产生一个负脉冲,此输出脉冲与触发脉冲相比,显然是延时了一段时间。所以,如果用通道0的输出信号(频率为10KH2的负脉冲)对通道1进行连续触发,那么通道1输出的信号也是频率为10KHz的负脉冲,只不过延时了一段时间而已。电路结构如图5.5:

27

《微机原理及应用》实验教程

图6.5 8253时钟电路方案(二)

这是一种纯硬件方案。下面进一步确定延时的时间与通道1计数初值之间的关系。设通道1的计数初值为n,则有以下时序图:

图6.6 8253工作方式5时序

可见,OUT1输出的负脉冲要比GATE1的触发脉冲滞后n+2个周期,当CLK1=1MHz时,取n=8即可满足要求。

(2)电路插接

8253由实验装置提供,采用通道0和1。方案一插接方法如下:

● 8253数据线D0-D7、地址线A0、A1、控制线RD、WR分别和总线相连接; ● 8253引脚CS连接地址译码器输出Y0;

● CLK0和CLK1接实验装置提供的1MHz时钟源; ● GATE0和GATE1接高电平;

● OUT0输出第1路信号,接示波器通道1探头; ● OUT1输出第2路信号,接示波器通道2探头。 方案二接方法如下(前三项同上):

● GATE0接高电平; ● OUT0接GATE1,并输出第1路信号,接示波器1探头; ● OUT1输出第2路信号,接示波器通道2探头。 (3)编程与运行

编程与运行可在DEBUG环境下进行。 方案一参考程序如下: XXXX: 100 MOV CX,n

103 MOV DX,303 106 MOV AL,14 108 OUT DX,AL 109 MOV AL,54

28

《微机原理及应用》实验教程

10B OUT DX,AL 10C MOV AL,64

10E MOV DX,300 111 OUT DX,AL 112 114 116 119

LOOP 112 MOV AL,64 MOV DX,301 OUT DX,AL

11A INT 3

程序运行后即可在OUT0和OUT1端输出所要求的连续时钟信号。程序第一条指令中n的值与延时时间有关,通过尝试求出n值,使通道1触发时间比通道0滞后10us。

方案二参考程序如下: XXXX: 100 MOV DX,303

MOV AL,14 OUT DX,AL MOV AL,5A OUT DX,AL MOV AL,64 MOV DX,300 OUT DX,AL MOV AL,8 MOV DX,301 OUT DX,AL INT 3

程序运行后即可在OUT0和OUT1端输出所要求的连续时钟信号。

在以上两个程序中,对通道0和1的编程顺序是先写通道0控制字,接着写通道1控制字;然后写通道0计数初值,再写通道1计数初值。这种交叉方式是允许的。对任何一个通道来说,只要编程顺序是先写控制字,后写计数初值,并且后者的字节数与前者的选定相符即可,至于各个通道编程顺序是否交叉则是无关紧要的。

方案二还可以直接利用DEBUG输出命令O对8253进行编程: ● O303 14<CR> ● O300 64<CR> ● O303 5A<CR> ● O301 8<CR>

编程后即可在OUT0和OUT1端输出所要求的连续时钟信号。

(4)观测与调试

调整示波器,双通道模式,按通道1同步,使跟迹显示整个周期的波形,观测并记录有关参数。对于方案一,调整程序中的参数n,观测其对输出波形的影响,以确定n值。

五、思考题

(1)方案一的n值应如何选定?

(2)方案二通道0和通道1两个计数初值与题目给出的条件有何关系?

六、实验报告

● 总结本实验的两种方案并绘制逻辑原理图 ● 回答思考题

29

《微机原理及应用》实验教程

实验七 8255A并行通信接口的应用

7.0 基础知识

并行通信接口芯片8255A的基本功能是以并行的方式在系统总线与I/O设备之间传送数据。8255A共有3个I/O端口,其中A口和B口均为8位,而C口即可以作为8位端口,又可以分解为两个4位端口。8255A共有3种不同的工作方式,方式0为基本I/O方式,方式1为选通I/O方式,方式2为双向I/O方式。端口A可以选择方式0、1、2,端口B、C可以选择方式0、1,而端口C首先要按照端口A和B的工作方式提供相应的联络线,剩余部分则只能按照方式0工作。A口和B口的输入输出都具有数据锁存功能,C口输出有锁存能力,而输入没有锁存能力。

8255A芯片的内部结构和引脚如图6.1所示。

图7.1 8255芯片结构和引脚

8255A有2位地址线A0和A1用于内部寻址,内部地址分配如下: A1 A0 00 01 10 读操作 读A输入数据 读B输入数据 读C输入数据 写操作 写A输出数据 写B输出数据 写C输出数据 读状态字 写控制字 11 8255A控制字分为两种,一种是方式控制字,另一种是C口位写控制字。 方式控制字的格式如下:

其中A组的方式可以是00、01、10,B组的方式可以是0、1,所有的方向控制位为0表示输出、为1表示输入。8255A只需要一个方式控制字就可以决定其全部工作方式。

30