SPI通信-基础知识

SPI的英文:Serial Periphral Interface

SPI通信是由摩托罗拉公司设计的,它将通信的器件双方分成了主机(Master)和从机(Slave),采用四条线通信,分别是CS MOSI MISO CLK,可以实现全双工通信。

  • CS:片选
  • MOSI:主机输出从机输入
  • MISO:主机输入从机输出
  • CLK:时钟

SPI通信有四种工作模式:

模式CPOLCPHA
000
101
210
311

CPOL决定了SPI在空闲的时候,CLK的电平是低还是高,如果CPOL是0,就是低电平,如果CPOH是1,就是高电平。

CPHA决定了获取数据是在第一个边沿还是在第二个边沿,与CPOL一起决定了是在CLK的上升沿还是在下降沿,如果,CPOL=0,那么,CLK空闲的电平是低电平,第一个边沿就是上升沿,第二个边沿就是下降沿,同样,如果CPOL=1,那么CLK空闲的电平是高电平,第一个边沿就是下降沿,第二个边沿就是上升沿。再结合CPHA的值是0还是1,就可以决定是上升沿获取数据还是下降沿获取数据。