kubo
文章14
标签40
分类5

文章归档

USART 协议详解

USART 协议详解

USART协议

USART (Universal Synchronous/Asynchronous Receiver/Transmitter,通用同步/异步收发器)

一、基本概念

  • 全称:Universal Synchronous/Asynchronous Receiver/Transmitter

  • 中文:通用同步/异步收发器

  • 作用:实现串行通信,常用于 MCU 与外设(如传感器、蓝牙模块、PC等)之间的数据传输。

  • 特点

    • 支持同步 & 异步模式(常用异步)
    • 全双工通信(可同时收发)
    • 点对点通信(一般一对一)


二、通信原理

2.1同步与异步

1.异步模式

  • 发送方和接收方只需约定 波特率(如 9600bps、115200bps)。
  • 接收方通过起始位的下降沿来对齐时钟,然后按照约定的波特率采样数据。
  • 优点:少一根线(只需 TX、RX)。缺点:长时间无跳变可能失步,需要起始位/停止位和合适的波特率。

2.同步模式

2.2异步通信帧结构

异步通信帧结构通常采用 8 位或 9 位数据长度,其中 8 位因与字节对齐、便于处理 ASCII 字符和数据包而成为最常用配置 —— 典型代表即 “8N1”(8 位数据 + 无校验 + 1 停止位)。

以 8 位数据 + 无校验 + 1 停止位为例

image

字段 位数 电平/值 说明
起始位 1 低电平 (0) 标志帧开始,触发接收方采样
数据位 8 D0 ~ D7 **先发 LSB(**​*先发 D0(最低位)→ 接收方先收到的是数据的“低位”*​ ),后发 MSB
校验位 0 - 无校验(None)通常校验方式:奇偶校验
停止位 1 高电平 (1) 标志帧结束,线路恢复空闲状态

2.3硬件结构和硬件连接

  • 硬件结构

    • 发送器(Transmitter) :并行数据 → 移位寄存器 → 串行发送
    • 接收器(Receiver) :串行输入 → 移位寄存器 → 并行输出
    • 内部有 波特率发生器(Baud Rate Generator)
  • 硬件连接

    • 设备 A 的 TXD → 设备 B 的 RXD
    • 设备 A 的 RXD ← 设备 B 的 TXD
    • GND ↔ GND 必须共地

todo:同步模式怎么用