以下内容参考AI生成内容
1. I2C(Inter-Integrated Circuit,集成电路间总线)
- 定义:由飞利浦(现恩智浦)开发的短距离串行通信总线,用于芯片级设备间的低速数据传输。
- 工作原理:
- 采用两根信号线:SDA(串行数据线)和 SCL(串行时钟线),均为双向传输。
- 支持一主多从或多主多从架构,通过设备地址区分不同从机(7 位或 10 位地址)。
- 数据传输速率:标准模式(100kbps)、快速模式(400kbps)、高速模式(3.4Mbps)等。
- 特点:
- 结构简单(仅需两根线),硬件成本低,适合板内芯片间通信(如传感器、EEPROM、OLED 屏等)。
- 传输距离短(通常几厘米到几米),抗干扰能力较弱。
- 应用:单片机与传感器(如温湿度传感器 SHT30)、实时时钟(RTC)、显示屏等的通信。
2. USART(Universal Synchronous/Asynchronous Receiver/Transmitter,通用同步 / 异步收发器)
- 定义:一种可同时支持同步和异步通信的硬件接口,是 UART(异步)的增强版。
- 工作原理:
- 异步模式:无需时钟线,通过约定波特率(如 9600、115200)同步数据,帧结构包含起始位、数据位(5-9 位)、校验位(可选)、停止位(1-2 位)。
- 同步模式:需额外时钟线(CLK),由主机提供时钟,数据传输更高效(无起始 / 停止位开销)。
- 特点:
- 灵活性高,可根据需求切换同步 / 异步模式,支持全双工通信(发送和接收独立)。
- 硬件实现,减少 CPU 占用,适合中低速数据传输(通常≤2Mbps)。
- 应用:单片机与 PC、蓝牙模块、GPS 模块等的通信(常见异步模式,即 UART)。
3. SPI(Serial Peripheral Interface,串行外设接口)
- 定义:由摩托罗拉开发的高速全双工同步通信协议,主要用于短距离设备间通信。
- 工作原理:
- 采用四根信号线:SCLK(时钟线)、MOSI(主机输出从机输入)、MISO(主机输入从机输出)、SS/CS(从机选择,低电平有效)。
- 一主多从架构,主机通过 SS 线单独选中某个从机,时钟由主机控制,数据在时钟边沿同步传输(全双工,MOSI 和 MISO 同时收发)。
- 传输速率:通常可达几 Mbps 到几十 Mbps(如 10Mbps、50Mbps),速率由主机决定。
- 特点:
- 高速率、全双工,无地址机制(通过 SS 线选通从机),硬件结构简单,抗干扰性优于 I2C。
- 信号线较多(相比 I2C),且从机数量受 SS 线数量限制(需单独布线)。
- 应用:单片机与高速外设(如 SD 卡、LCD 显示屏、ADC/DAC 芯片、无线模块)的通信。
4. RS232(Recommended Standard 232)
- 定义:由 EIA(电子工业协会)制定的串行通信物理层标准,规定了接口的电气特性、引脚定义等。
- 工作原理:
- 电气特性:采用单端信号传输,逻辑 “1” 为 - 3~-15V,逻辑 “0” 为 + 3~+15V,信号地(GND)作为参考。
- 常用引脚:DB9 接口(如 TXD 发送、RXD 接收、GND 地),支持全双工通信。
- 传输速率:通常≤115200bps,传输距离≤15 米(受噪声影响大)。
- 特点:
- 历史悠久,广泛用于早期设备(如 PC 的 COM 口),但抗干扰能力弱(单端传输),传输距离短。
- 需电平转换芯片(如 MAX232)与 TTL 电平(单片机常用)转换。
- 应用:传统计算机与调制解调器、打印机、工业设备的通信(逐渐被 USB 替代,但工业领域仍有使用)。
5. RS485(Recommended Standard 485)
- 定义:EIA 制定的差分信号串行通信标准,是 RS422 的改进版,适合长距离、多节点通信。
- 工作原理:
- 采用差分信号传输:A 线和 B 线,信号通过 A-B 的电压差表示(差模信号),抗共模干扰能力强。
- 支持多节点联网(一主多从或对等通信),最多可连接 32 个节点(通过中继器可扩展至更多)。
- 传输速率与距离相关:100kbps 时可达 1200 米,10Mbps 时约 15 米。
- 特点:
- 长距离(数百米至数千米)、高抗干扰,适合工业环境,支持半双工或全双工(需额外控制)。
- 无内置协议,需配合上层协议(如 Modbus)使用。
- 应用:工业自动化(如 PLC、传感器、变频器)、安防监控、智能楼宇等分布式系统。
6. CAN(Controller Area Network,控制器局域网)
- 定义:由博世开发的串行通信协议,最初用于汽车电子,后扩展至工业领域,支持多节点实时通信。
- 工作原理:
- 采用差分信号传输(CAN_H 和 CAN_L),支持多主架构(节点平等,可主动发送数据)。
- 基于消息的通信:数据帧包含标识符(ID),用于优先级判断(ID 越小优先级越高),支持冲突检测与仲裁(非破坏性仲裁,确保高优先级消息优先传输)。
- 传输速率:最高 1Mbps(距离≤40 米),低速率时(如 50kbps)可达 1000 米。
- 特点:
- 高可靠性(错误检测与自动重传)、实时性强、抗干扰,适合多节点动态通信。
- 无节点数量限制(理论上仅受总线负载影响)。
- 应用:汽车电子(发动机控制、ABS)、工业自动化(机器人、机床)、医疗设备等。
7. TCP/IP(Transmission Control Protocol/Internet Protocol,传输控制协议 / 网际协议)
- 定义:互联网的核心协议簇,包含一组用于数据传输的规则,分为四层模型(应用层、传输层、网络层、链路层)。
- 核心协议:
- IP(网际协议):网络层协议,负责将数据包从源地址路由到目标地址(基于 IP 地址,如 IPv4、IPv6),无连接、不可靠(不保证数据完整性和顺序)。
- TCP(传输控制协议):传输层协议,基于 IP 实现可靠传输,通过三次握手建立连接、四次挥手断开连接,支持流量控制、拥塞控制和数据重传(确保数据有序、无丢失)。
- 其他协议:UDP(传输层,无连接、不可靠,适合实时性要求高的场景)、HTTP/FTP(应用层)等。
- 特点:
- 通用性强,支持异构网络互联(如以太网、无线网络),是互联网的基础。
- TCP 提供可靠传输,UDP 提供高效传输,按需选择。
- 应用:所有互联网通信(如网页浏览、文件传输、视频通话)、工业以太网等。
8. Socket(套接字)
- 定义:TCP/IP 协议栈中应用层与传输层的接口,是网络编程的抽象概念,用于标识网络中两个设备的通信端点。
- 工作原理:
- 由IP 地址 + 端口号唯一标识(如 192.168.1.1:8080),IP 地址定位设备,端口号定位设备上的应用程序。
- 支持两种通信模式:
- 流式套接字(SOCK_STREAM):基于 TCP,提供可靠、面向连接的字节流传输。
- 数据报套接字(SOCK_DGRAM):基于 UDP,提供不可靠、无连接的数据报传输。
- 特点:
- 屏蔽了底层协议细节,简化网络编程(如 C 语言的 socket () 函数、Python 的 socket 库)。
- 是实现网络通信的基础(如客户端 - 服务器模型)。
- 应用:所有基于 TCP/IP 的网络应用(如 Web 服务器、即时通讯、物联网设备联网)。
9. Modbus
- 定义:由施耐德开发的工业通信协议,是应用最广泛的现场总线协议之一,基于主从架构。
- 工作原理:
- 支持多种物理层(如 RS232、RS485、以太网),对应不同变体:
- Modbus RTU:基于 RS485,数据以二进制帧传输,效率高,适合工业现场。
- Modbus ASCII:基于 RS232/RS485,数据以 ASCII 码传输,可读性强,速率低。
- Modbus TCP/IP:基于以太网,通过 TCP/IP 传输,适合远程通信。
- 通信流程:主机发送请求(含从机地址、功能码、数据),从机响应(返回数据或状态),功能码定义操作类型(如读取线圈、写入寄存器)。
- 支持多种物理层(如 RS232、RS485、以太网),对应不同变体:
- 特点:
- 协议简单、开源免费,兼容性强(几乎所有工业设备都支持),适合中小规模工业网络。
- 主从模式,主机控制通信节奏。
- 应用:工业自动化中设备间的数据交互(如 PLC 与传感器、变频器、人机界面 HMI 的通信)。
总结对比
协议 / 接口 | 传输方式 | 速率 | 距离 | 典型应用场景 |
---|---|---|---|---|
I2C | 串行同步(2 线) | 低速(≤3.4Mbps) | 短(板内) | 芯片间通信 |
SPI | 串行同步(4 线) | 高速(≤50Mbps) | 短(板内) | 高速外设通信 |
USART | 串行异步 / 同步 | 中速(≤2Mbps) | 中(数米) | 设备间串口通信 |
RS232 | 单端串行 | 低速(≤115200bps) | 短(≤15 米) | 传统设备通信 |
RS485 | 差分串行 | 中速(≤10Mbps) | 长(≤1200 米) | 工业分布式网络 |
CAN | 差分串行 | 中高速(≤1Mbps) | 中长(≤1000 米) | 汽车 / 工业实时通信 |
TCP/IP | 分组交换 | 高速(Mbps-Gbps) | 极长(互联网) | 网络互联 |
Modbus | 基于多种物理层 | 中低速 | 中长 | 工业设备数据交互 |
这些技术覆盖了从板内芯片到全球互联网的通信需求,根据速率、距离、可靠性等要求选择合适的方案。