【【STM32-SPI通信协议】】

STM32-SPI通信协议

STM32-SPI通信协议
•SPI(Serial Peripheral Interface)是由Motorola公司开发的一种通用数据总线
•四根通信线:SCK(Serial
Clock)、MOSI(Master Output Slave Input)、MISO(Master
Input Slave Output)、SS(Slave Select)
•同步,全双工
•支持总线挂载多设备(一主多从)
既然是同步的,我们就会发现它是存在时钟线的,那么其中的SCK就是同步时钟的时钟线
全双工就是 发送归发送接收归接收 这是两根线 互相不受影响
MOSI 是 主机发送从机接收的数据线
MISO 是 主机接收从机发送的数据线

SPI支持总线挂载多设备 一主多从
SS的作用是直接连接到一个从机上 一个从机连一根 片选作用

所有SPI设备的SCK、MOSI、MISO分别连在一起
主机另外引出多条SS控制线,分别接到各从机的SS引脚
输出引脚配置为推挽输出,输入引脚配置为浮空或上拉输入
【【STM32-SPI通信协议】】_第1张图片
SS 主要起到了片选的作用因为有多个从机 所以才会接上了SS1 SS2 SS3 等等
虽然它在图片里没有画出来但是这种设备的实现都是需要共地的
如果没有供电的话,主机和从机都要引入Vcc 一起带动电压
SCK 完全是由主机掌控 主机单纯的输出 从机只能被动的接收
SS线是低电平有效的 当我们主机需要控制某个从机时 给SS线赋低电平 结束通信之后会重新把SS置回高电平1
我们把SPI通信中的输出设置为推挽输出模式
输入引脚配置为浮空或上拉输入
因为MISO都接在了一起 所以为了防止出现不必要的扰动 当SS 为高 未被选中时 ,那么MISO 就会被设置为高阻态 因为其实我们基本上都是操作主机的 从机的这种只要我们了解即可,并非需要真的写此类代码
【【STM32-SPI通信协议】】_第2张图片
起始条件:SS从高电平切换到低电平
终止条件:SS从低电平切换到高电平
【【STM32-SPI通信协议】】_第3张图片

你可能感兴趣的:(stm32学习,stm32,嵌入式硬件,单片机)