Files

143 lines
5.1 KiB
Markdown
Raw Permalink 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:
- 接口与通讯技术
- 串行通信
- RS-232C
- 8251A
- 波特率
- 选择题
- 重点复习
create time: 2026-06-28 16:30
---
# 串行通信基础 选择题考点
## 概述
串行通信在 3 套试卷中共出现 4 题,涵盖 **RS-232C 电平标准、波特率因子计算、差错检测位置、8251A 初始化顺序、多总线接口层次**。知识点分散但每个都独立且易记。
## 正文
### 1. RS-232C 逻辑电平定义
RS-232C 采用**负逻辑**,驱动器输出端与接收端的有效范围略有不同:
| 逻辑值 | 名称 | 驱动器输出端 | 接收端有效范围 |
|--------|------|:---:|:---:|
| **0** | 传号(Mark) | **+5V ~ +15V** | +3V ~ +15V |
| **1** | 空号(Space) | **-5V ~ -15V** | -3V ~ -15V |
```mermaid
graph LR
subgraph "驱动器输出端"
P["逻辑0: +5V~+15V<br/>正电压"]
N["逻辑1: -5V~-15V<br/>负电压"]
end
subgraph "接收端"
P2["逻辑0: +3V~+15V"]
N2["逻辑1: -3V~-15V"]
end
P --> P2
N --> N2
style P fill:#fdd,stroke:#333,color:#000
style N fill:#dfd,stroke:#333,color:#000
```
> [!important] 高频考点
> RS-232C 的**逻辑 0 是正电压(+5V~+15V)**,逻辑 1 是负电压(-5V~-15V)。这与 TTL 电平(0=低,1=高)完全相反!
> [!question] 思考题
> 为什么 RS-232C 要采用负逻辑(正电压=0,负电压=1)?
>
> 答:RS-232C 设计于早期通信时代,使用较高的电压幅值(±5V~±15V)是为了在长距离传输中抵抗噪声干扰。负逻辑的设计使"空闲状态"(逻辑1)对应负电压,有助于检测线路断开等故障。
### 2. 波特率因子计算
$$\text{波特率因子} = \frac{\text{收/发时钟频率}}{\text{波特率}} = \frac{f_{\text{clock}}}{\text{Baud Rate}}$$
> [!example] 真题
> 收/发时钟频率 TxC=RxC=19200Hz,传输波特率为 1200,波特率因子 = ?
>
> $$\frac{19200}{1200} = \boxed{16}$$
> [!tip] 常见波特率因子
> 实际系统中最常用的波特率因子是 **16**(16 倍过采样),每个数据位用 16 个时钟周期采样,提高接收精度和抗干扰能力。其他常见值有 1、64。
### 3. 串行通信差错检测
差错检测发生在**接收端**:
```mermaid
graph LR
A["发送端<br/>计算校验位<br/>附加到数据"] --> B["传输信道"] --> C["接收端<br/>重新计算校验<br/>与收到的校验位比较"]
C --> D{"一致?"}
D -->|是| E["数据正确"]
D -->|否| F["传输出错"]
style C fill:#ffd,stroke:#333,color:#000
```
> [!important] 高频考点
> 差错检测发生在**接收端**。发送端只负责计算并附加校验位,不做"检测";接收端收到数据后重新计算校验值,与收到的校验位对比来判断是否出错。
### 4. 8251A 初始化顺序
8251A 复位后必须按严格顺序写入命令字:
```mermaid
graph TD
A["RESET 复位完成"] --> B["① 方式字 Mode Word<br/>设置通信格式参数"]
B --> C["② 命令字 Command Word<br/>设置收发使能等"]
C --> D["③ 正常通信工作"]
style B fill:#ffd,stroke:#333,color:#000
```
| 步骤 | 写入内容 | 作用 |
|------|----------|------|
| **第1个** | **方式字** | 波特率因子、字符长度、停止位、奇偶校验 |
| 第2个 | 命令字 | 发送/接收使能、DTR/RTS、内部复位 |
> [!important] 高频考点
> 8251A 复位完成后,收到的**第一个命令字是方式字**。方式字定义通信的基本格式,必须在命令字之前写入。
### 5. 多总线系统接口层次
```mermaid
graph TD
A["多总线微机系统<br/>接口分两个层次"] --> B["设备接口<br/>Device Interface<br/>外设↔I/O总线适配"]
A --> C["总线桥<br/>Bus Bridge<br/>不同总线间协议转换"]
style B fill:#dfd,stroke:#333,color:#000
style C fill:#dfd,stroke:#333,color:#000
```
| 层次 | 名称 | 作用 |
|------|------|------|
| 第一层 | **设备接口** | 将外设的信号电平、时序、数据格式适配到 I/O 总线 |
| 第二层 | **总线桥** | 连接两条不同特性的总线(如 PCI↔ISA),实现协议转换和速度匹配 |
> [!question] 思考题
> 总线桥和设备接口的区别是什么?
>
> 答:设备接口解决"外设怎么连到总线上"的问题(信号适配);总线桥解决"两条不同总线怎么互通"的问题(协议转换)。前者面向外设,后者面向总线。
### 6. 真题回顾
> [!example] 【真题1】RS-232C 接口标准对逻辑信号"0"在驱动器输出端的定义为?
> **答案:D. +5V~+15V**
> [!example] 【真题2】波特率因子为?(时钟19200,波特率1200)
> **答案:A. 16**
> [!example] 【真题3】串行通信的差错检测发生在?
> **答案:B. 接收端**
> [!example] 【真题4】8251A 复位后收到的第一个命令字是?
> **答案:B. 方式字**
> [!example] 【真题5】多总线系统中接口分为设备接口和?
> **答案:B. 总线桥**
## 关联笔记
- [[接口与通讯技术/复习文档/8251A串行通信接口]]
- [[串行通信基础|填空题专题:串行通信基础]]