文章目录
UART(Universal Asynchronous Receiver/Transmitter 通用异步收发器)是一种异步串行通信协议,广泛应用于嵌入式系统、工业控制、传感器通信等领域。以下从协议层、物理层、技术特点和代码示例四个维度展开详细说明。
一、协议层
UART协议层定义了数据传输的帧格式、时序规则和错误检测机制,其核心是异步通信,无需共享时钟信号。
1. 数据帧结构
每帧数据由以下部分组成(以最常见的8N1格式为例):

-
起始位(Start Bit)
- 电平:低电平(逻辑0)
- 作用:标志数据帧开始,接收端通过检测下降沿触发同步。
-
数据位(Data Bits)
- 位数:5/6/7/8位(常用8位)
- 传输顺序:LSB(最低有效位)优先
- 示例:发送字符
A(ASCII 0x41 =01000001),实际传输顺序为1 0 0 0 0 0 1 0(从右到左)。
-
校验位(Parity Bit)(可选)
校验类型 规则 特点 无校验 不添加校验位 节省时间,无检错能力 奇校验 数据位+校验位中1的总数为奇数 检测单比特错误 偶校验 数据位+校验位中1的总数为偶数 检测单比特错误 Mark 固定为1 作为第9位数据使用 Space 固定为0 作为第9位数据使用 -
停止位(Stop Bit)
- 电平:高电平(逻辑1)
- 位数:1位、1.5位(罕见)、2位
- 作用:标志帧结束,并为下一帧提供缓冲时间。
2. 时序与波特率
-
波特率(Baud Rate)
- 定义:每秒传输的符号数(1符号=1位),常见值:9600、115200等。
- 计算:
位时间(秒)= 1 / 波特率 (例如:9600bps → 104μs/位) - 误差要求:通常需控制在±2%以内,否则可能采样错误。
-
采样点
- 接收端在每位中心点(如16倍过采样时,取第8、9、10次采样的多数值)进行采样。
- 抗干扰机制:三次采样表决(提高噪声环境下的可靠性)。
3. 错误检测
- 帧错误(Framing Error):停止位未检测到高电平。
- 奇偶校验错误:数据与校验位不匹配。
- 溢出错误(Overrun Error):接收缓冲区未及时读取,新数据覆盖旧数据。
4. 高级协议配置
- 数据流控制(可选):
- 硬件流控:使用RTS(请求发送)和CTS(清除发送)信号线。
- 软件流控:通过XON/XOFF字符控制数据流。
二、物理层
UART的物理层定义了电气特性、接口标准和硬件连接方式。
1. 电平标准
-
TTL/CMOS电平
- 逻辑0:0V(或接近0V,如<0.8V)
- 逻辑1:3.3V或5V(如>2.4V为有效高电平)
- 典型应用:单片机之间、芯片内部通信(传输距离<1米)。
-
RS232电平
- 逻辑0:+3V ~ +15V
- 逻辑1:-3V ~ -15V
- 特点:抗干扰强,支持长距离(最长15米@20kbps)。
-
RS485电平(差分信号)
- 通过A、B两线的电压差表示逻辑:
- 逻辑1:B线电压 > A线电压
- 逻辑0:A线电压 > B线电压
- 特点:支持多点通信,最长1200米。
- 通过A、B两线的电压差表示逻辑:
2. 接口定义
-
基本引脚:
- TX(Transmit):数据发送线
- RX(Receive):数据接收线
- GND(Ground):共地参考
-
扩展引脚(用于流控):
- RTS(Request to Send):请求发送
- CTS(Clear to Send):允许发送
- DTR(Data Terminal Ready):设备就绪
- DSR(Data Set Ready):数据就绪
3. 典型连接方式
- 直接连接(TTL电平):
设备A.TX → 设备B.RX 设备A.RX ← 设备B.TX 共地连接:GND ↔ GND - RS232连接(使用DB9接口):
TXD(Pin3) ↔ RXD(Pin2) RXD(Pin2) ↔ TXD(Pin3) GND(Pin5) ↔ GND(Pin5)- 需交叉连接(DTE与DCE设备)。
4. 电平转换电路
- TTL转RS232:使用MAX232芯片。
- TTL转RS485:使用MAX485芯片(支持半双工)。
三、技术特点
1. 核心特性
- 异步通信:无共享时钟,依赖预定义的波特率。
- 全双工:可同时发送和接收数据(需独立TX/RX线路)。
- 点对点:通常支持1对1通信,需扩展硬件支持多设备。
- 配置灵活:可自定义数据位、停止位、校验方式、波特率。
2. 关键参数
| 参数 | 典型值/选项 | 影响 |
|---|---|---|
| 波特率 | 9600, 19200, 115200 bps | 速度与抗干扰的平衡 |
| 数据位 | 5/6/7/8位 | 数据精度与效率 |
| 停止位 | 1/1.5/2位 | 帧间隔与同步稳定性 |
| 校验方式 | None/Even/Odd/Mark/Space | 检错能力与传输开销 |
3. 优势与局限
优势:
- 实现简单,仅需2根信号线(TX/RX)。
- 成本低,几乎所有微控制器内置UART模块。
- 支持全双工实时通信。
局限:
- 传输距离短(TTL电平<1米,RS232<15米)。

最低0.47元/天 解锁文章
7630

被折叠的 条评论
为什么被折叠?



