Files
final-exam/接口与通讯技术/试题册/试题A.md
T

238 lines
9.9 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
---
tags: [试题, 接口与通讯技术]
create time: 2026-06-26 22:20
---
# 试题A
## 概述
武昌首义学院 "接口与通讯技术" 期末考试试卷 A。本试卷包含填空题、单项选择题、简答题和综合应用设计题四大题型,涵盖 8255、8253/8254、8259A、8251 等可编程接口芯片以及 ADC0809、DAC0832 等 A/D 与 D/A 转换器的相关知识。
## 正文
### 一、填空题(每空 1 分,共 20 分)
1. 输入/输出接口的基本功能有:对输入/输出数据进行缓冲和锁存、对 I/O 端口进行寻址、提供联络信号、( **信号电平转换** )和( **数据格式转换** )。
2. 8086CPU 的 I/O 端口编址方式为:I/O 端口与内存统一编址和( **I/O 端口独立编址** )两种方式;直接寻址的 I/O 端口地址范围为( **00H~FFH** )。
3. 8255A 的 B 端口可工作在( **方式 0、方式 1** )和方式 2 三种工作方式下。
4. 利用 8253/8254 定时/计数器产生方波信号输出时,应使其工作在( **方式 3** )。
5. 串行异步通信中,1 位起始位、7 位数据位、1 位奇偶校验位和 1 位停止位所传送一帧数据的位数为( **10** )。
6. 8259A 的中断屏蔽寄存器 IMR 中某位被置 1,表示( **屏蔽对应的中断请求** )。
7. RS-232C 标准采用负逻辑,逻辑"1"电平为( **-3V~-15V** ),逻辑"0"电平为( **+3V~+15V** )。
8. 8251A 的 TXRDY 信号变高表示( **发送缓冲器空** ),此时 CPU 可以向 8251A 写入新的数据。
9. 8254 的计数器 0 工作于方式 2,计数初值为 10H,则 OUT0 输出信号的周期为( **CLK0 周期的 16 倍** )。
10. ADC0809 有( **8** )个模拟输入通道,采用( **逐次逼近** )转换方式,分辨率为( **8** )位。
### 二、单项选择题(每题 2 分,共 30 分)
1. 当 CPU 读取 8255A 的端口数据时,8255A 的引脚信号中有效的是( **B** )。
- A. $\overline{WR}$ 有效
- B. $\overline{RD}$ 有效
- C. $\overline{CS}$ 无效
- D. 以上都不对
2. 8255A 的 A 端口可工作在方式 0、方式 1 和方式 2 下,其中方式 2 只能在( **A** )实现。
- A. A 端口
- B. B 端口
- C. C 端口
- D. 都可以
3. 下列芯片中,不能用于实现并行 I/O 接口的是( **C** )。
- A. 8255A
- B. 74LS244
- C. 8251A
- D. 74LS373
4. 对串行接口 8251A 进行编程时,方式控制字的写入必须在( **C** )后写入。
- A. 软件复位
- B. 硬件复位
- C. 写入命令控制字
- D. 以上都不对
5. 用 8253/8254 输出频率为 1KHz 的方波信号,若 CLK0 的频率为 2MHz,则计数初值应为( **B** )。
- A. 2000
- B. 20000
- C. 200000
- D. 200
6. 8259A 在全嵌套方式下,若 IRQ5 正在服务,则 IMR 中断优先级为( **D** )。
- A. IRQ4 > IRQ5 > IRQ6
- B. IRQ6 > IRQ5 > IRQ4
- C. IRQ4 = IRQ5 = IRQ6
- D. 无法确定
7. 某串行通信系统要求传送速率为 2400 波特,采用 1 位停止位、8 位数据位、无校验,则每秒最多传送的字符数为( **A** )。
- A. 300
- B. 1200
- C. 3000
- D. 240
8. 8255A 的控制字寄存器地址为( **B** ),则 PC 口的按位控制字的地址也是该地址。
- A. 0FFFEH
- B. 0FFFDH
- C. 0FFFCH
- D. 0FFFBH
9. 一片 8259A 可管理( **B** )级优先级中断,使用两片 8259A 级联可管理( **C** )级优先级中断。
- A. 8, 15
- B. 8, 16
- C. 8, 15
- D. 8, 14
10. 采用 ADC0809 对 8 路模拟量进行巡回采样,若对通道 0 采集第 1 次,则对通道 3 采集第 5 次时对应地址应为( **D** )。
- A. 03H
- B. 07H
- C. 13H
- D. 0AH
11. 某系统中,数据段 1000H 单元开始的 5 个字节为 21H、31H、32H、34H、35H,则 1543H 为( **D** )。
- A. 21H
- B. 35H
- C. 34H
- D. 32H
12. 8251A 的 TxC 引脚信号的功能是( **A** )。
- A. 接收时钟
- B. 发送数据
- C. 发送时钟
- D. 接收数据
13. 若 8255A 的 A 端口地址为 2F0H,则 C 端口地址为( **B** ),控制字寄存器地址为( **B** )。
- A. 2F2H, 2F3H
- B. 2F2H, 2F3H
- C. 2F2H, 2F2H
- D. 2F2H, 2F3H
14. 在 8086 系统中,用 8253/8254 产生 10Hz 方波输出信号,若输入 CLK 信号频率为 200KHz,则计数初值为( **C** )。
- A. 10000
- B. 20000
- C. 30000
- D. 2000
15. 一个异步串行通信接口发送数据 10011110,若采用奇校验,则在该字符后发送的校验位为( **D** )。
- A. 0
- B. 1
- C. 不确定
- D. 以上都不对
### 三、简答题(每题 5 分,共 30 分)
1. 什么是中断优先级?在 8086 系统中,8259A 的 ICW2 的作用是什么?
在 8086/8088 系统中,IR0 ~ IR7 对应的中断类型码由 ICW2 决定。ICW2 提供中断类型码的高 5 位(T7 ~ T3),而低 3 位由 8259A 自动填入 IR0 ~ IR7 的编码(000 ~ 111)。
2. 简述 8255A 的 3 种工作方式的特点。
- 方式 0(基本输入/输出):A 口、B 口、C 口均可作为输入/输出口,无需握手信号。
- 方式 1(选通输入/输出):A 口和 B 口可用作输入/输出,利用 C 口的某些位作为联络信号。
- 方式 2(双向总线方式):仅 A 口可工作在此方式下,A 口既可输入又可输出,利用 C 口的 5 位作为联络信号。
3. 试比较串行异步通信和同步通信的区别。
| 特性 | 异步通信 | 同步通信 |
|------|----------|----------|
| 同步方式 | 字符内部同步(起始位/停止位) | 外部时钟同步(同步字符) |
| 传输效率 | 较低(有冗余位) | 较高 |
| 适用场景 | 低速、不连续数据 | 高速、连续数据 |
| 硬件要求 | 简单 | 较复杂 |
4. 简述 A/D 转换器的主要性能指标。
- **分辨率**:A/D 转换器能分辨的最小模拟输入变化量,常用位数表示。
- **转换时间**:从启动转换到转换结束所需的时间。
- **转换精度**:实际输出与理想输出之间的误差。
- **量化误差**:量化过程中产生的固有误差。
5. 8253/8254 的方式 2 和方式 3 有何区别?
- 方式 2(频率发生器):输出连续的负脉冲,脉冲宽度为 1 个 CLK 周期。
- 方式 3(方波发生器):输出对称方波,占空比约为 50%。
6. 简述 8259A 的中断响应过程。
(1)当 IRi 引脚有中断请求且未被屏蔽时,8259A 向 CPU 发出 INT 信号。
(2)CPU 响应中断,发出 $\overline{INTA}$ 脉冲。
(3)8259A 在第一个 $\overline{INTA}$ 脉冲期间将中断类型码送上数据总线。
(4)CPU 获取中断类型码,转去执行相应的中断服务程序。
### 四、综合应用设计题(每题 10 分,共 20 分)
**第 1 题**
8254 产生定时脉冲信号输出给 PC 7 作为声光报警信号。(已知 8254 端口地址为 300H ~ 303H,CLK 信号频率为 2MHz)
利用 8253/8254 可编程定时/计数器实现定时报警功能。8254 具有 3 个独立的 16 位计数器,每个计数器有 6 种工作方式。当采用方式 2(频率发生器)时,计数器在计数过程中输出端 OUT 产生连续的脉冲信号。
(1)写出 8254 的控制字格式。 (2 分)
控制字格式:D7 D6(选择计数器)D5 D4(读/写格式)D3 D2 D1(工作方式)D0(数制选择)
(2)若要在 OUT 端输出频率为 2000Hz 的信号,试编写 8254 初始化程序片段。 (4 分)
```
; 假设 8254 端口地址为 300H ~ 303H
; CLK 输入频率为 2MHz,要求 OUT 输出 2000Hz
; 计数初值 = 2MHz / 2000Hz = 1000
MOV DX, 303H ; 控制字寄存器地址
MOV AL, 34H ; 计数器 0,方式 2,16 位,二进制
OUT DX, AL
MOV DX, 300H ; 计数器 0 端口
MOV AX, 1000 ; 计数初值
OUT DX, AL ; 先送低 8 位
MOV AL, AH
OUT DX, AL ; 再送高 8 位
```
(3)画出 8254 产生报警输出的连接电路简图,标注主要信号。 (4 分)
> [!info] 电路说明
> 8254 的 CLK0 接 2MHz 时钟源,GATE0 接 +5V(允许计数),OUT0 输出 2000Hz 信号经驱动电路接声光报警装置。8254 的 $\overline{CS}$ 接地址译码器输出(对应地址 300H~303H),$\overline{RD}$、$\overline{WR}$ 分别接 CPU 的 $\overline{RD}$、$\overline{WR}$ 信号,A0、A1 接地址总线低 2 位。
**第 2 题**
已知 ADC0809 在 8086 系统中以查询方式对 8 路模拟量进行巡回采样,转换结果存入数组 BUF 中,已知 8255A 端口地址为 300H ~ 303H。
(1)ADC0809 的时钟信号由 8254 的 OUT0 输出信号提供,如果 8254 的 CLK0 输入频率为 2MHz,若要给 ADC0809 提供 640KHz 的时钟信号,求 8254 的计数初值。 (2 分)
$$
计数初值 = \frac{CLK0频率}{OUT0输出频率} = \frac{2MHz}{640KHz} = \frac{2000KHz}{640KHz} \approx 3.125
$$
取整数值为 3(或根据实际需要取 4),计数初值 = 3。
(2)写出初始化 8254 的程序片段。 (4 分)
```
; 8254 端口地址 300H ~ 303H,CLK0 = 2MHz
; 要求 OUT0 = 640KHz,计数初值 = 3
MOV DX, 303H ; 控制字寄存器
MOV AL, 10H ; 计数器 0,方式 0,低字节,二进制
OUT DX, AL
MOV DX, 300H
MOV AL, 03H ; 计数初值 = 3
OUT DX, AL
```
(3)画出采用查询方式完成 8 路 A/D 转换的程序流程图。 (4 分)
> [!info] 流程说明
> 程序流程:初始化 → 设置通道号计数器(初值 8) → 设置数据缓冲区指针 → 送通道地址启动转换 → 查询 EOC 信号(等待转换结束) → 读取转换结果 → 存入缓冲区 → 指针加 1 → 通道号加 1 → 判断 8 路是否全部完成 → 若未完成则返回启动下一通道,若完成则结束。
---
> [!note] 备注
> 以上为试题卷部分(第 1 ~ 4 页)。第 5 ~ 7 页为参考答案,已单独收录于试卷文件的参考答案部分。