微计算机原理(第2版)第八章课后习题答案 潘名莲 马争 丁庆生 编著

上传人:kms****20 文档编号:40532256 上传时间:2018-05-26 格式:DOC 页数:12 大小:91KB
返回 下载 相关 举报
微计算机原理(第2版)第八章课后习题答案  潘名莲 马争 丁庆生 编著_第1页
第1页 / 共12页
微计算机原理(第2版)第八章课后习题答案  潘名莲 马争 丁庆生 编著_第2页
第2页 / 共12页
微计算机原理(第2版)第八章课后习题答案  潘名莲 马争 丁庆生 编著_第3页
第3页 / 共12页
微计算机原理(第2版)第八章课后习题答案  潘名莲 马争 丁庆生 编著_第4页
第4页 / 共12页
微计算机原理(第2版)第八章课后习题答案  潘名莲 马争 丁庆生 编著_第5页
第5页 / 共12页
点击查看更多>>
资源描述

《微计算机原理(第2版)第八章课后习题答案 潘名莲 马争 丁庆生 编著》由会员分享,可在线阅读,更多相关《微计算机原理(第2版)第八章课后习题答案 潘名莲 马争 丁庆生 编著(12页珍藏版)》请在金锄头文库上搜索。

1、第第 8 章章 可编程通用接口芯片可编程通用接口芯片8-1 微计算机系统中为什么要使用接口? 解:解:通过 I/O 接口可以实现外设与 CPU 之间的时序匹配、数据格式转换、电平转换等功能。8-2 有几种类型的接口?它们具有哪些特点? 解:解:从使用范围上说,I/O 接口可分为专用接口和可编程通用接口两大类。前者针对某类 外设的特性而专门设计的,后者则由用户通过程序设置其工作方式,可实现不同外设所要 求的接口功能。8-3 何谓并行接口,何谓串行接口?它们有什么作用? 解:解:并行接口可以实现 CPU 与外设之间数据的并行传输,即可在多根数据线上同时传输多 位数据;串行接口实现 CPU 与外设之

2、间数据的串行传输,两个传输方向各只有 1 根数据线, 每次只能传 1 位数据,多位数据需要分时顺序传送。8-4 简述 8255A 的作用与特性。 解:解:8255A 是可编程通用并行接口芯片,可通过程序设置其工作在方式 0、方式 1 和方式 2。 方式 0 为基本的输入/输出方式,可提供 A 口、B 口两个 8 位并行通道和 C 口高 4 位、 C 口低 4 位两个 4 位并行通道,可分别设置 4 个通道工作在输入或输出状态。方式 1 为选通输入/输出方式,A、B 两个 8 位口工作在输入或输出状态,而 C 口的特定 位则提供 A 口、B 口数据传输所需的控制和状态信息。方式 2 为双向数据传

3、输方式,只适用于 A 口,通过 A 口可实现 CPU 与外设间的双向数 据传输。C 口提供双向数据传输所需的控制和状态信号。8-5 试画出 8255A 与 8086CPU 的连接图,并说明 8255A 的 A0,A1 地址线与 8086CPU 的 A1、A2 地址线连接的原因。 解:解:(1)两个芯片是数据线分别对应连接,8086 的 A3A9 经译码器后连到 8255 的 CS 脚, 8086 的 A2、A1 分别连到 8255A 的 A1、A0 脚,然后/WR 、/DR 分别对应连接即可。 (2)原因: 由于 8086CPU 可在一个传数周期内传 8 位或传 16 位,当传低 8 位数据

4、D0D7 时, 8086CPU 的 A0h 必为低。而 8255 的地址线 A0、A1 表示 4 个有效地址时,A0 有时应为高。 为保证数据线的 D0D7 传数,8086CPU 在 A0 必为低的条件下,将 8086CPU 的 A1、A2 与 8255 的 A0、A1 相连,保证了数据的正确传送。8-6 8255A 有哪些工作方式?简述各种方式的特点和基本功能。 解:解: (1)8255A 有三种工作方式,即基本输入/输出方式 0,选通输入/输出方式 1、双向数据传 送方式 2. (2)基本输入/输出方式 0 的特点和基本功能: 特点:无联络信号要求。 功能:两个 8 位并行通道,A 通道,

5、B 通道。两个 4 位并行通道,C 通道高 4 位,C 通道低 4 位。各通道可为输入通道或输出通道。为输入通道时,无锁存功能。为输出通道时,有 锁存功能。 (3)选通输入/输出方式 1 的特点和基本功能。 特点:要用联络信号,有中断输出。A、B、C 通道分为两组使用,C 通道作为联络信号及中断输出用。 功能:A 口、B 口可作输入或输出。输入/输出时均有锁存功能,可工作于查询方式及中断方式。 (4)双向数据传送方式 2 的特点和基本功能。 特点:外设与 CPU 间数据可经 8255A 的 A 通道双向传送。 功能:仅 A 通道可工作在方式 2.用于需双向数据传送的外设,如磁盘驱动器,可工作于

6、查询方式和中断方式。8-7 简述 8255A 工作在方式 1 时,A 组端口和 B 组端口工作在不同状态(输入或输出) 时,C 端口各位的作用。 解:解: (1)A 组端口工作方式 1,输入。 PC4(STBA)为选通输入,低电平有效。 PC5(IBFA)为输入缓冲区满状态信号,高电平有效。 PC3(INTRA)为中断请求输出信号,在 PC4 置 1 后,若 PC5=H,则产生高电平中断请求 输出。 (2)B 组端口工作于方式 1,输入。 PC2(STBB)作用同 ATBA PC1(IBFB)作用同 IBFA PC0(INTRB)作用同 INTRA,不同点为 PC2置 1.若 A 口、B 口均

7、作为方式 1 输入,则 PC6, PC7 可单独用于输入或输出。 (3)A 组端口工作在方式 1,输出。 PC7(OBFA)为输出缓冲区满输出信号端,低电平有效。 PC6(ACKA)为外设收到数据后的响应输入端,低电平有效。 PC3(INTRA)为中断请求输出,条件是 PC6置 1,PC7=H,即当输出缓冲区空时,产生高 电平中断请求。 (4)B 组端口工作于方式 1,输出 PC1(ACKB)作用同(ACKA) PC1(OBFB)作用同(OBFA) PC0(INTRB)作用同 INTRA不同点为 PC2置 1. 若 A 口、B 口均工作在方式 1 输出,则 PC4,PC5可单独用于输入或者输出

8、。8-8 用 8255A 控制 12 位 A/D 转换器。电路连接示意图如教材 P349 图 8-53 所示。设 B 口 工作于方式 1(输入) ,C 口上半部输入,A 口工作于方式 0(输入) 。试编写 8255A 的初 始化程序段和中断服务程序(注:CPU 采用中断方式从 8255A 中读取转换了的数据) 。解:解: (1)方式控制字 :定义为 9FH:定义为 05H(2)初始化程序段(8255A 端口地址为 60H63H)MOV AL, 9FHOUT 63H, AL ;写 8255A 方式控制字MOV AL, 05HOUT 63H, AL ;写 8255A 置位/复位控制字 PC2=1M

9、OV AL, 00000011BOUT 63H, AL ;置 PC1=H,启动转换STI ;开中断,IF=1HLT ;当数据有效信号给 PC2,将在 PC0 产生中断请求,送 8255A,再送至 8086CPU 的 INTR 引脚,产生中断请求CLI ;关中断,IF=0(3)中断服务程序ADINT PROC FARPUSH AXIN AL, 62H ;A/D 数据高 4 位经 PC4PC5读入MOV AH, AL ;A/D 高 4 位放 AH 寄存器IN AL, 61H ;A/D 数据低 8 为经 B 通道读入MOV BUFF, AX ;12 位 A/D 数据存入存储器单元 BUFFPOP A

10、X IRET ADINT ENDP8-9 使用 8255A 作为 CPU 与打印机接口。A 口工作于方式 0(输出) ,C 口工作于方式 0。8255A 与打印机和 CPU 的连线如教材 349 页图 8-54 所示。试编写一程序,用查询方式 将 100 个数据送打印机输出(8255A 的端口地址及 100 个数据的存放地址自行设定) 。 解:解: (1)工作原理CPU 置 8255A 的 PC6=L 时,向打印机发要求打印命令。 若打印机空,则向 PC0 发高电平响应信号。 若 CPU 查询到 8255A 的 PC0=H,则经 A 口向打印机发打印数据。 (2)8255A 控制字 :定义为

11、81H 1001111x0xxx010110000xx1注:A 口方式 0 输入、B 口未用,PC4PC7 为输入。 (3)8255A 端口地址,定义为 300H303H。 (4)编程DATA SEGMENTBUFF DB 100 DUP(?)DATA ENDSCODE SEGMENTASSUME CS:CODE, DS: DATASTART PROC FARPUSH DSMOV AX, 0PUSH AXMOV AX, DATAMOV BX, OFFSET BUFFMOV CX, 100MOV AL, 81HMOV DX, 303HOUT DX, AL GAG: MOV AL, OCHOUT

12、DX, ALMOV DX, 302H POLL: IN AL, DXTEST AL, BXJZ POLLMOV AL, BXMOV DX, 300HOUT DX, ALINC BXDEC CXJNZ GAGRET START ENDP CODE ENDSEND START8-10 8251 和调制解调器的连接如图教材 349 页图 8-55 所示。已知控制字端口地址为 68H。试编写下列程序段。 异步方式下的初始化程序段:设定字符 7 位、1 个偶校验位、2 个停止位、波特率因子 16,启动接收和发送器。 同步方式下的初始化程序段,设定双同步字符(字符自行设定) ,内同步方式,字符 7 位、

13、偶校验、启动接收集合发送器。 解:解: (1)异步方式控制字 =FAH 异步方式控制字=27H (2)同步方式控制字=38H同步方式控制字=A7H (3)异步方式下的初始化程序 MOV AL, 0FAH OUT 68H, AL MOV AL, 27H OUT 68H, AL (4)同步方式下的初始化程序 MOV AL, 38H OUT 68H, AL MOV AL, 0A7H OUT 68H, AL 8-11 在上题条件下采用状态查询方式,输入 100 个数给 CPU,放在首地址符号为 Buffer 的内存缓冲区中(每输入一个字符需检测错误信息标志,出错时转入出错程序处理) 。解:解:DATA

14、 SEGMENTBuffer DB 100 DUP(?)DATA ENDSCODE SEGMENT ASSUME CS: CODE, DS: DATASTART: MOV AX, DATAMOV DS, AXMOV DX, 68HMOV AL, 0CALL CHAROUTCALL CHAROUTCALL CHAROUTMOV AL, 40H ;复位 8251ACALL CHAROUTMOV LA, 0FAH ;写方式字CALL CHAROUT11111010001001110011100000111000MOV AL, 27H ;写命令字CALL CHAROUTLEA BX, Buffer ;

15、BX 指向 BufferMOV CX,100 ;收 100 个字符CHECKRX: IN AL, 68H ;检查串口是否收到数据TEST AL, 02HJZ CHECKRXTEST AL, 38H ;检测数据接收是否出错JNZ ERRORIN AL, 60H ;读取串口数据MOV BX, ALINC BXLOOP CHECKRXJMP EXITERROR: MOV AL, 7MOV BX, 0MOV AH, 14INT 10H ;扬声器响一下,表示数据接收出错JMP CHECKRXCHAROUT: OUT DX, ALMOV CX, 10LOOP $RET EXIT: MOV AH, 4CHINT 21HCODE ENDSEND START8-12 采用中断方式完成上题要求。 解:解: 本解中 CPU 以中断方式读取 8251A 串行接收到的数据。 可以将 8251A 的 RxRDY 管脚接到 PC 机 8259A 的 IRQ2 中断输入端,该输入端对应的中 断类型号为 0AH。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 科普知识

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号