全双工vs半双工vs单工:电话、对讲机、广播

短文标题: 全双工vs半双工vs单工:电话、对讲机、广播

你有没有想过一个问题:为什么打电话时可以同时说话、同时听,而对讲机必须"说完一句,等对方说完"?这和USART、RS232、RS485的通信模式是一样的道理。通信按"能否双向"和"能否同时",分成三种:单工、半双工、全双工。

单工:广播电台(收音机只听不说) 数据只能单向传输,一方固定发,一方固定收。比喻:广播电台(只能发)和收音机(只能收)。现实例子:电视广播、键盘到电脑(只输入不输出)。USART如果只配置TX不配RX,就工作在单工模式(但很少这样用)。

半双工:对讲机(能说能听,但不能同时) 数据双向传输,但不能同时进行。同一时刻只有一方能发,另一方只能听。比喻:对讲机(按住说话时不能听,松开才能听别人说)。现实例子:对讲机、RS485(同一对A/B线,收发切换分时)、I2C(时钟线SCl是单向?SDA是双向但需配合方向?其实I2C也是半双工,靠主从切换)。USART虽然硬件上全双工(有独立的TX和RX引脚),但软件如果设计成一发一收轮流(如Modbus主从一问一答),逻辑上是半双工。

全双工:电话(能说能听,同时进行) 数据双向 传输,而且可以同时进行。双方可以同时说、同时听。比喻:电话通话(你说话的同时也能听到对方的声音)。现实例子:USART(TX和RX独立引脚,可同时收发)、SPI(MOSI和MISO独立,全双工)、RS232(TX和RX分开,全双工)、以太网、现代电话。

**这个故事的启示,**为什么需要区分这三种?

  • 单工:最简单,最省引脚(1根数据线)
  • 半双工:省引脚(1根数据线+方向控制或共享总线)
  • 全双工:性能最高,需要更多引脚(2根数据线)

RS232是"电话":TX和RX分开,可以同时收发。RS485是"对讲机":A/B只有一对线,收发需要切换(RE/DE控制),同一时刻只能发或只能收。I2C也是半双工------发送地址后,切换方向读数据,SDA在同一根线上分时收发。

**写在最后,**下次你选通信接口,用三个比喻帮你决策:

  • 广播(单工):单向通知,用单工
  • 对讲机(半双工):一问一答,用RS485、I2C
  • 电话(全双工):高速实时交互,用USART、SPI、RS232

选对了少走弯路。


(本文灵感源于于振南《新概念ARM32单片机》教程第4.2节"双工通信分类与实现难点",感谢作者将双工分类讲得如此通透。)


如果您觉得这个故事对您有启发,欢迎点赞、转发,让更多工程师看到这个藏在"电话、对讲机、广播"背后的双工智慧。

相关推荐
尼喃25 分钟前
PW5100-50和PW5150:1.5V转5V芯片有什么区别?
嵌入式硬件
iowin8881 小时前
在 MCU 上跑 AI:端侧语音识别的极限压缩
人工智能·单片机·边缘计算·语音识别
硅基手札10 小时前
【串口技术系列文档 10】低功耗与唤醒机制
驱动开发·stm32·单片机·嵌入式硬件·mcu·计算机外设
逐光者93311 小时前
STM32——SPI 屏 · Flash · 高速
java·前端·stm32
yuehuaxin0111 小时前
上海贝岭 BL6523GX(D78) 单相计量芯片开发笔记:引脚定义、寄存器配置与校表流程
嵌入式硬件·智能家居·适配器模式·智能硬件
Kuakewei88811 小时前
可调OVP/OCP USB限流保护芯片IC的50μs过流响应测试
嵌入式硬件
HRTOS12 小时前
HRTOS 官网内容调整记录:首页、系统架构与文档页面优化
单片机·系统架构·51单片机
雨田言炎12 小时前
STM32之SysTick--系统定时器(内容简单但重要,附件有程序源码)
stm32·单片机·嵌入式硬件
ccbw1613 小时前
CH32M007K8U7:集成48V三相预驱的RISC-V电机MCU
单片机·嵌入式硬件
编程圈子14 小时前
I.MX6U 裸机开发 24. 电容触摸屏与 I2C 驱动
单片机·嵌入式硬件