资源描述
一:填空题
1、I/O端口通常有两种编址方式,一种是 ,另一种是 。
2、CPU与I/O设备的信息交换方式有无条件传送、 、 及存储器直接存储(DMA)方式。
3、DMA控制器8237A的引脚中,不论由内部还是外部产生一个有效的 信号,都会终止当前的DMA传送,且 DMA控制器的内部寄存器。
4、DMA控制器8237A有 个独立的DMA通道;它既可以在存储器和外设之间进行数据传送,也可以在 之间进行数据传送。
5、中断控制器8259A有奇、偶两个端口地址,在写入初始化命令字(ICW)时, 写入奇端口, 写入偶端口。
6、8259A的三个操作命令字(OCW)中, 是中断屏蔽操作命令字,D7-D0对应于IR7-IR0的引脚,其值可以随时通过输入指令从 端口读取。
7、总线资源的竞争,按照仲裁时对各主模块优先权的确定方法的不同,可将仲裁方法分成
和 。
8、CAN支持四类报文帧,分别是 数据帧 、 远程帧 、出错帧和超载帧。
9、接口芯片8250有四级中断,按优先权从高到低,依次是:接收器线路状态中断、 接收数据准备好 中断、 发送保持寄存器空 中断、调制解调器状态中断。
10、USB设备中,那些完全依赖USB电缆为其供电的USB设备称为 总线供电设备 ,与之相对,那些具有可替换电源供应的USB设备称为 自供电设备 。
11、USB包含四种基本的数据传输类型,分别是控制传输、 中断传输 、 批量传输 和同步传输。
12、8086/8088系统的硬件中断包括 NMI 和 INMI 。
13、中断向量表是存放中断服务程序入口地址的内存区域,表中共有 256 个中断向量,每个中断向量在中断向量表占 4 个字节。
14、8259A的特殊全嵌套工作方式是指:当处理某一级中断时,如果有 同级 的中断请求,也会给予响应,这种工作方式是专门为 8259A的级连 系统提供的。
15、常用串行通信接口芯片有8250和8251A等,当工作在异步串行通信的接收数据时,8250对起始位的采样是连续测试 8 个RCLK时钟周期,而8251A对起始位的采样却只是相隔一段时间采样 1 次。
16、USB设备中,那些完全依赖USB电缆为其供电的USB设备称为 ,与之相对,那些具有可替换电源供应的USB设备称为 。
17、8255A工作在方式0时,任何一个端口既可以作为输入口,也可以作为输出口,共有 16 种不同的组合;但8255A的B端口不能工作在方式 2 。
18、RS-232C在 空号或逻辑“0” 情况下驱动器输出电平为+5V~+15V,在 传号或逻辑“1” 情况下驱动器输出电平为-5V~-15V
19、位于集成电路芯片内部的总线是 片内 总线;而在印刷电路板上连接各芯片的公共通路的总线是 芯片 总线。
20、串行通信的接收端,需要检测三种类型的错误,分别是 奇偶错误 、帧错误和 溢出错误 。
二:单项选择题
1、8259A可编程中断控制器的中断服务寄存器ISR用于 ( A )
A、记忆正在处理中的中断 B、存放从外设来的中断请求信号
C、允许向CPU发中断请求 D、禁止向CPU发中断请求
2、当8255A工作在方式1的输入状态时,8255A在外设之间的联络信号为
A、IBF、 B、OBF、 ( D )
C、IBF、 D、、
3、根据串行通信规程规定,收发双方的 必须保持相同。 ( D )
A、外部时钟周期 B、波特率
C、波特率因子 D、以上都正确
4、通常在PC机中,用作硬盘驱动器和CD-ROM驱动的接口标准是
A、IDE(EIDE) B、SCSI ( A )
C、RS-232C D、USB
5、在微机系统中采用DMA方式传输数据时,数据传送是 ( C )
A、由CPU控制完成
B、由执行程序(软件)完成
C、由DMAC发出的控制信号控制下完成
D、由总线控制器发出的控制信号控制下完成
6、在中断系统中,中断类型号是在 的作用下送往CPU的。( C )
A、读信号 B、地址译码信号
C、中断请求信号INTR D、中断响应信号
7、8255A的PA口工作于方式2,PB口工作于方式0时,其PC口
A、用作一个8位I/O端口 ( C )
B、用作一个4位I/O端口
C、部分作联络线
D、全部作联络线
8、8253可编程定时器/计数器工作在方式0时,在计数器工作过程中,门控信号GATE变为低电平后 ( A )
A、暂时停止当前计数工作
B、终止本次计数过程,开始新的计数
C、结束本次计数过程,等待下一次计数的开始
D、不影响计数器工作
9、利用两片可编程中断控制器8259A级联使用,可使CPU的可屏蔽中断扩大到 A
A、15级 B、16级 C、32级 D、64级
10、DMA读传送是指( C )
A、RAM→RAM B、I/O端口→RAM
C、RAM→I/O端口 D、I/O端口→I/O端口
11、8237A用于内存之间传送数据时,其源地址应放置在( A )
A、通道0的地址寄存器 B、通道1的地址寄存器
C、通道2的地址寄存器 D、通道3的地址寄存器
12、下列两片8259级联的图形中,连接正确的是( B )
A、 B、
C、 D、
13、上题中,若CPU当前响应的是从片提出的中断请求,则在响应过程中,主片从CAS2-CAS0引脚上发出的信号是( C )
A、111 B、100 C、110 D、010
14、下列8259A初始化写入ICW字,顺序正确的是( A )
A、ICW1→ICW3→ICW4 B、ICW1→ICW2→ICW4
C、ICW2→ICW3→ICW4 D、ICW4→ICW3→ICW2
15、常用总线RS—232C 是属于( C )总线。
A、片总线 B、内总线
C、外总线(通信总线) D、地址总线
16、8251A用作异步通信接口,如果设定波特率因子为16,而发送器与接收器时钟频率为19200Hz,则波特率为:( A )
A、1200波特 B、2400波特 C、9600波特 D、19200波特
17、有一8086系统的中断向量表,在0000H:003CH单元开始一次存放34H、FEH、00H和F0H四个字节,该向量对应的中断类型码和中断服务程序入口地址分别是 C
A、0EH,34FE:00F0H B、0EH,F000:FE34H
C、0FH,F000:FE34H D、0FH,00F0:34FEH
18、8255PA口工作方式2,PB口工作在方式0时,其PC口( C )。
A、两个4位I/O端口 B、一个8位I/O端口
C、部分作联络线 D、全部作联络线
19、在8086存储空间中,用一个总线周期访问一个16位的字数据时,BHE和A0必须是(A )。
A、00 B、01 C、10 D、11
20、8253定时/计数器的最大计初值是(A )。
A、65536 B、7FFFH C、0000H D、FFFFH
21、 ISA总线是( B )。
A、8位 B、16位 C、32位 D、64位
22、在8253某计数器工作方式1时,在计数中途OUTi为(B )。
A、高电平 B、低电平 C、由高变低 D、由低变高
23、为PC 机管理可屏蔽中断源的接口芯片是( A )。
A、8259 B、8255 C、8253 D、8251
24、、通常外设接口中,往往有 C 端口才能满足和协调外设工作要求。
A、数据 B、数据、控制
C、数据、控制、状态 D、控制、缓冲
25、通常在可编程16位定时器/计数器中,微处理器不能直接访问 C 单元。
A、控制寄存器 B、计数初值寄存器
C、计数输出锁存器 D、计数执行单元
26、串行通信距离可以达 D 。
A、30米 B、30米左右
C、几米或数千公里 D、几米到数千公里
27、8253每个计数器都有 B 引脚与外部进行联系。
A、WR、RD、CS、 B、OUT、CLK、GATE
C、RESET、READY、CLK D、A1、A0、CS
28、数据传送速率与距离的关系是 D 。
A、相等 B、不相等 C、成正比 D、成反比
29、IBM PC 机所访问的I/O 空间有 A 。
A、256B B、1KB C、64KB D、1MB
30、响应NMI 请求的必要条件是 D 。
A、IF=1 B、IF=0 C、一条指令结束 D、无INTR请求
31、8259 工作在完全嵌套方式时, A 引脚的中断源优先级最高.
A. IR0 B. IR1
C. IR7 D. IR8
32、8255工作在方式0时,它没有 C 功能.
A.输入缓冲 B.输出锁存
C.电流放大 D.总线隔离
33、在定时器/计数器8253的输出端可产生 C 波形.
A. 三角波 B. 正弦波
C. 方波 D. 斜波
34、对逐次逼近式A/D转换器,启动一次转换读入多次数字量,则读入的
数字量 B .
A. 肯定相同 B.可能相同
C. 肯定不同 D.可能不同
35、在数据传送时,占用CPU时间最长的是 A 传送.
A. 中断 B. DMA
C. 通道 D.I/O处理机
三、解释题
1、I/O端口
2、查询传送方式
3、DMA传送方式
4、即插即用
5、EISA总线
6、PCI总线
7、异步串行通信
8、采样与采样率
9、量化与量化单位
四大题:简答题
1、试简述I/O 端口的编址方式,各自有什么特点?
参考答案:
I/O端口通常有两种编址方式,分别是统一编址(存储器映象)方式和独立编址(I/O映象方式)
统一编址的特点:(1)可不设专门的I/O指令(2)输入输出操作灵活(3)端口占用了一定的存储空间
独立编址的特点:(1)需要专门的I/O指令(2)需要专门的信号来区分存储器访问还是端口的访问(3)I/O指令简单,输入输出操作不灵活
2、8237的操作过程由哪几个工作状态组成?
参考答案:
8237的内部操作有7个工作状态组成
分别是:空闲状态SI;请求应答状态S0;数据传送状态S1-S4
其中,S1:开始输出地址允许信号AEN;S2:输出16位地址到存储器;S3:输出读周期;S4:输出写周期
3、简述8237初始化编程的步骤
参考答案:
(1)复位
(2)写入基和当前地址寄存器
(3)写入基和当前字节数寄存器
(4)写入方式字,屏蔽字和命令字
(5)若需要软件发出DMA请求,写入请求字
4、USB主机和USB设备各有哪三个部分逻辑构成?
参考答案:
USB主机的逻辑构成包括:USB主控制器;USB整体系统软件(USB驱动程序、主控制驱动程序、主机软件);客户软件
USB设备的逻辑构成包括:USB接口;USB逻辑设备;功能模块
5、为什么INTR中断有两个中断响应周期?NMI中断和软件中断却没有中断响应周期?
参考答案:
INTR中断响应的第一个总线周期用来通知请求中断的外设,CPU准备响应中断,该准备好中断类型码;在第二个总线周期中,要求请求中断的外设在接到第二个负脉冲以后立即把中断类型码通过数据总线送给CPU
NMI中断和内部中断,由于中断类型码要么可以从指令中直接得到,要么中断类型码为已知固定值,所以不需要中断响应周期去获取中断类型码。
6、试述RS232C总线中,DTR、DSR、RTS和CTS的作用?
参考答案:
RTS:请求发送线,由DTE发出DCE接收
CTS:清除发送线
DTR:终端就绪线
DSR:设备就绪线
当有数据要发送时,DTE向DCE发出有效的RTS,以询问信道的连接状况,DCE接收到RTS后,若信道连接完毕,向DCE发有效的RTS信号。
若DTR=1,表示数据终端已经准备好通信;若DSR=1,表示数据通信设备(或外设)已经准备好通信。
7、什么是按键抖动?消除抖动的方法有哪些?
参考答案:
当用手按下一个键时,由于机械触点的弹性作用,往往出现所按键在闭合位置和断开位置之间跳几下才能稳定,这就是抖动
消除抖动的方法有两种:硬件方法,采用RS触发器,使其产生单次手动脉冲
软件方法可以采用延时程序等待10ms-15ms,然后确认此键是否仍然处于闭合状态
8、试用图形表示异步串行通信中一帧字符的格式,并用图形表示同步串行通信中,双同步字符、内同步的信息格式
参考答案:
五、基本设计题
1、某串行异步通信接口传送标准ASCII码字符,约定采用1位奇偶校验位,2位中止位,请回答:
(1)如果在接收端收到的数据波形如下图,则所传送的字符对应的代码是什么?接收端收到的校验位代码是多少?
(2)如果传输的波特率是9600波特,问每秒钟最多可以传送多少个字符?
(3)如果采用的是奇校验,则接收端完此数据信息后,PE的值等于多少?
参考答案:
(1)传送的字符是1010110,接收端收到的校验位代码是1
(2)传送一次字符,需传送11位二进制,故每秒可传送的字符=9600/11=872. 7
(3)若是奇校验,发送端应该发送的校验位代码是1,接收端收到的也是1,因此PE=0,表示传送过程无奇偶校验错误。
2、设8251A工作于异步方式,波特率因子为16,7位ACSII字符,偶校验,两个停止位:错误标志位复位、允许发送、允许接收,数据终端准备好,不发送空白字符,内部不复位。已知8251A端口地址为50H、51H,试求:
(1)方式控制字和命令控制字
(2)对8251A进行初始化编程
8251A方式字格式
8251A操作命令字格式
参考答案:
方式控制字为:11111010B
命令控制字为:00010111B
初始化编程为:
MOV AL, 0
OUT 51H, AL
OUT 51H, AL
OUT 51H, AL
MOV AL, 40H
OUT 51H, AL
MOV AL, 0FAH
OUT 51H, AL
MOV AL, 17H
OUT 51H, AL
3、设8251A工作于异步方式,接收时钟RxC和发送时钟TxC频率均为38.4kHZ,数据发送和接收的波特率为600b/s;数据格式为:7位数据位,偶校验,1个停止位:错误标志位复位、允许发送、允许接收,数据终端准备好,不发送空白字符,内部不复位。已知8251A端口地址为50H、51H,试求:
(1)波特率因子、方式控制字和命令控制字
(2)对8251A进行初始化编程
参考答案:
波特率因子为:38400/600=64
方式控制字为:01111011B
命令控制字为:00010111B (17H) 或者37H
初始化编程为:
MOV AL, 0
OUT 51H, AL
OUT 51H, AL
OUT 51H, AL
MOV AL, 40H
OUT 51H, AL
MOV AL, 3BH
OUT 51H, AL
MOV AL, 17H
OUT 51H, AL
4、用可编程定时/计数器8253组成一个实时时钟系统(如图所示),通道0作为秒信号产生器,通道1和通道2分别作为分和时的计时。设8253的端口地址为20H-23H,试求
(1)各通道的计数初值
(2)编写8253的初始化程序(3个通道均工作在方式2 — 分频器)
参考答案:
(1)
(2)初始化程序为:
MOV AL, 00110100B
OUT 23H, AL
MOV AX, 51200
OUT 20H, AL
MOV AL, AH
OUT 20H, AL
MOV AL, 01010100B
OUT 23H, AL
MOV AL, 60
OUT 21H, AL
MOV AL, 10010100B
OUT 23H, AL
MOV AL, 60
OUT 22H, AL
5、下图为查询式输入接口电路,请回答如下问题:
(1)输入设备在向接口传送8位数据的同时,还要发送选通信号,该信号的作用是什么?
(2)D触发器的作用是什么?
(3)CPU什么时候可读取输入设备送来的数据?试写出程序段
参考答案
(1)STB信号一方面把输入数据存到数据锁存器,另一方面使状态标志触发器置1
(2)D触发器的作用是:D触发器是一个状态标志寄存器,当STB端输入为低电平,D触发器置1,Q端输出1,使得状态位为高电平,表示输入设备准备好
另一方面,当CPU取走数据后,通过D触发器的R位将触发器复位,使得状态标志变为0,输入设备未准备好
(3)CPU检测到D7位为1的时候,可以读数据
程序段:
SCAN: IN AL, 状态口地址
TEST AL, 80H
JZ SCAN
IN AL, 数据口地址
6、8255A的端口A通过一驱动电路外接一个LED显示器(共阴极),端口B方式0输入,端口C的PC0-PC7输出,设8255A的端口地址是90H~93H,试完成下列问题:
(1)对8255A进行初始化的方式命令字是什么?
(2)若使得LED显示大写字母“P”,则端口A应输出什么值?
(3)编写程序段,通过C口的置位/复位控制字,使8255A的PC6发出一个如下图波形的脉冲信号(设已存在延时子程序DELAY1,延时时间1ms;延时子程序DELAY2,延时时间2ms)
参考答案:
(1)初始化方式字:82H
(2)P的输出值为:0CEH(11001110)
(3)程序段:
MOV AL, 00001100B
OUT 93H, AL
CALL DELAY1
MOV AL, 00001101B
OUT 93H, AL
CALL DELAY2
MOV AL, 00001100B
OUT 93H, AL
六、综合设计题(15分)
某系统采用8255A、DAC0832和ADC0809来产生锯齿波,如图所示。试完成下列问题
(1)DAC0832用作波形发生器,工作在直通方式。8255A的PA口工作在方式0输入,PB口方式0输出,PC0-PC3输入;PC4-PC7输出;完成8255A的初始化程序
(2)系统开始工作时, 8255A的PC4输出高电平,控制ADC0809转换器开始转换,当转换结束,EOC变为高电平,从输出端输出D7-D0数据。若CPU采用查询方式读取该数据量,请完成下图8255A和ADC0809的连接。并编写相应的控制程序从PB口读取ADC0809转换的结果,存放BL寄存器中
(3)将BL寄存器中的数据从PA口输出,作为锯齿波输出的数据初值。试编写实现DAC0832产生锯齿波的程序段
(设8255A的端口地址是90H-93H)
参考答案:
(1)MOV AL, 81H;8255的方式字
OUT 93H, AL
(2)连接图如红线所示:
程序:
MOV AL, 09H;PC4置1,启动ADC0809
OUT 93H, AL
L1: IN AL, 92H
TEST AL, 01H
JZ L1
IN AL,91H
MOV BL, AL
(3)锯齿波程序:
MOV AL, 0EH;PC7置0,启动DAC0832
OUT 93H, AL
MOV AL, BL
MOV CX, 100
L2: CMP AL, 0
JNZ L3
MOV AL, BL
L3: OUT 90H, AL
INC AL
JMP L2
2、现有一块ADC0809,要求与8086接口。(1)请在图中设计并完善接口电路,确定I/O端口地址,并说明其工作过程(8分)(2)编写程序实现如下功能:(12分)
· CPU采用查询方式,通过检测数据线D7来检测ADC0809是否转换结束
· ADC0809通过8个模拟通道输入模拟量,依次转换成8个数据
· 转换结束后,数据存入首址为3000H的内存缓冲区中
参考答案:图如下:
I/O端口地址:200H-207H 个模拟输入通道地址,208H状态端口地址
工作过程:CPU通过OUT指令,分别选中一个模拟输入通道,并产生正脉冲送ALE和START,启动0809工作,模拟通道由A0-A2决定,当A/D转换结束后,EOC为高电平,CPU通过查询D7来判断转换是否结束,如果结束,将读入转换后的数字量,依次存入3000H-3007H单元
程序:
MOV BX, 3000H ;内存缓冲区首地址
MOV CX, 0008H ;通道数置通道计数器
MOV DX, 200H ;通道1口地址,从通道1开始
START: OUT DX, AL ;启动一次A/D转换
PUSH DX ;保存通道号
MOV DX, 208H ;指向状态口地址
START1: IN AL, DX ;读EOC状态
TEST AL, 80H ;查EOC(D7)即开始转换了吗?
JNZ START1 ;非0表示未开始,等待
START2: IN AL, DX ;再读EOC状态
TEST AL, 80H ;再查EOC是否为1
JZ START2 ;EOC=0转换未完,等待转换结束
POP DX ;EOC=1,转换结束,恢复通道地址
IN AL, DX ;读取转换数据
MOV [BX], AL ;存入指定的缓冲区
INC DX ;指向下一个输入通道
INC BX ;指向下一个缓冲单元
LOOP START ;通道计数器减1,结果非0,则循环
MOV AX, 4CH ;转换完毕返回系统
INT 21H
3、8255A的A口和B口工作在方式0,A口为输入端口,接有3个开关;B口为输出端口,接有一个7段发光二极管(共阳极),其硬件连接电路如图2所示。
(1)、根据图中连接,写出使7段发光二极管显示数字“0” …“7”的代码
(2)、确定8255A的四个端口地址,无关地址(不参加译码的地址线)取“0”
(3)、编写程序,要求7段发光二极管显示开关所拨通的数字“0”…“F”( K4K3K2K1,如K4K3K2K1=0010,则发光二极管显示数字“2”)
参考答案:
(1)图中七段码虽然是共阳极,但是通过PB口与非门相接,故显示码和共阴极相同,7段发光二极管显示0-7的代码分别是:
“0”3FH,“1”06H,“2”5BH,“3”4FH,“4”66H,“5”6DH,“6”7DH,“7”07H
(2)、确定8255A的四个端口地址
端口地址:A口:8020H,B口:8022H,C口:8024H,控制口:8026H
(3)、编写程序,要求7段发光二极管显示开关所拨通的数字0 …… F(K4K3K2K1)
DATA SEGMENT
TAB DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH,77H,7CH,39H,5EH,79H,71H
DATA ENDS
CODE SEGMENT
ASSUME CS: CODE, DS: DATA
START: MOV DX, 8026H
MOV AL, 90H
OUT DX, AL ;写入方式字
MOV DX, 8022H
MOV AL, 00H
OUT DX, AL ;熄灭LED
SCAN: MOV DX, 8020H
IN AL, DX ;读8255A的A口(开关状态)
AND AL, 0FH
MOV BX, OFFSET TAB
XLAT ;[BX+AL]àAL
MOV DX, 8022H
OUT DX, AL ;显示表示开关状态的数字
PUSH CX
MOV CX, 3000H
DELAY: LOOP DELAY ;延迟一段时间,以显示
POP CX
MOV AH, 4CH
INT 21H ;返回DOS系统
第14页 共14页
展开阅读全文