Serial Interconnects: Understanding I2C and SPI
Embedded systems require a surprising amount of inter-component interconnections. Serial interconnects can reduce the complexity of interfacing microprocessors and peripheral devices in embedded systems. Two of the more popular serial interconnect protocols are Serial Peripheral Interface (SPI) and Integrated Circuit Bus (I2C). This paper provides a detailed overview of the hardware interface and serial protocols used by these standards. Tradeoffs in hardware complexity, software overhead, access time performance and impact to embedded system firmware design are discussed as compared to parallel interfaces and SPI versus I2C.