1串口通信流程(从发送方到接收方)

为了更好地理解 UART,我们从一个实际的例子出发。假设设备要发送温度值 179°C,那么数据会经历三个层次的处理:

  • 应用层:数据是什么?

  • 协议层:数据如何打包?

  • 物理层:数据如何变成电信号传输?

同样的过程,接收方会逆向进行。

1.1发送方:发送温度值:179℃

  1. 应用层:决定要传输的内容

设备之间不能随便发 10110011,就像对话需要语法一样,数据也要有统一的“格式”。在 UART 中,这种格式就是数据帧(Frame)。典型的数据帧由:

应用层只关心“我要发什么”。这里是温度值 179。计算机无法理解“179”这个十进制数字,所以需要转成二进制:

179(十进制)→ 10110011(二进制)

应用层不关心数据是怎么测出来的(比如传感器细节),它只告诉协议层:我要传的是10110011。

这里我们想要传输的是179这个值,这一实际物理量需要被转换为机器可处理的二进制形式:温度值179 → 二进制10110011(0xB3)。

     2.协议层:把数据打包成标准格式

单独的二进制数字(例如 10110011)对接收方来说是没有边界的。它不知道这串数据从哪里开始、在哪里结束,也无法判断数据是否出错。为了解决这个问题,UART 在协议层引入了数据帧(Frame)的概念。

协议层不关心数据的实际含义,它只负责确保数据按照协议规范被正确打包成数据帧。

简单来讲,就是电子设备之间通信需要按照串口通信协议约定好的格式来传输数据,否则接收方会听不懂,这种固定的格式就叫数据帧,相当于一条完整的“对话规则”。

UART 串口通信中,数据帧通常由四个部分组成:

  • 起始位 —— 设备开口打招呼,说“我要开始传输了”

  • 数据位 —— 传输真正的内容,比如 10110011(也就是 179)

  • 校验位(可选) —— 确认数据有没有出错,相当于“你听清了吗?”

  • 停止位 —— 表示“我说完了”

把这几个部分组合起来,就得到了一个完整的数据帧:

起始位 0 | 数据位 10110011 | (可选校验位) | 停止位 1

3. 物理层(“电子设备进行电信号传输”)
协议层把数据打包成了“数据帧”,但这还只是抽象的0和1。要让两台设备真的交流,必须把这些0和1转换成电信号,通过导线传输过去。这就是物理层的工作。
物理层不关心数据是什么,它只负责按照协议层的数据帧,将0和1变成真实的电信号。
UART通信中,物理层采用的是电平信号来表示逻辑的0和1。
- 在这一阶段,数据帧需要被转换为真实的电压信号
我们之前的章节中有提到“电子设备之间数据传输的本质其实就是电信号的传输,通过电压信号传输0和1”,例如:
                                - 0可以用0V表示
                                - 1可以用3.3V(或者5V)表示

数据帧 0 | 10110011 | 1 | 1 → 电平信号 0V | 3.3V-0V-3.3V-3.3V-0V-0V-3.3V-3.3V | 3.3V | 3.3V。

总结一下,物理层只定义真实的信号特性(比如电压,电流,驱动能力等),以及电信号与逻辑信号0和1的对应关系。

2.2接收方:接受温度:179℃

当发送方把数据通过总线发出来之后,接收方设备就要按照协议规则,把这些“电信号”正确还原成有意义的数值。这个过程与发送过程正好相反。

  1. 物理层:接收方首先要感知总线上电压的变化,这一步的目标是:保证“电平变化”能被识别成一个个稳定的0和1。

  2. 协议层:接收到的0和1会被按照协议规定的帧格式解析。比如:解析数据帧 0 | 10110011 | 1 | 1,提取出原始二进制数据 10110011

  3. 应用层:10110011 解析回温度值 179°C

总结

至此,我们完整走了一遍数据通信的基本过程:

  • 发送方:把温度数据(179°C)从应用层出发,逐层往下转化 → 先封装成协议帧,再转成二进制,最后以电平信号形式发到总线上。

  • 接收方:则反向操作,从物理层接收电平信号 → 协议层解析数据 → 应用层还原成“179°C”。

可以看到,数据的传输本质上是一个逐层封装与解封的过程:

  • 物理层:确保原始数据在物理媒体上的传输,规定通信系统中机械、电气特性的标准(如电压电平、传输速率、驱动能力)。

  • 协议层:负责通信逻辑的统一,规定收发双方的数据帧结构、打包与解包方式,保证接收端能正确识别数据。

  • 应用层:面向实际需求,将二进制数据转换为具体含义(如温度、文本等),提供给上层应用使用。

Logo

智能硬件社区聚焦AI智能硬件技术生态,汇聚嵌入式AI、物联网硬件开发者,打造交流分享平台,同步全国赛事资讯、开展 OPC 核心人才招募,助力技术落地与开发者成长。

更多推荐