🔥作者简介: 一个平凡而乐于分享的小比特,中南民族大学通信工程专业研究生,研究方向无线联邦学习 🎬擅长领域:驱动开发,嵌入式软件开发,BSP开发 ❄️作者主页:一个平凡而乐于分享的小比特的个人主页 ✨收录专栏:通信协议,本专栏为记录项目中用到的知识点,以及一些硬件常识总结 欢迎大家点赞 👍 收藏 ⭐ 加关注哦!💖💖


并行通信: 数据总线
┌─┬─┬─┬─┐
D0│D1│D2│D3│ ... D7
└─┴─┴─┴─┘
▲多条线同时传输
速度快但线多
串行通信: 数据线
┌────────────────┐
│ 数据一位位传输 │
└────────────────┘
▲单条线顺序传输
速度慢但线少串口通信核心特点:数据像排队一样,一位接一位地在单条线上传输
TTL电平定义(5V系统):
逻辑1(高电平):2.4V - 5V ████████
逻辑0(低电平):0V - 0.4V █
TTL电平定义(3.3V系统):
逻辑1(高电平):2.0V - 3.3V █████
逻辑0(低电平):0V - 0.8V █单片机TTL串口连接图:
┌─────────────┐ ┌─────────────┐
│ 单片机MCU │ │ 传感器 │
│ │ │ │
│ TX ───────┼─────────→│ RX │
│ │ │ │
│ RX ←──────┼─────────┼│ TX │
│ │ │ │
│ GND ───────┼─────────┼│ GND │
└─────────────┘ └─────────────┘
▲ 仅三根线,距离<30cm问题:TTL电平传输距离短、抗干扰差
解决方案:RS232采用更高电压、负逻辑
RS232电平定义:
逻辑1(MARK): -3V 至 -15V ──────
逻辑0(SPACE): +3V 至 +15V ██████
▲正负电压增强抗干扰能力计算机与设备RS232连接(DTE-DCE):
┌─────────────┐ ┌─────────────┐
│ 计算机 │ │ 调制解调器 │
│ (DTE设备) │ │ (DCE设备) │
│ │ │ │
│ TX ───────┼─────────→│ RX │
│ │ │ │
│ RX ←──────┼─────────┼│ TX │
│ │ │ │
│ RTS ───────┼─────────→│ CTS │
│ │ │ │
│ DSR ←──────┼─────────┼│ DTR │
│ │ │ │
│ GND ───────┼─────────┼│ GND │
└─────────────┘ └─────────────┘
▲ 9针或25针连接器,完整硬件流控DB9接口(正面视图):
┌─────┐
│ 5 4 3 2 1│
│ 9 8 7 6 │
└─────┘
引脚功能:
1: DCD - 载波检测
2: RX - 接收数据
3: TX - 发送数据
4: DTR - 数据终端就绪
5: GND - 信号地
6: DSR - 数据设备就绪
7: RTS - 请求发送
8: CTS - 清除发送
9: RI - 振铃指示RS485采用差分信号传输:
传输线A:发送反相信号 ──────╮
│差值判断逻辑
传输线B:发送正相信号 ──────╯
差分信号优势:
外部干扰会同时影响A、B线
但A-B的电压差保持不变!噪声影响示例:
无噪声时: 有噪声时:
A线: 2.5V -1V = 1.5V A线: (2.5V+干扰) -1V = 1.5V+干扰
B线: 0V -1V = -1V B线: (0V+干扰) -1V = -1V+干扰
差值: 1.5V - (-1V) = 2.5V 差值: (1.5V+干扰) - (-1V+干扰) = 2.5V
▲ 噪声被抵消了!RS485总线网络拓扑:
┌─────────────┐
│ 主机设备 │
│ A B │
│ │ │ │
└────┼──┼─────┘
│ │
┌────┴──┴────┐
│ 120Ω终端电阻 │
└─────────────┘
│ │
┌──────────┴──┴──────────┐
│ │
┌───┴───┐ ┌───┴───┐
│设备1 │ │设备2 │
│A B│ │A B│
└───┬───┘ └───┬───┘
│ │
└─────────────────────────┘
▲ 一条总线最多可连接32个设备特性维度 | TTL | RS232 | RS485 |
|---|---|---|---|
信号类型 | 单端电压 | 单端电压(负逻辑) | 差分信号 |
逻辑电平 | 0/3.3V或0/5V | +3~+15V(0), -3~-15V(1) | ±1.5~±6V差分 |
最大距离 | < 0.5米 | 15米(9600bps时) | 1200米(较低速率时) |
最大速率 | 10 Mbps+ | 115.2 Kbps(15米时) | 10 Mbps(12米时) |
工作模式 | 全双工 | 全双工 | 半双工/全双工 |
驱动能力 | 点对点 | 点对点 | 多点(32节点) |
所需线数 | 3线(TX,RX,GND) | 3线(最小) 9线(标准) | 2线(A,B) + 地 |
抗干扰性 | 弱 | 中等 | 强(工业级) |
连接器 | 杜邦线/排针 | DB9/DB25 | 接线端子 |
成本 | 最低 | 中等 | 较高 |
典型应用 | 芯片间通信 | PC串口、老式外设 | 工业自动化、楼宇自控 |
传输距离对比(9600bps时):
TTL: █ 0.5m
RS232: ███████████████ 15m
RS485: ████████████████████████████████████████████████████████████ 1200m
传输速率对比(10米时):
TTL: ███████████████████████████████████████ 10Mbps+
RS232: ███████████████ 115.2Kbps
RS485: ██████████████████████████████████████ 10Mbps电磁干扰环境下的表现:
TTL: ████ 办公室环境
RS232: █████████ 轻度工业环境
RS485: █████████████████████ 重工业环境(电机、变频器附近)TTL应用:
┌─────────┐ ┌─────────┐
│温度传感器│────→│主控MCU │
│ (TTL) │ 30cm │ (TTL) │
└─────────┘ └─────────┘
▲ 板级通信,距离近
RS485应用(扩展为多房间):
┌─────────┐
│中央控制器│
│ (RS485) │
└────┬────┘
┌─────┼─────┐
┌───┴───┐ ┌───┴───┐
│卧室温控│ │客厅温控│
│(RS485)│ │(RS485)│
└───────┘ └───────┘
▲ 一个主机控制多个从机,距离可达整栋楼RS232应用(老式设备):
┌─────────┐ ┌─────────┐
│ 工业PC │────→│ 老式PLC │
│ (RS232) │ 10m │ (RS232) │
└─────────┘ └─────────┘
▲ 一对一控制,距离适中
RS485应用(现代产线):
┌─────────┐
│ 主控制器 │
│ (RS485) │
└────┬────┘
┌────────┼────────┐
┌───┴───┐┌───┴───┐┌───┴───┐
│ 机器人 ││传送带 ││检测仪 │
│(RS485)││(RS485)││(RS485)│
└───────┘└───────┘└───────┘
▲ 一个网络控制整条产线,抗干扰强实际工程中的混合使用:
┌─────────┐
TTL │ │ RS232
单片机 ──────────→│ 电平转换 │─────────→ PC
(3.3V) │ 芯片 │ (±12V)
└─────────┘
▲ MAX232等转换芯片
┌─────────┐
TTL │ │ RS485
单片机 ──────────→│ 收发器 │─────┬──→ 多个设备
(5V) │ │ A B │ (RS485网络)
└─────────┘ │
▲ MAX485等收发器芯片
事实:RS232标准距离仅15米,实际受电缆质量、波特率影响
事实:必须经过电平转换!直接连接会损坏芯片
错误连接: 正确连接:
MCU(TTL) → PC(RS232) MCU(TTL) → MAX232 → PC(RS232)
3.3V/5V ±12V 3.3V/5V 转换 ±12V
║会损坏PC串口! ║安全通信事实:两线制RS485是半双工,四线制才是全双工
当前应用分布:
TTL: ███████████████ 嵌入式开发、物联网设备
RS232: ██████ 老设备维护、工业特定应用
RS485: ██████████████ 工业自动化、安防系统特性 | RS485 | 以太网 | CAN总线 | USB |
|---|---|---|---|---|
成本 | 低 | 中高 | 中 | 低 |
距离 | 1200m | 100m | 1000m | 5m |
速率 | 10Mbps | 100Mbps-10Gbps | 1Mbps | 480Mbps-20Gbps |
实时性 | 好 | 一般 | 优秀 | 一般 |
拓扑 | 总线型 | 星型 | 总线型 | 星型 |
你的需求 | 推荐方案 | 理由 |
|---|---|---|
单片机与传感器通信 | TTL | 简单、便宜、无需转换 |
PC连接调试设备 | RS232或USB转TTL | 兼容性好、调试方便 |
工业现场多点控制 | RS485 | 距离远、抗干扰、支持多设备 |
短距离一对一设备 | RS232 | 标准接口、连接简单 |
教学和实验 | TTL | 成本低、安全性高 |
这些串口协议各有优势,理解它们的特性和适用场景,能帮助你在项目中做出最合适的选择。在实际工程中,经常需要根据具体需求混合使用这些技术。