news 2026/8/7 22:07:04

串口通信的仿真与分析

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
串口通信的仿真与分析

串口是串行接口的简称,串行接口是采用串行通信方式的接口。串行通信是一种将需要传输的数据由低位到高位一位一位地在一条传输线上逐个传输的通信方式。

一、串行通信的数据格式

首先来了解一下串行通信的数据格式,如下图所示,串行通信的一帧数据由起始位、数据位、校验位以及停止位组成。

起始位:低电平,标志着一帧数据的开始;

数据位:数据内容,可选择为5、6、7、8位;

校验位:用于确保传输数据的正确性,提供了一种简单的错误检测机制,可分为奇校验和偶校验。

校验位的常见类型

校验位用于对数据进行简单的差错检验,常见模式有:

  • 无校验- 不添加校验位。

  • 奇校验- 校验位被设置为01,使得数据位+校验位1的总个数为奇数

    • 例:数据1011001(有4个1,偶数个),为使其为奇数,校验位应为1,最终发送1011001+1

  • 偶校验- 校验位被设置为01,使得数据位+校验位1的总个数为偶数

    • 例:同上数据1011001(4个1),已是偶数,校验位应为0

  • 标志位- 校验位恒为1

  • 空位- 校验位恒为0

注意:通信双方(单片机和上位机)的校验位设置必须完全一致,否则会导致帧错误,无法正常解析数据。

停止位:高电平,标志着一帧数据的结束。

二、异步串行通信的波特率

串行通信可以分为两种形式:同步串行通信和异步串行通信

同步串行通信:通信双方在同一时钟控制下同步传输数据;

异步串行通信:通信双方使用各自的时钟控制数据传输。

对于异步串行通信来说,虽然没有同步时钟,但是通信双方必须约定并遵循同样的设置,这就需要异步串行通信中一个重要的参数来设置,该参数即波特率

波特率即串口通信的速率,它表示每秒传输二进制数据的位数,单位是bps,即位/秒,常用的波特率有9600、19200、38400、57600和115200等。

以115200的波特率为例,即一秒传输115200个二进制数据位,那么每一位的持续时间

因此,在通信双方约定波特率为115200的情况下,只要发送方发送的每位比特位的持续时间为8.68us,那么正常情况下接收方就能准确无误地解析数据。

三、实验测试

接下来利用实验来简单验证一下上述分析:波特率为115200,一位停止位,八位数据位,无奇偶校验位,发送数据为10110101,每组发送间隔100us。

1、仿真测试

仿真测试结果如下图所示,可以看出,发送的二进制数据依次为0101011011,每个比特位持续时间为8680ns,数据发送间隔为117360-2×8680=100000ns,均符合设计要求。

2、输出波形测试

下载程序,测试对应引脚的输出波形,如下图所示,可以看出与仿真结果基本相符。

3、通信测试

通过上位机的串口调试助手接收发送的数据,通过下图所示的结果可以看出,接收到的数据为0xB5,对应的二进制数据为0b10110101,与发送端发送数据相符,通信成功。

四、数据分析

上位机正确解析出的数据是0xB5,包含的是起始位和停止位的完整串口帧数据。

以下是详细解析:

串口帧结构分析(假设8N1格式:1位起始位 + 8位数据位 + 1位停止位)

帧组成比特序列(从左到右为发送顺序)说明
起始位0标志一帧的开始,固定为低电平。
数据位(LSB First)1 0 1 0 1 1 0 1实际传输的数据,低位在前(Bit0 到 Bit7)。
停止位1标志一帧的结束,固定为高电平。

将数据位10101101LSB First规则还原为正常字节:

  • 发送顺序(LSB First): Bit0 → Bit7 =10101101

  • 正常顺序(MSB First): Bit7 → Bit0 =10110101

  • 转换为十六进制:1011 0101=0xB5

0101011011物理线缆上的完整波形。串口调试助手在接收时,会自动剥离起始位和停止位,并根据LSB First(串口标准约定)的规则,将中间8位数据10101101重组为正确的字节0xB5

所以,上位机显示0xB5是完全正确的。我们在分析串口数据的时候要特别注意串口通信比特顺序帧结构这两个关键点,注意:这是无奇偶校验的数据帧,如果加上校验位通常数据帧结构为11位,校验位紧接在数据位之后。

以最常见的配置为例,完整的串口数据帧传输顺序如下:

  1. 起始位- 固定1位,逻辑0

  2. 数据位- 通常为5-9位(最常用8位),从最低位(LSB)开始发送。

  3. 校验位- 可选的1位,紧接在数据位之后。

  4. 停止位- 1位、1.5位或2位(最常用1位),逻辑1.

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/7 0:01:20

打破行业边界!《水龙吟》用“生态化开发”,让IP价值不止于剧集

12月17日,全国首个影旅融合文旅项目“五凤溪龙吟天城”在四川金堂五凤溪古镇正式开园。该项目以电视剧《水龙吟》IP为核心,深度融合五凤溪古镇历史文化底蕴,打造“可进入、可互动、可演化”的活态世界。游客可打卡凤凰花树、三千阶梯等特色场…

作者头像 李华
网站建设 2026/8/7 0:01:36

如何用农业Agent将化肥成本降低40%?3个真实案例深度拆解

第一章:农业种植 Agent 的施肥量在现代农业智能化进程中,基于AI的农业种植 Agent 被广泛应用于作物管理决策中,其中施肥量的精准控制是提升产量与减少资源浪费的关键环节。通过采集土壤养分、气象数据和作物生长阶段等信息,Agent …

作者头像 李华
网站建设 2026/8/6 12:07:05

生物制药Agent实验优化实战(罕见高成功率方案曝光)

第一章:生物制药Agent实验设计的核心挑战在生物制药领域,基于智能Agent的实验设计正逐步成为优化药物研发流程的关键技术。然而,其实际应用面临多重核心挑战,涉及数据异构性、模型可解释性以及实验闭环控制等复杂问题。数据来源与…

作者头像 李华
网站建设 2026/8/6 11:31:32

【专家亲授】物流Transport Agent高可用架构设计:9个不可忽视的设计原则

第一章:物流运输 Agent 的时效保证在现代物流系统中,运输时效是衡量服务质量的核心指标之一。引入智能 Agent 技术可显著提升调度效率与履约准确性。这些 Agent 能够实时感知订单状态、交通状况和资源负载,并基于预设策略自主决策最优路径与交…

作者头像 李华
网站建设 2026/8/7 18:40:12

边缘AI推理速度提升300%?揭秘模型压缩与硬件协同优化黑科技

第一章:边缘 AI Agent 的推理速度在边缘计算场景中,AI Agent 的推理速度直接影响用户体验与系统响应能力。由于边缘设备资源受限,如何在低延迟、低功耗的前提下实现高效推理成为关键挑战。影响推理速度的核心因素 模型复杂度:参数…

作者头像 李华