SPI是一种通信接口、全双工三线同步串行外围接口 主从模式
CS、SCK、MOSI、MISO
CS:片选、控制和哪个从机通信
SCK:时钟线
MOSI:主机发送、从机接收
MISO:主机接收、从机发送
通过时钟极性(CPOL)和时钟相位(CPHA)来判断工作模式
CPOL=0,空闲时候为低电平
CPHA=1,空闲时候为高电平
CPHA=0,在串行同步时钟的第一个跳变沿(上升或下降)数据被采样
CPHA=1,在串行同步时钟的第二个跳变沿(上升或下降)数据被采样
硬件SPI:使用单片机自带的硬件SPI控制器
需要输出引脚配置成复用功能,需要配置SPI的结构体
软件(模拟)SPI:使用单片机的GPIO口拉高拉低模拟出来SPI的时序
输出引脚配置成普通的推挽输出,不需要配置SPI的结构体
SPI和外部硬件联系
SCK和MOSI复用推挽输出
CS通用推挽输出
MISO浮空输入