一、SPI简介

SPI(serial peripheral interface)串行外设接口,SPI是一种高速的,全双工,同步的通信总线

在这里插入图片描述

二、单机与多机通信

1.单击通信

在这里插入图片描述

2.多机通信

在这里插入图片描述

二、通信细节

1.寻址方式

spi寻址是通过向对应从设备上的片选线CS上发送使能信号

在这里插入图片描述

2.通信过程

在这里插入图片描述

3.相位和极性

SPI总线有四种工作方式,其中使用的最为广泛的是模式0和模式3方式。

CPOL(Clock Polarity):时钟极性选择,为0时SPI总线空闲时,时钟线为低电平 ;为1时SPI总线空闲时,时钟线为高电平。

CPHA(Clock Phase):时钟相位选择,为0时在SCLK第一个跳变沿,主机对MISO引脚电平采样;为1时在SCLK第二个跳变沿,主机对MISO引脚电平采样。

SPI总线有四种不同的工作模式,取决于极性CPOL和相位CPHL
在这里插入图片描述

在这里插入图片描述

3.1CPHA = 0,CPOL = 0

在这里插入图片描述

3.2CPHA = 0,CPOL = 1

在这里插入图片描述

3.3CPHA = 1,CPOL = 0

在这里插入图片描述

3.4CPHA = 1,CPOL = 1

在这里插入图片描述

模式0(2.4G无线传输模块:NRF24L01)

模式3(SPI FLASH:W25Q128)

三、I2C和SPI的异同

1.相同点

  • 均采用串行、同步方式
  • 均采用TTL电平,传输距离和应用场景类似
  • 均采用主从方式工作
  • 均先发送高位再发送低位

2.不同点

  • 数据传输方向不同:I2C为半双工,SPI为全双工
  • 传输数据机制不同:I2C有应答机制,SPI无应答机制
  • 寻址方式不同:I2C通过向总线广播从机地址来寻址,SPI通过向对应从机发送使能信号来寻址
  • 时钟极性和时钟相位不同:I2C的时钟极性和时钟相位固定,SPI的时钟极性和时钟相位可调
Logo

北京人形旗下天工造物具身智能开源社区,聚焦具身天工与慧思开物两大平台

更多推荐