一、SPI介绍
串行外设设备接口(Serial Peripheral Interface),是一种高速的,全双工,同步的通信总线。

接线方式:

图1 SPI接线图
二、SPI外设对应引脚

三、SPI工作模式
时钟极性(CPOL)
没有数据传输时,时钟线的空闲状态电平
0:SCK在空闲状态,保持低电平
1:SCK在空闲状态,保持高电平
时钟相位(CPHA)
0:SCK的第一(奇数)边沿,进行数据位采样
1:SCK的第二(偶数)边沿,进行数据位采样
| SPI工作模式 | CPOL | CPHA | SCL空闲状态 | 采样边沿 | 采样时刻 |
| 0 | 0 | 0 | 低电平 | 上升沿 | 奇数边沿 |
| 1 | 0 | 1 | 低电平 | 下降沿 | 偶数边沿 |
| 2 | 1 | 0 | 高电平 | 下降沿 | 奇数边沿 |
| 3 | 1 | 1 | 高电平 | 上升沿 | 偶数边沿 |

四、SPI相关HAL库驱动

寄存器注意点:SPI控制寄存器1(SPI_CR1)

上图表面:SSM为1,SSI决定NSS电平,SSI=1则NSS=1。
