UART 通用异步串行口,速率不快,可全双工,结构上一般由波特率产生器、UART发送器、UART接收器组成,硬件上两线,一收一发。
SPI 高速同步串行口,高速,可全双工,收发独立,同步接口,可实现多个SPI设备互联,硬件3~4线。
I2C 双向、两线、串行、多主控接口标准。速率不快,半双工,同步接口,具有总线仲裁机制,非常适合器件间近距离经常性数据通信,可实现设备组网。
USB 通用串行总线,高速,半双工,由主机、hub、设备组成。设备可以与下级hub相连构成星型结构。
以表格总结如下:
总线接口 | 串/并口 | 同步/异步 | 速率 | 工作方式 | 用线 | 总线拓扑接口 | 通信距离 |
UART | 串行口 | 异步 | 慢 波特率设置 | 全双工 | 2线 Rx,Tx | RS485支持总线式、星形、树形 | 远 485最远1200m |
I2C | 串行口 | 同步 | 慢 100kbps 400kbps 3.4Mbps | 半双工 | 2线 SDA,SCL | 总线型(特殊的树形) | 近 |
SPI | 串行口 | 同步 | 快 最快50Mbps | 全双工 | 3或4线 SCLK,SIMO, SOMI,SS(片选) | 环形 | 远 |
USB | 串行口 | 同步 | 快 USB 1.0 :1.5Mbps USB 1.1 :12Mbps USB 2.0 :480Mbps USB 3.0 :5Gbps | 半双工 | 4线 Vbus(5V) GND, D+,D-(3.3V) | 星形 | 最长5m |