微机原理与接口技术(第二版)课后习题答案完整版 下载本文

内容发布更新时间 : 2024/11/14 12:11:06星期一 下面是文章的全部内容请认真阅读。

微机原理与接口技术(第二版) 清华大学出版社

习题7

1. 并行接口有何特点?其应用场合如何?

答:一个并行接口包含状态信息,控制信息,和数据信息,这些信息分别存放在

状态寄存器,控制寄存器和数据缓冲缓冲寄存器。从并行接口的电路结构来看,它有硬连接线接口和可编程接口之分。硬连接线接口不能用软件编程方法加以改变,而可编程接口可用软件编程方式加以改变。其应用于打印机,IEEE488接口,开关量接口,控制设备接口等。

2. 可编程并行芯片8255有哪几种工作方式?其差别何在?他们在危机系统中的连接方法有什么不同?

答:8255A有3种工作方式:称为方式0,方式1和方式2。

其中A口可以工作在3种方式中的任一种;B口只能工作在方式0和方式1;C口通常作为控制信号使用,配合A口和B口的工作。

①方式0:基本的输入输出方式

方式0之所以被称为基本的输入输出方式,是因为在这种方式下,A口、B口和C口(C口分为2个4位使用)都可提供简单的输入和输出操作,对每个口不需要固定的应答式联络信号。

工作在方式0下,在程序中可直接使用输入指令(IN)和输出(OUT)指令对各口进行读写。方式0的基本定义如下:2个8位的口和2个4位的口。任何一个口都可以作为输入或输出。输出可以被锁存。输入不能锁存。

方式0一般用于无条件传送的场合,不需要应答式联络信号,外设总是处于准备好的状态。也可以用作查询式传送,查询式传送时,需要有应答信号。可以将A口、B口作为数据口使用。把C口分为2部分,其中4位规定为输出,用来输出一些控制信息;另外4位规定为输入,用来读入外设的状态。利用C口配合A口和B口完成查询式的I/O操作。

②方式1:选通输入/输出方式

在这种方式下,当A口和B口进行输入输出时,必须利用C口提供的选通和应答信号。而且这些信号与C口中的某些位之间有着固定的对应关系,这种关系是硬件本身决定的不是软件可以改变的。由于工作在方式l时,要由C口中的固定位来作为选通和应答等控制信号,因此称方式1为选通的输入/输出方式。

36

微机原理与接口技术(第二版) 清华大学出版社

方式1的基本定义如下:分成2组(A组和B组)。每组包含一个8位的数据口和1个4位的控制/数据口。8位的数据口既可以作为输入也可以作输出,输入和输出都可以被锁存。4位的控制/数据口用于传送8位数据口的控制和状态信息。

③方式2:带选通的双向传输方式

这种双向的传输方式,8255A可以向外设发送数据,同时CPU通过这8位数据线又接收外设的数据。因此称为双向的传输方式。

方式2的基本定义如下:只能适用于A口。一个8位的双向口(A口)和1个5位的控制口(C口)。A口的输入和输出都可以被锁存。5位的控制口用于传送8位双向口的控制和状态信息。

当A口工作在方式2时,由PA7~PA0作8位数据线,因为要由C口对A口进行控制,所以称为带选通的双向传输方式。C口对A口的控制信号如图8.20所示,工作时序如图8.20所示。在这种方式下,C口中有5位PC7一PC3作为控制信号和状态信息使用,剩下的3位PC2~PC0可作为简单的输入/输出线使用。当控制字的D0位为1时PC2~PC0作输入;当控制字的D0位为0时PC2~PC0作输出。

3. 可编程接口芯片8255的控制字有哪两个?其控制字及每位的含义是什么?

控制字分为2种:分别称为方式选择控制字和端口C置1/置0控制字。根据控制寄存器的D7位的状态决定是哪一种控制字。 ①方式选择控制字 字识别位,为1图所示。它由一个选中 D7 D6 D5 D4 D3 D2 D1 D0 方式选择控制00:方式0 8255AA口 PC7PC4 B组方式B口 PC方式选择控制字用来决定三个数据端口各自的工作方式,它的格式如3PC0 ~~01:方式1 1:输入 1:输入 81x位的寄存器组成。:方式2 0:输出 0:输出 A组控制 0:方式0 1:输入 1:输入 1:方式1 0:输出 0:输出 B组控制 ②口C置1/置0控制字

D7 8255A在和CPU传输数据的过程中,经常将C口的某几位作为控制位或状D6 D5 D4 D3 D2 D1 D0 任意值 C口位选择 态位来使用,从而配合A口或B口的工作。为了方便用户,在8255A芯片初始化时,C识别位 口置1/置0控制字可以单独设置到C口的某一位为0或某一位为1,具体的格式如图所示。

为0有效 000:PC0 001:PC1 010:PC2 011:PC3 100:PC4 101:PC5 110:PC6 111:PC7 0:置0 1:置1 C口置位 选中位置1置0选择

37

微机原理与接口技术(第二版) 清华大学出版社

4. 假定8255的端口地址分别为0060H---0063H,编写出下列各情况的初始化程序:

(1) 将A口,B口设置方式0,端口A和C作为输入口,B作为输出口 (2) 将A口设置成方式1,输入口,PC6,PC7作为输出端,B口设置成

方式1,输入口

答:(1)MOV AL, 99H MOV DX, 0063H OUT DX, AL (2) MOV AL, 0B6H

MOV DX, 0063H OUT DX, AL

5. 设8253计数器0~2和控制字I/O地址依次F8H~FBH,说明如下程序的作用。 MOV AL, 33H OUT 0FBH, AL MOV AL, 80H OUT 0F8H, AL MOV AL, 50H OUT 0F8H, AL

答:计数器0,方式1,写两个字节

控制字节送到控制字寄存器 计数值的低位 写低位

计数初值的高位 写高位

6. 定时/计数器芯片Intel 8253占用几个端口地址?各个端口分别对应什么? 答:8253占用4个端口地址,低地址分别为计数器0,计数器1,计数器2,最

高地址端口对应控制字寄存器。

7. 试按如下要求分别编写8253的初始化程序,已知8253的计数器0~2和控制

38

微机原理与接口技术(第二版) 清华大学出版社

字I/O地址依次为04H~07H

(1)计数器1工作在方式0,仅用8位二进制计数器,计数初值为128 (2)计数器0工作在方式1,按BCD码计算,计数值为3000 (3)计数器工作在方式2,计数值为02F0H 答:(1) MOV AL, 50H OUT 07H, AL MOV AL, 128 OUT 05H, AL

(2) MOV AL, 33H OUT 07H, AL MOV AX, 3000

OUT 04H, AL MOV AL, AH OUT 04H,A; (3) MOV AL, 0B4H

OUT 07H, AL MOV AL, 0F0H OUT 06H,AL MOV AL, 02H OUT 06H, AL

8. 设一个8253的端口为0140H—0143H,时钟输入是由8284时钟发生器发出的2.3864MHZ经二分频得到。现在要求使计数器0产生20ms的定时信号,试对它进行初始化编程。

答:根据题意,控制格式字为00110100B

计数次数为23864 程序段如下:

MOV AL , 34H MOV DX, 0143H OUT DX, AL MOV AX, 23864

39

微机原理与接口技术(第二版) 清华大学出版社

MOV DX , 0140H OUT DX, AL MOV AL, AH OUT DX, AL

9.让8253的计数器3工作在单稳态方式,让它产生15ms的脉冲宽度。假设输入频率为2MHz,8253的端口地址为20H—23H,二进制计数方式。 答:方式字为B2H

计数器初值:30000

程序如下:MOV AL , B2H OUT 23H, AL MOV AX, 30000 OUT 20H, AL MOV AL, AH OUT 20H, AL

10.请把一个8253与8086CPU相连,地址为2FF0~2FF3H。

40