SPI数据传输方式

SPI同步传输接口Serial Peripheral Interface,不同于I2C的是可以实现全双工通信。常说的四线SPI包括SCLK(Serial clock)用于产生同步信号、MISO(master in slave out)、MOSI(master out slave in)以及/SS(slave slecet)片选信号,其功能通过移位寄存器来实现。
SPI功能结构
SPI分为master和salve,波特率及相应的clk通过主机master来产生,片选信号为低时生效开始工作。

数据传输方式
SPI控制寄存器可以设置不同的phase和polarity来得到四种不同的工作模式,四种时间模式:根据不同的phase和polarity组合来得到。在master和slave可以设置不同,而即使可以变化设置来适合不同的场景。其中polarity用来设置不工作无效时处于高电平HIGH还是低电平LOW,phase用来设置在clock的哪一个边沿采样,理解上clk的另一边沿则为切换发送数据的时刻点。

当phase设置为0是,数据的传输方式

当phase设置为1时,数据的传输方式

设备连接的方式
维基百科上介绍了几种链接方式,简单明了的链接方式如下

一个master多个slave和多个ss的连接方式

一个master和多个slave使用一个片选信号的连接方式,理解上利用了多个寄存器循环移位

QSPI/SSP与SPI
QSPI与普通SPI最大的差别在于其最多可以有四个数据线,亦即同时可以传输四个比特,可选择为1个比特、两个比特及四个比特的不模式。SSP亦即synchronous serial port,SSP的好处,实在在资源复用情况下,可以根据需求选择为SPI或I2C的模式进行工作。

猜你喜欢

转载自blog.csdn.net/dreambitbybit/article/details/79520622