news 2026/5/10 22:10:45

UART通信全解析:从原理到实战

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
UART通信全解析:从原理到实战

UART概念

UART(Universal Asynchronous Receiver/Transmitter)是一种通用异步收发器,用于设备间的异步通信。其核心特点包括:

  • 异步通信:无需共享时钟信号,通过预定义的波特率同步数据传输。
  • 全双工:支持同时收发数据,通过独立的数据线(TXD和RXD)实现。
  • 串行协议:数据按位顺序传输,遵循LSB(低位优先)原则。

UART接线方式

典型接线包括四根线:

  • VCC:连接电源正极,为设备供电。
  • GND:接地,确保共地参考。
  • RXD(接收线):接收来自对方设备的数据。
  • TXD(发送线):向对方设备发送数据。
    注意:设备间通信时需交叉连接(TXD→RXD,RXD→TXD)。

通信模式

  1. 单工

    • 固定方向的单向通信(如传感器→控制器)。
    • 仅需一根数据线,传输方向不可逆。
  2. 半双工

    • 双向通信但分时复用(如对讲机)。
    • 单根数据线,同一时间仅允许一端发送。
  3. 全双工

    • 双向同时通信(如电话)。
    • 双数据线(TXD/RXD),收发独立进行。

数据传输形式

  • 串行传输
    • 逐位传输,速率较低,但成本低、抗干扰强,适合远距离通信。
  • 并行传输
    • 多比特同时传输,速率高,但成本高且易受信号偏移干扰,适合短距离。

奇偶校验

  • 奇校验:数据位加校验位后“1”的总数为奇数。
  • 偶校验:数据位加校验位后“1”的总数为偶数。
  • 无校验:不进行校验,适用于低误码率环境。
    局限性:无法检测偶数个比特的错误。

串口通信参数

常用格式为波特率 数据位 校验位 停止位,例如:

  • 9600 8 N 1:波特率9600bps,8位数据,无校验,1位停止位。
  • 115200 8 O 1:波特率115200bps,8位数据,奇校验,1位停止位。
    波特率:每秒传输的比特数(如2400、9600、115200等)。

同步与异步

  • 同步:通过时钟线同步通信频率(如SPI)。
  • 异步:无时钟线,依赖预定义波特率(如UART)。

寄存器配置(以8051为例)

  1. SCON寄存器

    • 设置SM0=0SM1=1,选择8位UART可变波特率模式。
    • REN=1允许接收数据。
    • RI标志位需软件清零,表示数据接收完成。
  2. PCON寄存器

    • SMOD=1使波特率翻倍。
    • SMOD0=0,由SCON的SM0/SM1决定工作模式。

波特率计算(定时器1 8位自动重装模式):
公式为:
[ \text{波特率} = \frac{2^{\text{SMOD}} \times \text{定时器溢出率}}{32} ] 其中定时器溢出率由初值决定。

主机与从机

  • 主机:发起通信并控制流程(如发送指令)。
  • 从机:响应主机指令,被动执行操作并回复应答。

时序图与数据帧

UART数据帧包含:

  1. 起始位(低电平)。
  2. 数据位(5-8位,LSB优先)。
  3. 可选的校验位。
  4. 停止位(高电平,1-2位)。

示例代码(8051初始化UART)

void UART_Init() { SCON = 0x50; // 8位UART,允许接收 PCON |= 0x80; // SMOD=1,波特率加倍 TMOD = 0x20; // 定时器1模式2(8位自动重装) TH1 = 0xFD; // 波特率9600(假设晶振11.0592MHz) TR1 = 1; // 启动定时器1 }
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/2 18:45:44

如何验证DeepSeek-R1-Distill-Qwen-1.5B服务状态?日志检测完整指南

如何验证DeepSeek-R1-Distill-Qwen-1.5B服务状态?日志检测完整指南 在部署大型语言模型(LLM)时,确保服务正确启动并稳定运行是工程落地的关键环节。本文聚焦于 DeepSeek-R1-Distill-Qwen-1.5B 模型的服务状态验证流程&#xff0c…

作者头像 李华
网站建设 2026/5/3 18:37:24

避坑指南:Qwen3-Embedding-0.6B常见问题全解析

避坑指南:Qwen3-Embedding-0.6B常见问题全解析 1. Qwen3-Embedding-0.6B 模型特性与应用场景 1.1 模型定位与核心优势 Qwen3-Embedding-0.6B 是 Qwen3 家族中专为文本嵌入任务设计的轻量级模型,属于 Qwen3 Embedding 系列中的最小尺寸版本&#xff08…

作者头像 李华
网站建设 2026/5/1 20:39:30

unet适合艺术创作?插画师工作流整合案例

unet适合艺术创作?插画师工作流整合案例 1. 功能概述 本工具基于阿里达摩院 ModelScope 的 DCT-Net 模型,采用 UNet 架构实现人像到卡通风格的图像转换。该模型在大量真实人物与卡通图像对上进行训练,能够精准提取人脸特征并保留关键细节&a…

作者头像 李华
网站建设 2026/5/5 5:11:05

DeepSeek-OCR性能对比:单卡与多卡推理效率

DeepSeek-OCR性能对比:单卡与多卡推理效率 1. 背景与选型动机 随着文档数字化进程的加速,光学字符识别(OCR)技术在金融、物流、教育等行业的自动化流程中扮演着关键角色。DeepSeek OCR 作为一款由深度求索(DeepSeek&…

作者头像 李华
网站建设 2026/5/8 15:41:55

一体成型电感封装优势解析:选型设计参考

一体成型电感:为什么它成了高端电源设计的“标配”? 你有没有遇到过这样的问题? 调试一个高效率Buck电路,MOSFET和控制器都选得不错,结果输出纹波就是压不下去; 或者在紧凑的主板上布局POL电源&#xff0…

作者头像 李华
网站建设 2026/5/3 20:25:00

Qwen3-1.7B降本部署案例:GPU按需计费节省成本50%

Qwen3-1.7B降本部署案例:GPU按需计费节省成本50% 1. 背景与技术选型 随着大语言模型在实际业务中的广泛应用,如何在保障推理性能的同时有效控制部署成本,成为工程落地过程中的关键挑战。传统部署方式通常采用长期租用GPU资源的模式&#xf…

作者头像 李华