微机原理与接口技术(第3版)习题与答案 第7章_第1页
微机原理与接口技术(第3版)习题与答案 第7章_第2页
微机原理与接口技术(第3版)习题与答案 第7章_第3页
微机原理与接口技术(第3版)习题与答案 第7章_第4页
微机原理与接口技术(第3版)习题与答案 第7章_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第7章习题答案

练习题1

7.2-18255A与CPU之间的数据总线为()数据总线,8255A与外设间每个端口的数据为(:•»

A.4位B.8位C.16位D.32位

A.4位B.8位C16位D.32位

【解答】B,B

7.2-28255A的氏=0、Ai=0、A(F0,而5=0时,完成的工作是()。

A.将A口数据读入B.将B口数据读入C.将C口数据读入D.将控制字寄存器内容读入

【解答】A

7.2-38255A的诲=0、Ai=kAo=l、颓=0时,完成的工作是()。

A.将数据写入A口B.将数据写入B口C.将数据写入CDD.将控制字写入控制字寄存器

【解答】D

7.2-48255A的工作方式控制字为80H,其含义为()。

A.A、B、C口全为方式0输入

B.A、B、C口全为方式0输出

C.A口为方式2输出,B、C口全为方式0输出

D.A、B口全为方式0输出,C口任意

【解答】B

7.2-5下列数据中,()有可能是8255A的工作方式控制字。

A.OOHB.79HC.80HD.54H

【解答】C

7.2-6某一8255A芯片,需要对PCs置位,则CU的位控制字应为。

【解答】00001001B

7.2-7试编写程序使B口和C口均工作在方式0输出,并使PBs和PCs输出低电平,而其他位的状态保

持不变。设8255A的端口地址为8cH〜8FH,CPU为8088。

【解答】

I)根据题目要求875SA的T作方式控制字为IxxxOOOnR,设其为IOOOOOOnR=XOH-

2)使PBs输出低电平而其他位状态保持不变的方法为:使原B口状态(假设为SPB)和II011I11B

相与后从B口输出(端口地址为8DH)。

3)使PCs输出低电平而其他位状态保持不变的方法有2种

第一种:同上,使原C口状态(假设为SPC)和1101111IB相与后从C口输出(端口地址为8EH)。

第二种,通过C口置位命令00001010B(0AH)使PCs=O,注意该命令应该写入控制字寄存器(端口

地址为8FH)

参考程序段:

MOVAL,80H:8255初始化

OUT8FH,AL

MOVAL,SPB;设SPB为原PB口状态

ANDAL.110111I1B;使PBs为0,而其他位的状态保持不变

OUT8DH,AL;写入PB口

MOVAL.0AH;用C口置位命令使PC5=0

OUT8FH,AL;写入控制字寄存器

:最后2行也可以写成

MOVAL.SPC;i5cSPC为原PC口状态

ANDAL,110111I1B;使PCs为0,而其他位的状态保持不变

OUT8EH.AL;写入PC口

7.2-88255A的三个端口在便用时有什么差别?

【解答】8255A的A口,作为数据的输入、输出端口使用时都具有锁存功能。B口和C口当作为数据的输

出端口使用时具有锁存功能,而作为输入端口使用时不带有锁存功能。

7.2-9设某8086系统中有两个8255A,山74LS138译码器产生这两个芯片的片选信号,如图7.2-7所示。

要求:第1个8255A的A口工作在方式0输出,B口工作在方式0输入,C口高4位为输出,低4位为输

入。第2个8255A的A口为方式0输入,B口为方式1输出,C口高4位输出。

(1)试指出这两个8255A芯片各自的端口地址:

(2)试写出这两个8255A芯片各自的工作方式控制字;

(3)试写出这两个8255A芯片各自的初始化程序。

图7.2-7习题7.2-9图

【解答】

(1)对于1号8255A,49AHA7A,,A从‘ALOIXXIII时片选CS有效,没有参与译码的其他地址信号取

0,因为是8086系统,且根据电路图,8255接低8位数据总线,因此Ao=O,所以PA口地址为010011

I000B,即138H,依次类推PB、PC和控制字寄存器的地址分别是I3AH、13cH、13EH。

对于2号8255A,A9A8A7A6AsA4A3=0Ixxll0时片选诙有效,所以PA口地址为01001100008,即

130H,依次类推PB、PC和控制字寄存器的地址分别是132H、134H、136H。

(2)对于I号8255A,方式控制字为I000G0I1B(83H);对于2号8255A,因为PB口工作在方式1

时,PCo~PC2是B口控制信号,PC3未用,设为输入,则方式控制字为10010101B(95HC

(5)初始化程序如下:

MOVDX,I3EH;初始化1号8255A

MOVAL,83H

2

OUTDX,AL

MOVDX,I36H;初始化2号8255A

MOVAL,95U

OUTDX.AL

练习题2

7.3-18255A只有工作在方式_______下才可以实现双向数据传输,工作方式_______具有中断请求功能。

【解答】2,1、2

7.3-2当8255A工作在方式1输入时,可通过信号()知道外设的输入数据已准备好。

A.READYB.IBFC.STBD.INTR

【解答】C

7.3-38255A工作于方式1输出,AD/B口与外设之间的控制状态联络信号是()。

A.弛与IBFB.IBF与ACKC.丽与亚RD.砺与舒济

【解答】C

7.3-48255A的A口工作在方式2时,B口可以工作在()»

A.方式0B.方式1C.方式2D.方式0或方式I

【解答】A

73-5试指出下列工作方式组合使用时,8255A的C口各位的作用。

(1)A口工作在方式2,B口工作在方式0输入:

(2)A口工作在方式2,B口工作在方式1输入;

(3)A口工作在方式2,B口工作在方式I输出。

【解答】⑴PQ-PCD作为输入/输出线使用,PC7.PC.作为A口联络信号使用。

(2)PJ-PQ作为B口联络信号使用,PC7-PC3作为A口联络信号作用

(3)PCSCo作为B口联络信号使用,PC7.PC3作为A口联络信号作用

7.3-68255A的方式1・股住在什么场合?在方式1时,如何使用联络信号?

【解答】在方式1卜,规定一个端口作为输入端口或者输出端口的同时,自动规定了有关的控制信号和状

态信号,尤其是规定了相应的中断请求信号。这样,在许多采用中断方式进行输入獭出的场合,如果外部

设备能为8255A提供选通信号或者数据接收应答信号,那么,常常使8255A的端口工作于方式1。

以方式1输出为例,当初始化设贵了控制字之后,CPU输出(写)一个数据到端口,丽变为有效的

低电平,表示输出缓冲器满,指示外部设名取数据,同时使INTR信号变为无效的低电平.外部设各取走

锁存在端口的数据之后,使市发出有效的低电平,双响应信号又使砺置位,并使中断请求(中断

允许时)有效。

本章习题

7-1并行接口的特点是什么?

【解答】并行接口传送速度快,多用在实时、高速的场合,适用于距离较近的数据传输。

7-2概要说明8255A的内部结构及基本工作原理。

【解答】8255A的内部结构包括3个数据端口A、B和C口、A组控制器和B组控制器、读写控制逻辑以

及数据缓冲器。

(1)工作方式0:8255A中各端口的基本输入/输出方式。它只完成简单的并行输入/输出操

作,CPU可从指定端口输入信息,也可向指定端口输出信息。

(2)工作方式I:选通输入/输出方式。在这种工作方式下,数据输入/输出操作要在选通信号控

制下完成。

(3)工作方式2:带选通的双向传送方式。8255A中只允许A口处于工作方式2,可用来在两台

处理机之间实现双向并行通信.其有关的控制信号由C口提供.并可向CPU发出中断请求信号.

7-3简述8255A方式1的基本功能。

【解答】方式1是单向输入/输出工作方式,它分为A、B两组,A组由数据口PA和控制口PC高3位组

成,B组由数据口PB和控制口PC低3位组成。数据口的输入/输出都是锁存方式。在工作方式1下,PC

口用做挂钩线,不再是并行的4位或8位数据口。

7-48255A的工作方式控制字和C口位控制字都是写到控制字寄存器的,它们是由什么来区分的?

【解答】根据控制的最高位进行区分,如果最高位为1为方式选择控制字,如果最高位为0,则为C口位

控制字。

7-5图7.5-3为8086系统中8255A实现开关控制发光二极管亮天的接口电路,试问:

(1)8255A的端口地址是多少?

(2)试编写程序实现开关K闭合时发光二极管Li亮,反之Li熄灭(i=0123),并且所有开关断开时

退出程序。

图7.5-3习题7-5的图

【解答】

(I)8255A的端口地址是

A9AsA7A?AiAn8255端口

AtA5A*Ai地址

11000100003I0HA口

01312HB口

10314HC口

11316H控制字寄存器

(2)确定控制字:A口输出,B口输入,所以控制字为10000010B(82H)

4

要求开关合上,小灯亮,开关打开小灯灭。而开关合上时,PB口读入的是低电平0,但是耍小灯

亮,而PA口输出高电平1时小灯,因此在程序中需要取反(用NOT和XOR指令都可以)

CODESEGMENT

ASSUMECS:CODE

START:MOVAL,82H;8255A初始化

MOVDX,316H

OUTDX.AL

LP:MOVDX.314H;读开关状态

INALDX

ANDAL,OFH;屏蔽无关位

NOTAL;取反

MOVDX,310H

OUTDX.AL;输出控制灯的状态

CMPAL.O;判断开关的状态(已经取反了),如果取反后均为0

JZEXIT

JMPLP

EXIT:MOVAH,4CH

INT2111

CODEENDS

ENDSTART

(答案不唯一,仅供参考)

7-6图7.5-4为8086系统中8255A实现开关控制共阳极数码管的接口电路。试问:

(1)8255A的4个端口地址是多少。

(2)请编写程序,使初始时数码管显示0,当开关接至位置1〜7时,数吗管显示相应的数字1~7,

当开关接至位置8时,则退出程序(数码管熄灭)。

A9

A

X

A7B.

A

6

A

0

MIO

A,

A4

A、

Ai

A,

WR

RD

D7~D()

图7.5-4习题7-6的图

【解答】

(1)8255的端口地址是

A4

A9AsA?A6AsA3AzAiAo地址8255端口

1100001000308HA口

0i030AHB口

10030CHC口

11030EH控制字寄存器

(2)程序如下:

IOCONEQU030EH;8255A控制字寄存器

1OAEQU0308H

IOBEQU030AH

10CEQU030CH

CODESEGMENT

ASSUMECS:CODE,DS:DATA

START:MOVAX.DATA

MOVDS,AX

MOVAL.1000000IB:8255A初始化

MOVDX,IOCON4口0输出,C口方式。输入

OUTDX,AL

AGAIN:MOVDX,IOC口开关状态

INALDX

MOVDX.IOA;为数码管输出做准备

LEABX,LED

TESTAL.01H;测试开关1是否闭合

JZPl

TESTAL.02H:测试开关2是否闭合

JZP2

TESTAL.04H:测试开关3是否闭合

JZP3

TESTAL08H;测试开关4是否闭合

JZP4

TESTALI0H;测试开关5是否闭合

JZP5

TESTAL,20H;测试开关6是否闭合

JZP6

TESTAL40H;测试

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论