SPI(串行外设
接口)是板载 IC 间通信接口之一。它是由摩托罗拉公司(飞思卡尔半导体)推出的。由于它的简单性和通用性,它被集成到各种外围IC中,并与Philips IIC
总线并列。SPI 的信号数量,三线或四线,比 IIC 的两线多,但传输速率可以上升到 20 Mbps 或更高,这取决于设备的能力(比 IIC 快 5 - 50 倍)。因此,它主要用于需要尽可能高的数据传输速率的应用,ADC、DAC或通信IC。
SPI结构 SPI 的基本结构如右图所示。Master IC和Slave IC之间连接了三根
信号线SCLK (Serial Clock)、MISO (Master-In Slave-Out)和MOSI (Master-Out Slave-In),两个8位移位寄存器的内容为与主 IC 驱动的移位时钟交换。除了上述三个之外,另外一个SS(从选择)信号用于同步数据包或字节边界的开始,并用于同时实现多从配置。大多数从机 IC 都会为 SPI 接口分配不同的引脚名称,例如 DI、DO 和 CS。对于单向
传输设备,如 DAC 和单通道 ADC,可以省略任何一条
数据线。数据位首先移入MSB。
将一些从 IC 连接到 SPI 时,从 IC 并联连接,主 IC 的 CS 信号连接到每个从 IC。由 CS 信号选择的从 IC 的数据输出被启用,取消选择的设备从 MISO 线上断开。

在 SPI 中,数据移位和数据锁存分别在相反的时钟边沿完成。有一个优点是,当移位和锁存操作分开时,可以避免两个操作之间的关键时序。因此,可以减轻 IC 设计和电路板设计的时序考虑。但另一方面,由于时钟极性和时钟相位的组合,有四种操作模式,主IC必须将其SPI接口配置为从IC所需的SPI模式。