(转)SPI时钟极性、时钟相位

SPI协议是一个 4 线、全双工的串口协议。根据串口时钟SCLK的相位SCPH和极性SCPOL的不同,有 4 种组合。
     CPOL CPHA
MODE0   0   0
MODE1   0   1  
MODE2   1   0
MODE3   1   1
CPOL: SPI空闲时的时钟信号电平(1:高电平, 0:低电平)
CPHA: SPI在时钟第几个边沿采样(1:第二个边沿开始, 0:第一个边沿开始)
MODE0和MODE3最常用。
1、在主设备处于不使能或者空闲的状态下,主设备输出的从设备选择信号CS保持高电平。
2、时钟极性SCPOL参数决定串口时钟SCLK 在无效的状态下是高电平还是低电平:
      (1)SCPOL=0,串口时钟(sclk)在无效的状态下保持低电平。
      (2)SCPOL=1,串口时钟( sclk)在无效的状态下保持高电平。
3、时钟相位SCPH参数决定在第几个时钟变化边沿开始采样数据:
     (1) SCPH=0时在第一个时钟变化沿开始发送数据。
     (2) SCPH=1时在第二个时钟变化沿采样输入数据。
4、SPI 协议时序图
图中 CS、 SCLK 对于主设备 SPI 为输出; spi_tx 为输出, spi_rx 为输入。
图 1 是 SCPOL=0,SCPH=0 的 SPI 协议时序图。
 
图 2 是 SCPOL=0,SCPH=1  的 SPI 协议时序图。
图 3 是 SCPOL=1,SCPH=0  的 SPI 协议时序图。

 
图 4 是 SCPOL=1,SCPH=1  的 SPI 协议时序图。
 文章转载自:https://blog.csdn.net/qwaszx523/article/details/70224879
原文地址:https://www.cnblogs.com/yeshenmeng/p/10515221.html