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

【2-8】同步通信与异步通信

前言

前面我们介绍过编码规则,强调了时钟对于收发双方的重要性。有单独的时钟信号,称作同步,无单独的时钟信号称作异步。

文章目录

  • 前言
  • 1. 同步通信
  • 2. 异步通信
    • 2.1 ModbusRTU
    • 2.2 HDLC
  • 3. 例题
  • 后记
  • 修改记录

1. 同步通信

同步通信是一种数据传输方式,其中发送方和接收方使用相同的时钟信号来协调数据的发送和接收。

发送方和接收方共享同一个时钟信号,这个时钟信号可以是外部提供的,也可以由发送方生成并随数据一起传输。

由于不需要额外的起始位和停止位来标记每个字符的边界,同步通信可以实现更高的数据传输效率。

USB是一个很好的例子,通常,主机负责生成时钟信号,并通过这个时钟信号来协调外设的数据传输。

2. 异步通信

在异步通信中,我们除了需要区分波特率,还要知道字符的起始和终止位置。整个异步通信领域,基本上都采用了在字符之间插入同步信息的方式,也就是插入起始位、停止位来实现异步通信。

这里,我们举两例。

2.1 ModbusRTU

这是一个简单的工业上的通讯协议,它在传输每个字符的时候可以指定起始位、数据位、停止位、奇偶校验

在这里插入图片描述
在这里插入图片描述

2.2 HDLC

HDLC(高级数据链路控制)是一种链路层协议的国际标准,旨在实现远程用户间资源共享以及信息交互。

HDLC的起始标志和终止标志都是特殊的八位序列 01111110(十六进制为 0x7E),这个序列用于界定HDLC帧的开始和结束。

在这里插入图片描述
至于为什么是 011111107E) 也有个说法,它包含六个连续的“1”,这在正常的数据流中出现的概率相对较低,所以拿它作为一中标志。

为啥它在当时出现的概率相对较低呢?因为在 ASCII 编码中可显示字符的最后一个,也就是波浪号 ~ 的ASCII编码对应 7E ,再往后就是一个不可见的控制字符 DEL ,也就是 7F 了。故采用 7E 是颇为合理的选择。

您可参考:《ASCII码对照表》

决定了使用 7E ,也就是6个连续的1之后,HDLC不得不进行零比特填充,不过这都是后话了,咱们之后再详细讨论HDLC。

3. 例题

在异步通信中,每个字符包含1个起始位,7个数据位,1个奇偶校验位和1个终止位,每秒传输100个字符,采用DPSK调制,则码元速率为?有效数据速率为多少?

解:
使用奈奎斯特定理

R = B ⋅ log ⁡ 2 N 100 ⋅ ( 1 + 7 + 1 + 1 ) = B ⋅ log ⁡ 2 2 B = 1000 B a u d R = B \cdot \log_2N \\ 100 \cdot (1+7+1+1) = B \cdot \log_2{2} \\ B = 1000 Baud R=Blog2N100(1+7+1+1)=Blog22B=1000Baud

由于除数据位以外,都是为了同步、差错校验而存在,所以要乘以一个数据位占整个字符的比值:

1000 b p s × 7 10 = 700 b / s 1000 bps \times \frac{7}{10} = 700 b/s 1000bps×107=700b/s

后记

大家也可以参考郭天祥老师的3分钟短视频来熟悉这种同步、异步的感觉:认识异步通信和同步通信

文中有任何错误、遗漏,烦请各位老铁在评论区指出,共同学习进步。

修改记录

更新日期修改内容
2025年4月5日完成初稿
http://www.dtcms.com/a/113176.html

相关文章:

  • 数据库性能优化(sql优化)_子查询02_yxy
  • 二十种中药果实识别分类系统,Python/resnet18/pytorch
  • C++_类和对象(下)
  • 无状态版的DHCPv6是不是SLAAC? 笔记250405
  • 【LeetCode Solutions】LeetCode 146 ~ 150 题解
  • JVM深入原理(六)(二):双亲委派机制
  • 元宇宙概念下,UI 设计如何打造沉浸式体验?
  • 从零开始玩python--python版植物大战僵尸来袭
  • 数字化转型中的开源AI智能客服与S2B2C商城小程序的融合创新
  • ☕️ 关于本博客 ☀️
  • OSCP - Proving Grounds- SoSimple
  • VUE+SPRINGBOOT+语音技术实现智能语音歌曲管理系统
  • 交换机与路由器的区别
  • 故障矩阵像素照片效果ps标题文本特效滤镜样机 Glitched Arcade Text Logo Effect
  • 【Python】数组的条件逻辑统计运算元素排序
  • Java的Selenium的特殊元素操作与定位之window切换
  • 推荐系统的注意力进化:从 Self-Attention 到 Target-Attention
  • BT-Basic函数之首字母T
  • 《打破SQL与AI框架对接壁垒,解锁融合新路径》
  • 文章记单词 | 第25篇(六级)
  • 深度学习之微调
  • 练习题:123
  • 量子纠错码实战:从Shor码到表面码
  • 【代码模板】C语言如何修改文件权限?读写执行权限对应值是多少?(chmod(“./a.out“, 0741);bit 2 1 0表示 读 写 执行)
  • mysql-getshell的几种方法
  • 【全球首发】DeepSeek谷歌版1.1.5 - 免费GPT-4级别AI工具
  • 5.数据手册解读——共模电感
  • Keepalive+LVS+Nginx+NFS高可用项目
  • C++ 排序(1)
  • Kotlin 枚举类