那曲市网站建设_网站建设公司_Banner设计_seo优化
2026/1/16 18:29:41 网站建设 项目流程

UART 技术解析

一、核心概念

通用异步收发器(Universal Asynchronous Receiver/Transmitter)是一种采用异步通信全双工模式的串行数据传输协议。其硬件接口内置独立通信规则,无需外部时钟同步。

二、物理连接
设备A 设备B TXD --------- RXD RXD --------- TXD GND --------- GND

⚠️交叉连接原则:发送端(TXD)必须对接接收端(RXD),电源地(GND)需共地。

三、通信特性
模式数据线数量通信方向
单工1固定单向(如广播)
半双工1双向分时(对讲机模式)
全双工2双向实时(电话模式)
四、数据传输原理
  1. LSB 优先
    数据 $b_0b_1...b_7$ 的发送顺序为:$b_0 \rightarrow b_1 \rightarrow \cdots \rightarrow b_7$
    示例:数据A6(二进制10100110)发送序列:
    $$0 \rightarrow 1 \rightarrow 1 \rightarrow 0 \rightarrow 0 \rightarrow 1 \rightarrow 0 \rightarrow 1$$

  2. 串行 vs 并行

    • 串行:单线逐位传输,抗干扰强,成本低
    • 并行:多线同时传输,速率高,成本高
五、帧结构时序

▷ 起始位:1 bit 低电平
▷ 数据位:5~9 bits(含 LSB)
▷ 停止位:1~2 bits 高电平

六、差错检测
校验类型校验位值数据规则
奇校验1$\sum(\text{数据位}1) \mod 2 = 0$
偶校验0$\sum(\text{数据位}1) \mod 2 = 1$
无校验-不检测
七、参数配置格式

波特率 数据位 校验 停止位
示例:

  • 9600 8 N 1:波特率9600,8位数据,无校验,1位停止
  • 115200 8 O 1:波特率115200,8位数据,奇校验,1位停止

波特率:$bps = \frac{f_{osc}}{12 \times (256 - TH1) \times 2^{SMOD}}$

八、寄存器配置
  1. SCON(98H)

    bit名称功能
    B7SM0/FE工作模式选择/帧错误检测
    B6SM1工作模式选择
    B4REN接收使能(1=允许)
    B1TI发送中断标志(需软件清零)
    B0RI接收中断标志(需软件清零)
  2. 波特率计算
    定时器1(8位自动重装模式):
    $$TH1 = 256 - \frac{2^{SMOD} \times f_{osc}}{32 \times 12 \times bps}$$
    示例:$f_{osc}=11.0592MHz, bps=9600, SMOD=0$ 时:
    $$TH1 = 256 - \frac{1 \times 11.0592 \times 10^6}{32 \times 12 \times 9600} \approx 253$$

九、代码实现(Python模拟)

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询