I2C和SPI作为两种非常常用的低速外部总线
I2C
I2C是以前的飞利浦半导体制定的标准,也就是如今的NXP。
I2C总线由一条数据线(SDA)和一条时钟线(SCL)组成。设备分主从,主设备提供时钟,并发起操作。
SMBUS
SMBUS是一种基于I2C而扩展出来的协议。有一些更为复杂的操作,但是原理都还是基于I2C的。
PMBUS
PMBUS是基于SMBUS,定义了很多和电源管理相关的命令。在物理传输上,和SMBUS是完全一致的。
SPI
SPI有四根线,一根时钟,一根收数据,一根发数据,一根片选。当有多个设备时,他就需要多根片选,所以相比I2C而言,布线更为复杂。
SPI只规定了如何收发数据,但是数据的具体格式含义并没有定义。譬如在I2C中跟在7位地址后面的1位表示读写,所有设备都需要遵循。但是SPI不是这样,每个slave都有自己定义的数据格式,各不相同。
本文详细对比了I2C和SPI两种常见的低速外部总线标准。I2C由NXP制定,使用两条线进行通信,支持主从模式;SPI则有四条线,提供了更复杂的数据传输能力,但布线更复杂。文章还介绍了基于I2C的SMBUS和PMBUS协议,以及它们在电源管理和复杂操作上的应用。
389

被折叠的 条评论
为什么被折叠?



