这是翻译自PCB Hero的一篇非常基础的文章。
还有一篇关于这三个总线的比较文章可以参照阅读一下:https://www.totalphase.com/blog/2021/12/i2c-vs-spi-vs-uart-introduction-and-comparison-similarities-differences/
I2C、SPI、UART 之间的差异及其布局指南
从8位到32位的MCU都将至少使用其中一种协议以及 GPIO,以实现可编程性并向简单的外设发送信号。这三个串行协议都是总线协议;I2C和UART 使用寻址方案,而SPI是无地址的。虽然SPI是无地址的,但它是一种总线协议,仍然可以用来选择下游设备收发数据。
I2C 协议走线和布局指南
I2C(发音为 I-squared C,有时也称为内部集成电路 IIC)使用两条线路(标准、快速和快速加模式)来控制其他设备;一根线是时钟线(SCL),另一根线是数据线(SDA)。它具有三种模式,下表总结了这三种模式。请注意,上升/下降时间值假定 I/O 处安装了典型的串联电阻。
模式 |
数据速率/时钟速度 |
最大上升/下降时间 |
最小上升/下降时间 |
方向 |
标准 |
< |