当前位置: 首页 > news >正文

串口(UART)波特率及帧结构

USART全称: Universal Synchronous/Asynchronous Receiver/Transmitter 通用同步/异步收发器.

UART全称: Universal Asynchronous Receiver/Transmitter,通用异步收发器.

  • Universal:通用的
  • Asynchronous:异步的(不需要时钟线
  • Receiver:接收器
  • Transmitter:发送器

一、串口波特率(Baud Rate)

1. 定义

波特率 = 每秒传输的位数(bit/s)表示串口通信速度,收发双方必须完全一致,否则乱码。

  • 定义:波特率表示每秒传输的符号(码元)个数。在串口通信中,一个符号通常就是一个二进制位(bit),波特率也常等同于比特率(每秒传输的位数,bps)。

  • 单位bps(bits per second),例如9600 bps。

  • 关键理解:波特率决定了每个位(Bit)占据的时间宽度。

    • 公式:每位时间 = 1 / 波特率 (秒)

    • 举例:如果波特率 = 9600 bps,那么传输1个位需要的时间约为 1/9600 ≈104.17 微秒

2. 标准常用波特率

  • 9600(最常用、最稳)
  • 19200
  • 38400
  • 57600
  • 115200(高速常用)
  • 230400、460800、921600(芯片调试用)

建议

  1. 对于绝大多数单片机与PC或模块间的通信,9600115200是最稳定、最常用的两个速率。
  2. 9600抗干扰能力强,适合长线或环境嘈杂的场合;
  3. 115200速度快,适合大数据量短距离传输。

3. 关键规则

  • 波特率越高,传输越快,但抗干扰越差、距离越短
  • 距离 >10 米 → 建议用9600 / 19200
  • 板间短距离 → 可用115200
  • 任何时钟源(如单片机晶振、USB转串口芯片)都有精度误差。只要通信双方的波特率误差在±3%以内,通常都能正常通信。误差过大则会导致数据采样错位,产生乱码。

二、串口(UART)数据帧结构

串口一帧数据固定由5 个部分按顺序组成:起始位 → 数据位 → 校验位 → 停止位 → 空闲位


1. 起始位(Start Bit)

  • 位数:1 位
  • 电平:低电平(0)
  • 作用:告诉接收方 “数据要开始了”,用于同步

2. 数据位(Data Bits)

  • 位数:5 / 6 / 7 / 8 位(最常用8 位
  • 顺序:低位先发(LSB first)
  • 作用:存放真正要传输的数据(ASCII、字节等)

3. 校验位(Parity Bit)

  • 位数:0 或 1 位(可选)
  • 类型:
    • 奇校验(Odd):1 的总数为奇数
    • 偶校验(Even):1 的总数为偶数
    • 无校验(None):最常用
  • 作用:简单检错

4. 停止位(Stop Bits)

  • 位数:1 / 1.5 / 2 位(最常用1 位
  • 电平:高电平(1)
  • 作用:表示一帧结束,给接收方恢复时间

5. 空闲位(Idle Bit)

  • 电平:高电平(1)
  • 位数:任意(无数据时总线保持高)
  • 作用:表示总线空闲,等待下一帧

最常见标准格式(99% 场景)

8N1:1 位起始 (0) + 8 位数据 + 0 位校验 + 1 位停止 (1)一帧共10 位

一帧完整波形(电平:1 = 高,0 = 低)

空闲 起始 数据位(低位先发) 停止 空闲 ↑ ↑ ↑↑↑↑↑↑↑↑ ↑ ↑ 【1】 【0】 D0 D1 D2 D3 D4 D5 D6 D7 【1】 【1】

标准帧结构分层示意图

┌──────────┬──────────┬──────────┬──────────┬──────────┐ │ 空闲位 │ 起始位 │ 数据位 │ 校验位 │ 停止位 │ │ (高电平)│ (1位低) │ 5~8位 │ 0~1位 │ 1~2位高 │ └──────────┴──────────┴──────────┴──────────┴──────────┘ ↑ ↑ ↑ ↑ ↑ 无数据 同步开始 有效数据 检错 帧结束

示例:

http://www.jsqmd.com/news/680206/

相关文章:

  • 2026北方喷涂系统代加工厂盘点:喷漆代加工厂、地磅汽车衡、地磅电子汽车衡、地磅电子秤、地磅衡器、天津地磅、天津电子秤选择指南 - 优质品牌商家
  • AI伦理专家认证指南:软件测试从业者的新兴职业入场券
  • 不只是pip install:深入理解sentence_transformers在PyG MovieLens中的角色与替代方案
  • 2026年知名的厨房保鲜盒PET收纳模具/超市展示PET收纳模具定制加工厂家推荐 - 行业平台推荐
  • STM32 HAL库驱动MT6701磁编码器:IIC和SSI两种方式实测对比与选型指南
  • 2026年知名的电梯消音生产厂家推荐 - 品牌宣传支持者
  • 基于鸿蒙Electron框架的文字战斗系统开发详解
  • 别再乱用torch.save了!PyTorch模型保存的两种方式(state_dict vs. 完整模型)保姆级对比
  • 汇川AutoShop PLC编程软件:从数据类型到内存表,新手避坑指南(附符号表实战技巧)
  • 跳槽季避坑:2026年软件测试工程师薪资谈判实战话术全解析
  • 快速上手LibreVNA:开源矢量网络分析仪的完整入门指南
  • 2026年买进口二手真空泵哪家靠谱?买进口二手真空泵哪家好/买二手真空泵哪家好,优质商家全盘点与推荐:天之华领衔 - 栗子测评
  • 五子棋游戏开发详解:基于鸿蒙Electron框架和HTML5 Canvas
  • 2026乐山甜皮鸭正宗性鉴别:乐山最出名的甜皮鸭/乐山本地人喜欢吃的甜皮鸭/乐山本地人推荐甜皮鸭哪家好/乐山本地人推荐甜皮鸭哪家正宗/选择指南 - 优质品牌商家
  • 告别点灯:用STM32CubeIDE和HAL库,给你的SSD1306 OLED做个动态仪表盘
  • VoiceFixer:如何用AI一键修复任何受损语音文件?
  • 开发者心理健康防御系统:软件测试从业者的专业构建指南
  • 工业通信--CRC校验分类及实现细节
  • 告别字库臃肿!ESP32+LVGL项目实战:将中文字库丢进SD卡,轻松实现多字体切换
  • 河北钢格板哪家好?2026年河北安平钢格板选购指南:河北钢格板源头厂家优质盘点 - 栗子测评
  • 三菱FX3SA的ST语言实战:手把手教你实现Modbus CRC校验
  • STM32F103 RTC掉电日期丢失?别慌,用CubeMX和备份寄存器轻松搞定
  • 2026年靠谱的家居PET收纳模具/酒盒包装PET收纳模具优质供应商推荐 - 品牌宣传支持者
  • 测试自动化工程师2026学习路线:从工具精通到质量赋能
  • 零代码文本分析:3步完成专业级内容挖掘的完整指南
  • 手把手教你用GD32E230调试SSD2828:从硬件补晶振到SPI引脚调换的踩坑实录
  • 海思3516a OSD水印实战:用SDL_ttf+FreeType2生成动态文字叠加(附完整代码)
  • 【最后72小时开放】Docker 27 AI调度白皮书核心章节泄露:含17个生产级dockerd.json配置模板(含安全沙箱+量化感知调度)
  • 2026小型跑步机精选:微云跑步机/静音跑步机/小型跑步机/家用跑步机/减震跑步机/跑步机/选择指南 - 优质品牌商家
  • 计算机毕业设计:Python农产品销售智能分析与可视化系统 Flask框架 数据分析 可视化 机器学习 数据挖掘 大数据 大模型(建议收藏)✅