单片机——通信协议

一.同步通信和异步通信

(1)同步通信

  1. 通信时序:同步通信是基于时钟信号的通信方式。发送端和接收端需要共享相同的时钟信号,以确定数据传输的时刻。
  2. 等待 :在同步通信中,发送端和接收端必须等待时钟信号的到来,然后才能进行数据传输。这意味着通信的步调是由时钟信号控制的,通常更容易实现高速通信
  3. 优点:同步通信通常更可靠,因为发送端和接收端的时钟同步,不容易出现数据丢失或错误。
  4. 缺点:同步通信要求严格的时钟同步,因此在长距离通信或异构系统中可能会面临挑战。

(2)异步通信

  1. 通信时序 :异步通信是一种不依赖共享时钟信号的通信方式。数据帧中通常包含了起始位、停止位和数据位,以便接收端确定数据的开始和结束。
  2. 不等待 :在异步通信中,发送端和接收端不需要等待时钟信号的到来。数据可以在任何时间传输,只要遵循数据帧的结构
  3. 优点:异步通信更灵活,适用于各种通信场景,不受时钟同步的限制。
  4. 缺点:相对于同步通信,异步通信可能在高速通信时更容易出现数据丢失或错误,因为没有严格的时钟同步。

(3)本质区别

本质区别在于时钟信号的使用和数据传输的等待方式:

  • 同步通信 依赖于共享时钟信号,数据传输的时刻由时钟信号确定,通信步调固定。
  • 异步通信 不依赖共享时钟信号,数据传输的时刻不受时钟控制,通信更加灵活,但可能更容易出现数据传输问题。

选择同步通信还是异步通信取决于特定应用的需求和环境。同步通信通常用于高速、可靠的通信,而异步通信更适用于灵活性较高的通信场景。

二.通信协议的通信方式

(1)串行通信:

串行通信是指数据在单条线路上一位一位地传输。这种通信方式的特点是通信线路简单,只需少数几条线即可在系统间交换信息,特别适用于计算机与计算机、计算机与外设之间的远距离通信。串行通信也分为同步通信和异步通信两种。

(2)并行通信:

并行通信是指数据的每一位同时在多根数据线上发送或者接收。这种通信方式可以以字或字节为单位并行进行,因此并行通信速度快,但用的通信线多、成本高,故不宜进行远距离通信。计算机或PLC各种内部总线就是以并行方式传送数据的。

三.通信协议传输方式

(1)单工协议

单工协议只支持信号在一个方向上传输(正向或反向),任何时候不能改变信号的传输方向。例如,灯塔发出光信号,航船只能接受信号。这种传输方式的特点是数据只能在一个方向上传输,无法实现数据的双向传输。

(2)半双工协议

半双工数据传输允许数据在两个方向上传输,但是在某一时刻,只允许数据在一个方向上传输,它实际上是一种切换方向的单工通信。例如,http1.1,对讲机等。这种传输方式的特点是在某一时刻只支持一个方向的传输,需要切换方向才能实现数据的双向传输。

(3)全双工协议

全双工数据通信允许数据同时在两个方向上传输,因此,全双工通信是两个单工通信方式的结合,它要求发送设备和接收设备都有独立的接收和发送能力。例如,电话通信、TCP/IP等。这种传输方式的特点是同时支持两个方向的传输,可以实现数据的双向同时传输。

相关推荐
aaaameliaaa4 小时前
字符函数和字符串函数
c语言·笔记·算法
夜月yeyue4 小时前
AUTOSAR CP 从上电到 Runnable
c语言·网络·tcp/ip·车载系统
白白白小纯5 小时前
算法篇—反转链表
c语言·数据结构·算法·leetcode
小羊先生car6 小时前
RTOS-F429-HAL-绝对延时和相对延时(2026/7/31)
c语言·rtos
minglie19 小时前
简易寄存器接口SMMR---正交编码器
fpga开发
老k一步步来9 小时前
STM32 HAL库CAN通信核心函数详解,参数以及作用
stm32·单片机·嵌入式硬件
caishenzhibiao10 小时前
期货先行者主图 同花顺期货通指标
java·c语言·c#
NoteStream13 小时前
【c语言基础】C语言常见概念
c语言·开发语言·编辑器
caishenzhibiao13 小时前
先行者副图 同花顺期货通指标
java·c语言·c#
神电测控13 小时前
新品发布:32通道50MS/s同步并行14位采集模块PG-FMC9249(支持任意FPGA/ZYNQ,兼容LabVIEW FPGA软件开发)
fpga开发·labview·ni·神电测控·王电令·ad9249·32通道