vault backup: 2026-06-26 22:27:26
This commit is contained in:
@@ -0,0 +1,237 @@
|
||||
---
|
||||
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 页为参考答案,已单独收录于试卷文件的参考答案部分。
|
||||
@@ -0,0 +1,271 @@
|
||||
---
|
||||
tags: [试题, 接口与通讯技术]
|
||||
create time: 2026-06-26 22:20
|
||||
---
|
||||
|
||||
# 试题B
|
||||
|
||||
## 概述
|
||||
武汉科技大学期末考试试卷,考试科目:接口与通讯技术,试卷类型:B卷。本试卷包含填空题、单项选择题、简答题、应用分析题和程序设计题五大题型,满分100分,考试时间120分钟(含附加题)。
|
||||
|
||||
## 正文
|
||||
|
||||
### 一、填空题(每空1分,共20分)
|
||||
|
||||
1. CPU的数据总线为系统总线中的 **[AB]** 与微处理器相连的接口芯片可分为通用接口芯片与 **[专用接口芯片]** 两种。
|
||||
|
||||
2. 在CPU的数据总线与系统总线之间必须配有 **[数据缓冲器(或数据总线驱动器)]**。8286/8287的作用是 **[数据缓冲/驱动]**。
|
||||
|
||||
3. 一个8254通道占用 **[2]** 个地址端口。
|
||||
|
||||
4. 当Intel 8086访问1MB的存储器空间时,低8位芯片数据总线 **[D7~D0]** 与偶地址存储单元连接,高8位芯片数据总线 **[D15~D8]** 与奇地址存储单元连接。因此8086访问1MB存储器空间时需要区分 **[奇偶地址(奇偶字节)]**。
|
||||
|
||||
5. 8255A的内部结构包括数据总线缓冲器、 **[读/写控制逻辑]**、 **[A组控制]** 和 **[B组控制]**。
|
||||
|
||||
6. 8259A有 **[4]** 个初始化命令字, **[3]** 个操作命令字。
|
||||
|
||||
7. 8251A用作异步通信时,通过编程可选择 **[波特率]**、 **[字符长度]**、 **[停止位]** 和 **[奇偶校验方式]** 等。
|
||||
|
||||
8. 8251A的工作方式控制字的 **[D7D6]** 位决定了芯片的工作方式,其中D7D6=00时为同步方式,D7D6=01时为异步方式。
|
||||
|
||||
9. RS-232C采用负逻辑,逻辑"1"对应 **[-3V~-15V]**,逻辑"0"对应 **[+3V~+15V]**。
|
||||
|
||||
10. 8255A的A口工作在方式1输入时,其应答联络信号为 **[STB(选通信号)]** 和 **[IBF(输入缓冲器满信号)]**。
|
||||
|
||||
### 二、单项选择题(每题2分,共20分)
|
||||
|
||||
1. 8086/8088响应中断时,会自动压入堆栈的标志位是 **[B]**。
|
||||
- A. INTR
|
||||
- B. IF和TF
|
||||
- C. DF和IF
|
||||
- D. IF和CF
|
||||
|
||||
2. 在8086/8088系统中,某存储单元物理地址为22456H,若段基地址为2000H,则段内偏移地址为 **[A]**。
|
||||
- A. 2456H
|
||||
- B. 12456H
|
||||
- C. 02456H
|
||||
- D. 32456H
|
||||
|
||||
3. 在DMA传送方式中,每传送一个数据块需要占用 **[B]** 个总线周期。
|
||||
- A. 1个
|
||||
- B. 2个
|
||||
- C. 3个
|
||||
- D. 4个
|
||||
|
||||
4. 在8255A的C口位定义/复位命令字中,若要使PC3=1,则命令字为 **[A]**。
|
||||
- A. 07H
|
||||
- B. 0FH
|
||||
- C. 87H
|
||||
- D. 8FH
|
||||
|
||||
5. 在8255A工作在方式1输入时,用于数据输入的信号是 **[B]**。
|
||||
- A. INTR、IBF、STB
|
||||
- B. STB、IBF、RD
|
||||
- C. IBF、INTR、RD
|
||||
- D. INTR、OBF、ACK
|
||||
|
||||
6. 若对8259A进行ICW1写入操作,即对A0=0的端口写入ICW1后,8259A将 **[A]**。
|
||||
- A. 预置A0=0后写入
|
||||
- B. 自动判断下一个写入的是ICW2还是ICW3
|
||||
- C. 需要用OCW来控制
|
||||
- D. 写入OCW1设置中断屏蔽字
|
||||
|
||||
7. 在DMA方式下,内存与外设之间的数据传输特点是 **[D]**。
|
||||
- A. 仅由CPU控制
|
||||
- B. 仅由DMA控制器控制
|
||||
- C. 由CPU和DMA控制器共同控制
|
||||
- D. 数据传输不经过CPU,直接在内存和外设之间进行
|
||||
|
||||
8. 8251A工作在异步方式时,波特率系数可通过 **[B]** 来设定。
|
||||
- A. 工作方式寄存器
|
||||
- B. 命令寄存器
|
||||
- C. 状态寄存器
|
||||
- D. 方式选择寄存器
|
||||
|
||||
9. 下列关于DMA,描述错误的是 **[C]**。
|
||||
- A. DMA传输时,数据在内存和I/O设备之间直接传送
|
||||
- B. DMA传输前CPU要初始化DMA控制器
|
||||
- C. DMA传输完成后CPU要处理中断
|
||||
- D. DMA传输时CPU不能做其他工作
|
||||
|
||||
10. RS-232C中,控制数据流方向的信号是 **[B]**。
|
||||
- A. RTS
|
||||
- B. CTS
|
||||
- C. DTR
|
||||
- D. DSR
|
||||
|
||||
### 三、简答题(每题5分,共15分)
|
||||
|
||||
1. **简述8255A的A口在方式1输入时的工作过程,包括相关联络信号的含义。**
|
||||
|
||||
**答:** 8255A的A口工作在方式1输入时,利用C口的某些引脚作为联络信号:
|
||||
- **STB(选通信号)**:由外设发出,低电平有效,将外设数据锁存到A口的输入锁存器中。
|
||||
- **IBF(输入缓冲器满信号)**:由8255A发出,高电平有效,表示A口已接收到数据,通知外设数据已被锁存。
|
||||
- **INTR(中断请求信号)**:当STB上升沿且IBF为高电平时,INTR变高,向CPU发出中断请求,请求CPU读取数据。
|
||||
- **INTE(中断允许)**:可通过C口置位/复位命令控制,允许或禁止A口的中断请求。
|
||||
|
||||
工作过程:外设将数据放到数据线上,然后发STB信号将数据锁存,8255A发IBF通知外设数据已收到,同时在满足条件时发INTR请求CPU读取数据。CPU响应中断后读取数据,IBF变低,准备接收下一个数据。
|
||||
|
||||
2. **简述DMA控制器8237A的主要功能和工作模式。**
|
||||
|
||||
**答:** 8237A是Intel公司生产的可编程DMA控制器,主要功能包括:
|
||||
- 在外设和存储器之间提供高速数据传输通道
|
||||
- 支持4个独立的DMA通道
|
||||
- 每个通道可独立编程,支持不同的传输参数
|
||||
- 支持单字节传输、块传输、请求传输和级联传输等模式
|
||||
- 支持存储器到存储器的传输
|
||||
- 具有地址自动增减功能
|
||||
- 具有优先级仲裁逻辑
|
||||
|
||||
3. **在微型计算机系统中,通常采用哪几种I/O端口编址方式?各有何特点?**
|
||||
|
||||
**答:** 微型计算机系统中通常采用两种I/O端口编址方式:
|
||||
- **统一编址(存储器映射I/O)**:将I/O端口地址和存储器地址统一编排在同一地址空间中。优点是可以使用全部存储器指令访问I/O端口,寻址方式灵活;缺点是I/O端口占用存储器地址空间。
|
||||
- **独立编址(I/O隔离编址)**:I/O端口和存储器分别使用独立的地址空间,通过专门的I/O指令(如IN/OUT)访问I/O端口。优点是不占用存储器地址空间,I/O地址译码简单;缺点是I/O指令较少,功能不如存储器指令丰富。
|
||||
|
||||
### 四、应用分析题(共25分)
|
||||
|
||||
1. **(本题10分)** 在微型计算机系统中,8237A的地址线A3~A0与CPU的地址总线A3~A0连接,地址允许信号AEN由译码器输出控制。当前CPU的地址线A9A8A7A6A5=11011,译码器输出为低电平。试回答:
|
||||
- (1) 8237A各通道DMA请求优先权排列顺序如何?
|
||||
- (2) 若要禁止所有通道的DMA请求,应如何写入命令字?
|
||||
- (3) 通道0地址计数器初值为2000H,传送字节数为1000,传送完成后地址计数器值为多少?
|
||||
|
||||
**答:**
|
||||
- (1) 8237A各通道的DMA请求优先权从高到低排列为:通道0 > 通道1 > 通道2 > 通道3。可用编程方式改变为循环优先权方式。
|
||||
- (2) 若要禁止所有通道的DMA请求,应向命令寄存器写入控制字,将所有通道的使能位清零(即写入04H~05H禁止通道),同时设置禁止DMA控制位。
|
||||
- (3) 通道0地址计数器初值为2000H,每传送一个字节地址自动加1,传送1000个字节后:2000H + 1000 = 2000H + 3E8H = 23E8H。传送完成后地址计数器值为23E8H。
|
||||
|
||||
2. **(本题15分)** 通过地址译码器将8254定时/计数器0通道的CLK0接至1.193182MHz时钟源,要求CLK0分频后产生约100Hz频率的方波。
|
||||
|
||||
- (1) 写出控制字,并写出向0通道装入的时间常数(二进制)。
|
||||
- (2) 设8254口地址为40H~43H,编写初始化程序段。
|
||||
- (3) 若采用BCD计数方式,时间常数如何装入?写出相应的初始化程序段。
|
||||
|
||||
**答:**
|
||||
- (1) 分频系数 = 1193182 / 100 ≈ 11932 = 2EA4H
|
||||
|
||||
控制字:选用方式3(方波发生器),二进制计数,先读写低字节再读写高字节,通道0。
|
||||
控制字 = 00110110B = 36H
|
||||
|
||||
时间常数 = 2EA4H = 11932
|
||||
|
||||
- (2) 初始化程序段(二进制方式):
|
||||
|
||||
```asm
|
||||
MOV AL, 36H ; 控制字:通道0,方式3,二进制计数
|
||||
OUT 43H, AL ; 写入控制寄存器
|
||||
MOV AX, 2EA4H ; 时间常数
|
||||
OUT 40H, AL ; 先写低字节
|
||||
MOV AL, AH
|
||||
OUT 40H, AL ; 再写高字节
|
||||
```
|
||||
|
||||
- (3) 若采用BCD计数方式:
|
||||
|
||||
分频系数 = 11932 = 1×10000 + 1×1000 + 9×100 + 3×10 + 2 = 0192BCD(注意BCD码最大65536)
|
||||
|
||||
实际上 11932 的BCD表示为:0119 32BCD = 011932H → 需要用4位BCD码表示。
|
||||
|
||||
控制字 = 00110111B = 37H(方式3,BCD计数)
|
||||
|
||||
时间常数:低字节 = 32H(低2位BCD),高字节 = 11H(高2位BCD),即11932 = 1132BCD
|
||||
|
||||
初始化程序段:
|
||||
|
||||
```asm
|
||||
MOV AL, 37H ; 控制字:通道0,方式3,BCD计数
|
||||
OUT 43H, AL ; 写入控制寄存器
|
||||
MOV AL, 32H ; 低2位BCD(32)
|
||||
OUT 40H, AL ; 先写低字节
|
||||
MOV AL, 11H ; 高2位BCD(11)
|
||||
OUT 40H, AL ; 再写高字节
|
||||
```
|
||||
|
||||
### 五、程序设计题(共20分)
|
||||
|
||||
1. **(本题10分)** 用8255A的A口控制LED显示器循环显示8个花样灯显示方式,要求:
|
||||
|
||||
已知8255A控制字口地址为8006H,各口地址分别为:8000H(A口)、8002H(B口)、8004H(C口)、8006H(控制口)。
|
||||
|
||||
编写程序段实现8255A初始化及LED花样显示控制。
|
||||
|
||||
**答:**
|
||||
|
||||
```asm
|
||||
DATA SEGMENT
|
||||
PATTERN DB 80H, 40H, 20H, 10H, 08H, 04H, 02H, 01H ; 8个花样灯模式
|
||||
DATA ENDS
|
||||
|
||||
CODE SEGMENT
|
||||
ASSUME CS:CODE, DS:DATA
|
||||
|
||||
START:
|
||||
MOV AX, DATA
|
||||
MOV DS, AX
|
||||
|
||||
; 8255A初始化:A口方式0输出,B口方式0输出
|
||||
MOV DX, 8006H ; 控制口地址
|
||||
MOV AL, 80H ; 控制字:A口方式0输出
|
||||
OUT DX, AL
|
||||
|
||||
DISPLAY:
|
||||
MOV CX, 8 ; 8个花样模式
|
||||
LEA SI, PATTERN
|
||||
|
||||
NEXT:
|
||||
MOV DX, 8000H ; A口地址
|
||||
MOV AL, [SI] ; 取花样灯模式
|
||||
OUT DX, AL ; 输出到A口控制LED
|
||||
|
||||
; 延时
|
||||
PUSH CX
|
||||
MOV CX, 0FFFFH
|
||||
DELAY:
|
||||
NOP
|
||||
LOOP DELAY
|
||||
POP CX
|
||||
|
||||
INC SI ; 指向下一个模式
|
||||
LOOP NEXT ; 循环显示8个模式
|
||||
|
||||
JMP DISPLAY ; 无限循环
|
||||
CODE ENDS
|
||||
END START
|
||||
```
|
||||
|
||||
2. **(本题10分)** 编写利用8253/8254产生方波的程序段。要求:
|
||||
- 系统时钟频率为1MHz
|
||||
- 通过8253/8254通道0产生1kHz的方波
|
||||
- 8253/8254控制口地址为4006H,通道0地址为4000H
|
||||
|
||||
**答:**
|
||||
|
||||
时钟频率1MHz,要产生1kHz方波,需要分频系数 = 1000000 / 1000 = 1000
|
||||
|
||||
选用方式3(方波发生器),二进制计数,先读写低字节再读写高字节。
|
||||
|
||||
控制字 = 00110110B = 36H
|
||||
|
||||
时间常数 = 1000 = 03E8H
|
||||
|
||||
```asm
|
||||
NEXT:
|
||||
MOV DX, 4006H ; 控制口地址
|
||||
MOV AL, 36H ; 控制字:通道0,方式3,二进制计数
|
||||
OUT DX, AL
|
||||
|
||||
MOV DX, 4000H ; 通道0地址
|
||||
MOV AX, 03E8H ; 时间常数1000
|
||||
OUT DX, AL ; 先写低字节
|
||||
MOV AL, AH
|
||||
OUT DX, AL ; 再写高字节
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 关联笔记
|
||||
- [[接口与通讯技术/8255A可编程并行接口]]
|
||||
- [[接口与通讯技术/8254定时计数器]]
|
||||
- [[接口与通讯技术/8259A中断控制器]]
|
||||
- [[接口与通讯技术/DMA控制器8237A]]
|
||||
- [[接口与通讯技术/8251A串行通信接口]]
|
||||
@@ -0,0 +1,177 @@
|
||||
---
|
||||
tags: [试题, 接口与通讯技术]
|
||||
create time: 2026-06-26 22:20
|
||||
---
|
||||
|
||||
# 试题C
|
||||
|
||||
## 概述
|
||||
武汉科技大学 "接口与通讯技术" 期末考试试卷(试卷类型 A)。本试卷包含填空题、单项选择题、判断题、程序设计题和应用题五大题型,涵盖 8253/8254、8255、8259A 等可编程接口芯片、8086 CPU 基础知识以及 A/D 转换(ADC0809)等内容。
|
||||
|
||||
## 正文
|
||||
|
||||
### 一、填空(每空 1 分,共 20 分)
|
||||
|
||||
1. ISA 总线与 EISA 总线的数据总线宽度分别为( **16** )位和( **32** )位。
|
||||
|
||||
2. 16 位 I/O 端口寻址中,I/O 端口地址范围是( **0000H~FFFFH** );其地址线至少需要( **16** )根。若 A₉ = 1,则选中 I/O 端口地址范围为( **200H~3FFH** )。
|
||||
|
||||
3. 在 8086 CPU 中,引脚信号( **DT/R** )和( **DEN** )决定了数据在总线上传送的方向。
|
||||
|
||||
4. 在 8259A 初始化中,中断请求触发方式有( **边沿** )触发和( **电平** )触发两种方式。
|
||||
|
||||
5. 在 8086 的中断向量表中,4 个字节分别存放( **中断服务程序的偏移地址(IP)** )和( **中断服务程序的段地址(CS)** )。
|
||||
|
||||
6. 在 EISA 总线的数据传输过程中,若需要插入等待周期,则插入的是( **等待** )周期。
|
||||
|
||||
7. 8253 的内部结构包含( **3** )个计数器,每个计数器都有( **1** )条输入线和( **1** )条输出线。
|
||||
|
||||
8. 在 8086 CPU 中,地址 8000H:3000H 对应的物理地址为( **83000H** )。
|
||||
|
||||
9. 8255 的端口 A 有( **3** )种工作方式,端口 B 有( **2** )种工作方式,端口 C 有( **1** )种工作方式。
|
||||
|
||||
10. ISA 总线是 EISA 总线的( **16** )位版本,EISA 总线的地址线为( **32** )位。
|
||||
|
||||
### 二、单项选择题(每题 2 分,共 20 分)
|
||||
|
||||
1. 在微型计算机系统中,CPU 访问 I/O 接口的方式有以下哪几种( **A** )。
|
||||
|
||||
- A. 独立编址方式和统一编址方式
|
||||
- B. 独立编址方式
|
||||
- C. 统一编址方式
|
||||
- D. 以上都不对
|
||||
|
||||
2. 8253 内部计数器是( **B** )。
|
||||
|
||||
- A. 8 位计数器
|
||||
- B. 16 位计数器
|
||||
- C. 10 位计数器
|
||||
- D. 20 位计数器
|
||||
|
||||
3. 8253 的 3 个计数器中,( **D** )计数器是 16 位的。
|
||||
|
||||
- A. 计数器 0
|
||||
- B. 计数器 1
|
||||
- C. 计数器 2
|
||||
- D. 3 个计数器都是 16 位
|
||||
|
||||
4. 下列对 8259A 初始化的叙述中,( **C** )是不正确的。
|
||||
|
||||
- A. ICW₁ 写入偶地址端口
|
||||
- B. 8259A 初始化编程必须按顺序写入 ICW₁、ICW₂、ICW₃、ICW₄
|
||||
- C. ICW₁ 写入奇地址端口
|
||||
- D. ICW₄ 是中断命令字
|
||||
|
||||
5. 8255A 控制字的最高位 D₇ = 1 表示( **A** )。
|
||||
|
||||
- A. 方式控制字
|
||||
- B. 位控制字
|
||||
- C. 状态控制字
|
||||
- D. 以上都不对
|
||||
|
||||
6. 在 8086 系统中,已知 DS = 2000H,SS = 5000H,SP = 3000H,则堆栈栈顶的物理地址为( **B** )。
|
||||
|
||||
- A. 23000H
|
||||
- B. 53000H
|
||||
- C. 35000H
|
||||
- D. 7000H
|
||||
|
||||
7. 下列对中断描述错误的是( **D** )。
|
||||
|
||||
- A. 单片机中,NMI 的中断请求无法被屏蔽
|
||||
- B. 单片机中,8 级中断中,IR₀ 的优先级最高
|
||||
- C. 中断服务结束时,必须执行 EOI 命令来清除 ISR 中相应的位
|
||||
- D. 8086 系统中地址 0000H~003FH 是非屏蔽中断
|
||||
|
||||
8. 在使用 8259A 进行中断控制时,若 CPU 在执行中断服务程序期间,又有新的中断请求到来,则系统响应中断的条件是( **A** )。
|
||||
|
||||
- A. 新的中断请求优先级高于正在执行的中断服务程序
|
||||
- B. 新的中断请求优先级低于正在执行的中断服务程序
|
||||
- C. 无条件响应
|
||||
- D. 无条件不响应
|
||||
|
||||
9. 8253 方式控制字中某位为 0 时,表示采用( **A** )。
|
||||
|
||||
- A. 二进制计数
|
||||
- B. BCD 码计数
|
||||
- C. 十进制计数
|
||||
- D. 16 进制计数
|
||||
|
||||
10. 在 EISA 总线中,数据总线的宽度为( **C** )。
|
||||
|
||||
- A. 8 位
|
||||
- B. 16 位
|
||||
- C. 32 位
|
||||
- D. 64 位
|
||||
|
||||
### 三、判断题(每题 2 分,共 20 分)
|
||||
|
||||
1. 在 8086 CPU 中,当执行 MOV 指令时,会产生总线周期。( )
|
||||
|
||||
2. 8253 的内部计数器是减计数器。( )
|
||||
|
||||
3. 在 EISA 总线中,数据总线的宽度为 16 位。( )
|
||||
|
||||
4. 单片机中,且该中断为非屏蔽中断,NMI 的中断请求无法被屏蔽。( )
|
||||
|
||||
5. 在 8086 中断向量表中,地址 0000H~003FH 是可屏蔽中断,地址 0040H~03FFH 是非屏蔽中断。( )
|
||||
|
||||
6. 8253 内部计数器的输入时钟频率为 1MHz,当计数初值为 10000 时,输出方波频率为 100Hz。( )
|
||||
|
||||
7. 在使用 8259A 进行中断控制时,若 CPU 在执行中断服务程序期间,又有新的中断请求到来,则系统响应中断的条件是新的中断请求优先级高于正在执行的中断服务程序。( )
|
||||
|
||||
8. 在 EISA 总线中,数据总线的宽度为 32 位。( )
|
||||
|
||||
9. 在 8086 CPU 中,当执行 MOV 指令时,不会产生总线周期。( )
|
||||
|
||||
10. 8253 方式控制字的最高位为 D₇,当 D₇ = 1 时,表示采用 BCD 码计数。( )
|
||||
|
||||
### 四、程序设计题(每题 5 分,共 20 分)
|
||||
|
||||
1. 在一个数据段中定义了如下字符串,请编程序在字符串中查找第一个 'A' 字符并统计 'A' 的个数。已知字符串首地址为 STRING,字符串长度为 100。
|
||||
|
||||
2. 用 8253 产生方波,方波频率为 1kHz,已知输入时钟频率为 1.19318MHz,写出初始化程序。端口地址为 40H~43H。
|
||||
|
||||
3. 用 8255 的端口 A 输出方波信号(A₀ = 0),要求方波频率为 1kHz,写出初始化程序。已知 8255 端口地址为 60H~63H。
|
||||
|
||||
4. 用 8253 的计数器 0 输出频率为 1kHz 的方波,已知输入时钟频率为 1.19318MHz,写出初始化程序。端口地址为 40H~43H。
|
||||
|
||||
### 五、应用题(共 20 分)
|
||||
|
||||
1. **(5 分)** 某 CPU 通过锁存器与 LED 显示器(共阴极接法)相连,已知锁存器端口地址为 200H,现要求显示数字 '5'(即 7 段码为 6DH),请编写完整的汇编程序。
|
||||
|
||||
> [!note] 附注
|
||||
> 共阴极接法的 7 段码表(LEDSEG)的偏移地址为:数字 0~9 对应的段码依次为 3FH、06H、5BH、4FH、66H、6DH、7DH、07H、7FH、6FH。
|
||||
|
||||
2. **(5 分)** 已知 8259A 的端口地址为 20H 和 21H,要求:
|
||||
|
||||
(1)编写初始化程序,设中断向量表中类型号为 80H 的中断入口地址为 3000H:1000H。
|
||||
|
||||
(2)编写中断服务程序(中断服务程序入口地址为 INT80H)。
|
||||
|
||||
3. **(10 分)** 在 8086 CPU 的系统中,利用 8255A 的端口 A 输出矩形波,要求在端口 A 的 PA₀ 产生矩形波。
|
||||
|
||||
> [!info] 波形参数
|
||||
> 高电平持续时间为 5ms,低电平持续时间为 3ms。
|
||||
|
||||
已知 8255A 的端口地址为 60H~63H,8255A 的时钟频率为 1MHz。
|
||||
|
||||
要求:
|
||||
|
||||
(1)编写 8255A 的初始化程序。(4 分)
|
||||
|
||||
(2)编写产生矩形波的程序。(6 分)
|
||||
|
||||
> [!info] 8255A 控制字格式
|
||||
> - D₇:1 为方式控制字,0 为位控字
|
||||
> - D₆D₅:端口 A 方式选择(00=方式 0,01=方式 1,10=方式 2)
|
||||
> - D₄:端口 A 输入/输出(1=输入,0=输出)
|
||||
> - D₃:端口 C 高 4 位输入/输出(1=输入,0=输出)
|
||||
> - D₂:端口 B 方式选择(0=方式 0,1=方式 1)
|
||||
> - D₁:端口 B 输入/输出(1=输入,0=输出)
|
||||
> - D₀:端口 C 低 4 位输入/输出(1=输入,0=输出)
|
||||
|
||||
---
|
||||
|
||||
> [!note] 备注
|
||||
> 以上为试题卷部分(第 1 ~ 3 页)。第 4 ~ 6 页为参考答案("接口与通讯技术"期末考试 A 卷参考答案),已单独收录于本试题册的参考答案文件中。
|
||||
@@ -0,0 +1,122 @@
|
||||
---
|
||||
tags: [试题, 接口与通讯技术]
|
||||
create time: 2026-06-26 22:20
|
||||
---
|
||||
|
||||
# 试题D
|
||||
|
||||
## 概述
|
||||
"接口与通讯技术"期末考试试卷(B卷),适用于计算机及相关专业,考试形式为闭卷笔试。
|
||||
|
||||
## 正文
|
||||
|
||||
课程名称:接口与通讯技术 专业年级:
|
||||
学号: 姓名:
|
||||
试卷类型:A 卷( )B 卷(√)C 卷( )考试时间:120 分钟
|
||||
|
||||
### 一、填空题(每空1分,共26分)
|
||||
|
||||
1. 已知 8255A 的 A 口地址为 20H,则命令口地址为( )。
|
||||
|
||||
2. ADC0809 由模/数转换部分和( )两部分组成。启动转换的信号为( )。
|
||||
|
||||
3. 8253 有( )个独立的计数器,每个计数器有( )种工作方式。
|
||||
|
||||
4. 异步通信中一帧数据格式由起始位、数据位、( )和停止位组成。
|
||||
|
||||
5. 8255A 的端口 A 可工作在( )方式,端口 B 可工作在( )方式,端口 C 分为两个( )位口。
|
||||
|
||||
6. 8251A 的工作方式控制字的 D<sub>7</sub>D<sub>6</sub> = 01 表示波特率因子为( ),D<sub>1</sub>D<sub>0</sub> = 11 表示数据位为( )位。
|
||||
|
||||
7. 已知 8255A 的命令口地址为 21H,则 A 口地址为( ),B 口地址为( ),C 口地址为( )。
|
||||
|
||||
8. 8251A 有两个控制字,分别是( )和( )。当 8251A 硬件复位后,CPU 需要先写入( ),再写入( )。
|
||||
|
||||
9. 当 8255A 的 A 口工作在方式 1 输入时,C 口的( )线作为联络信号。
|
||||
|
||||
10. 8253 的计数器 0 工作在方式 3(方波发生器),若 CLK0 = 1MHz,要求输出频率为 1kHz 的方波,则计数初值为( )。
|
||||
|
||||
### 二、单项选择题(每小题2分,共26分)
|
||||
|
||||
1. 执行 8086 指令 MOV AL, [BX+SI+100H] 后,AL 的内容是( )。
|
||||
|
||||
A. 100H B. 200H C. 300H D. 400H
|
||||
|
||||
2. 将累加器 AL 的内容乘以 2 的汇编语言指令是( )。
|
||||
|
||||
A. AND AL, 10H B. MUL 2 C. SHL AL, 1 D. ROR AL, 1
|
||||
|
||||
3. 8259A 是一种( )芯片。
|
||||
|
||||
A. 中断控制 B. DMA 控制 C. 定时/计数 D. 并行通信
|
||||
|
||||
4. 8253 某计数器的输入 CLK 频率为 1MHz,输出 OUT 频率为 100Hz,则计数初值为( )。
|
||||
|
||||
A. 1000 B. 10000 C. 100 D. 10
|
||||
|
||||
5. 某串行异步通信的数据帧格式为 1 位起始位、8 位数据位、1 位校验位、2 位停止位,波特率为 2400bps,则每秒最多可传输( )个字符。
|
||||
|
||||
A. 120 B. 200 C. 240 D. 300
|
||||
|
||||
6. 在 8253 的方式控制字中,若 B<sub>1</sub>B<sub>0</sub> = 10,表示选择( )号计数器。
|
||||
|
||||
A. 0 B. 1 C. 2 D. 3
|
||||
|
||||
7. 8253 有 3 种计数脉冲信号输入方式,其中,( )不是其工作方式。
|
||||
|
||||
A. 硬件启动 B. 软件启动 C. 脉冲启动 D. 级联启动
|
||||
|
||||
8. 执行 MOV AL, [2000H] 后,其操作数的寻址方式为( )。
|
||||
|
||||
A. 立即寻址 B. 直接寻址 C. 寄存器间接寻址 D. 基址变址寻址
|
||||
|
||||
9. DAC 可以将( )变为模拟量送至外部设备。
|
||||
|
||||
A. 程序 B. 指令 C. 数据 D. 声音
|
||||
|
||||
10. 8255A 的端口 A 工作在方式 1 输入时,中断允许触发器 INTE 是通过( )来控制的。
|
||||
|
||||
A. PC<sub>4</sub> B. PC<sub>2</sub> C. PC<sub>6</sub> D. PC<sub>0</sub>
|
||||
|
||||
11. 按照串行数据的同步方式,串行通信可分为( )和同步通信两类。
|
||||
|
||||
A. 单工通信 B. 双工通信 C. 半双工通信 D. 异步通信
|
||||
|
||||
12. 8086 CPU 响应中断后,自动将( )压入堆栈。
|
||||
|
||||
A. 标志寄存器和 CS、IP B. CS C. IP D. 标志寄存器
|
||||
|
||||
### 三、判断题(每小题2分,共26分)(正确打√,错误打x)
|
||||
|
||||
1. 8255A 的三个端口都可以通过指令改变其工作方式。( )
|
||||
2. 8251A 通过引脚 RTS 输出低电平,请求外设准备发送数据。( )
|
||||
3. 在 8253 的方式控制字中,若 B<sub>1</sub>B<sub>0</sub> = 11,表示选择 3 号计数器。( )
|
||||
4. 在串行通信中,每个字符的传送都需要起始位和停止位。( )
|
||||
5. 8086 CPU 响应中断后,不需要保存标志寄存器内容。( )
|
||||
6. 8253 的计数器采用递减方式计数。( )
|
||||
7. DMA 方式的数据传送不需要 CPU 介入。( )
|
||||
8. 异步通信中,波特率只取决于发送端,与接收端无关。( )
|
||||
9. 8251A 收到 Break 信号后,向 CPU 发送 Break 中断。( )
|
||||
10. 8259A 在全嵌套方式中,优先级最低的中断源为 IRQ7。( )
|
||||
11. ADC0809 是一种数/模转换芯片。( )
|
||||
12. 8259A 的中断类型号由外设中断源通过数据总线送入。( )
|
||||
13. 8255A 工作在方式 0 时,基本输入/输出需要用联络信号。( )
|
||||
14. DMA 方式的数据传送需要 CPU 执行中断服务程序。( )
|
||||
|
||||
### 四、简答题(每小题5分,共20分)
|
||||
|
||||
1. 简述 8251A 芯片的主要功能及其在串行通信中的作用。
|
||||
|
||||
2. 什么是中断向量表?8086 的中断向量表有什么特点?
|
||||
|
||||
3. 比较 8253 的 6 种工作方式,说明方式 2 和方式 5 的主要区别。
|
||||
|
||||
4. 在 8259A 中,什么是优先级判别?常用的优先级判别方法有哪几种?
|
||||
|
||||
### 五、编程题(共22分)
|
||||
|
||||
1. (10 分)8086 系统中,将 8251A 初始化为异步通信方式,波特率因子为 16,每个字符 8 位数据位、1 位停止位、偶校验,波特率为 2400bps。已知 8251A 的端口地址为 04F0H~04F3H,写出完整的初始化程序。
|
||||
|
||||
2. (12 分)已知 8253 的时钟频率为 1MHz,要产生频率为 1kHz 的方波输出。8253 的端口地址为 20H~23H。
|
||||
(1) 计算计数初值。
|
||||
(2) 写出 8253 的初始化程序(计数器 0 工作在方式 3)。
|
||||
Reference in New Issue
Block a user