<strong>IIC vs SPI</strong>
现今,在低端数字通信应用领域,我们随处可见IIC(Inter-Integrated Circuit)和SPI (Serial Peripheral Interface)的身影,因为这两种通信协议非常适合近距离低速芯片间通信。Philips(对应IIC)和Motorola(对应SPI)出于不同背景和市场需求制定了这两种标准通信协议。
IIC开发于1982年,当时是为了给电视机内的CPU和外围芯片提供更简易的互联方式。电视机是最早的嵌入式系统之一,而最初的嵌入系统是使用内存映射(memory-mapped I/O)的方式来互联微控制器和外围设备的。要实现内存映射,设备必须并联入微控制器的数据线和地址线,这种方式在连接多个外设时需大量线路和额外地址解码芯片,很不方便并且成本高。
为了节省微控制器的引脚和和额外的逻辑芯片,使印刷电路板更简单,成本更低,位于荷兰的Philips实验室开发了IIC,这是一种只使用两根线接连所有外围芯片的总线协议。最初的标准定义总线速度为100kbps。经历几次修订,该速度在1995年达到了400kbps,1998年达到了3.4Mbps。