SPI是串行外设接口(Serial Peripheral Interface)的缩写,是一种高速的,全双工,同步的通信总线,并且在芯片的管脚上只占用四根线,节约了芯片的管脚,同时为PCB的布局上节省空间,提供方便,正是出于这种简单易用的特性,越来越多的芯片集成了这种通信协议,比如AT91RM9200。SPI总线是一种4线总线,因其硬件功能很强,所以与SPI有关的软件就相当简单,使中央处理器(Central Processing Unit,CPU)有更多的时间处理其他事务。
SPI通常通信方式为一对一,或者 一对多。即一个主设备与多个从设备相互通信。
SPI一般有4个信号,采取用4个信号即可实现通信。、
SCLK(Serial Clock):时钟信号,由主设备产生。
MISO (Master Input Slave Output): 主设备输入,从设备输出。
MOSI (Master Output Slave Input): 主设备输出,从设备输入。
CS (Chip Select) :片选使能信号,由主设备控制。
与从设备通信方式,采取片选信号控制从设备使能,并与之通信。
通信过程:
1、由CS片选信号控制与确定的从设备通信。
2、主设备发送数据或从设备发送数据。
3、由主设备停止通信,即CS信号失能。
SPI有4中不同的工作模式,分别由CPOL(时钟极性)和CPHA(时钟相位)来控制主设备的工作模式。
CPOL 表示SCLK空闲时的状态:
CPOL=0 空闲时 SCLK为低。
CPOL=1 空闲时 SCLK为高。
CPHA 表示每周期某个时钟沿采样:
CPHA=0 每周期第一时钟沿采样。
CPHA=1 每周期第二时钟沿采样。
将上述两种进行组合得到了4种不同的工作模式。
4种不同的工作模式如下:
参考资料:
标签:SCLK,总线,通信,笔记,SPI,设备,时钟 From: https://www.cnblogs.com/yhm1314/p/16759619.html