SPI通信协议
- 一、SPI协议介绍
- 二、发送数据
- 三、读数据
- 注意
一、SPI协议介绍
SPI是一种全双工的串行通信协议
他有四条线
SCLK(Serial Clock):时钟线
MOSI(Master Output, Slave Input):关键字母"O"Output,发送数据
MISO(Master Input, Slave Output):关键字母"I"Input,接受从机数据
SS(Slave Select):选择和谁通信
一主多从模式
- SCLK(Serial Clock):这是SPI总线上的时钟信号线,用于同步数据传输。主设备通过控制SCLK线的时钟脉冲来驱动数据的传输。
- SS(Slave Select):这是从设备的片选信号线,用于选择与主设备进行通信的特定从设备。主设备通过控制SS线的状态来选择要与之通信的从设备。
- MOSI(Master Output, Slave Input):这是主设备的输出信号线和从设备的输入信号线。主设备通过MOSI线将数据发送给从设备。
- MISO(Master Input, Slave Output):这是主设备的输入信号线和从设备的输出信号线。从设备通过MISO线将数据发送给主设备。
二、发送数据
0x01地址发送数据00001111
MOSI发送起始位操作码地址以及数据
从属设备在时钟上升沿采集数据
一共有四种采样模式分别是:空闲电平为高/低,同时采样沿变为上升/下降沿(具体用哪种需要查阅芯片数据手册)
三、读数据
同样要发送起始位,操作码,地址,还要提供时钟信号
读数据通过
MOSI发送起始位操作码地址
MISO就可以在相应的时序接收到数据
注意
- 一次读写多少位数据没有标准,主要根据数据手册
- 四种采样模式的选择也要根据数据手册决定
https://www.bilibili.com/video/BV1F54y1M7e7/