1. mode 介绍
CPOL 是时钟的极性,用来表示SPI总线在空闲时SCK是低电平还是高电平,低电平为0,高电平为1;
CPHA 是时钟的相位,用来决定何时进行信号采样,在第一个跳变沿还是第二个跳变沿,在第一个跳变沿采样则为0,在第二个跳变沿采样则为1。
Mode 0 : Clock Polarity (CPOL) = 0 and, Clock Phase (CPHA) = 0
Mode 1 : CPOL = 0 and, CPHA = 1
Mode 2 : CPOL = 1 and, CPHA = 0
Mode 3 : CPOL = 1 and, CPHA = 1
(1)当CPHA=1时,说明SCK时钟的第二个边沿进行数据位采样,此时,当CPOL=0时指时钟空闲为低电平,第二个边沿为高到低,即下降沿采样,CPOL=1指时钟空闲时为高电平,第二个边沿为低到高,即上升沿采样。
(2)当CPHA=0时,说明SCK时钟的第一个边沿进行数据位采样,当CPOL=0时指时钟空闲为低电平,第一个边沿为低到高,即上升沿采样,CPOL=1指时钟空闲时为高电平,第一个边沿为高到低,即下降沿采样。
2.SPI接口介绍
2.1 SPI简介
SPI 是串行外围设备接口,是Motorola首先在其MC68HCXX系列处理器上定义的。
SPI,是一种高速,全双工,同步的通信总线,并且在芯片的管脚上只占用四根线,节约了芯片的管脚,同时为PCB的布局上节省空间,提供方便,主要应用在 EEPROM,FLASH,实时时钟,AD转换器,还有数字信号处理器和数字信号解码器之间。
2.2 SPI结构图
SPI接口一般使用4条线通信:
MISO 主设备数据输入,从设备数据输出(该引脚做主机时为输入,做从机时为输出);
MOSI 主设备数据输出,从设备数据输入(该引脚做主机时为输出,做从机时为输入);
SCLK时钟信号,由主设备产生;
CS从设备片选信号,由主设备控制(用的设备片选拉低,不用的设备片选拉高,实现一个SPI接口连接多个SPI设备)
2.3 接口框图
SPI接口一般使用4条线通信:
MISO主设备数据输入,从设备数据输出;MOSI主设备数据输出,从设备数据输入;
SCLK时钟信号,由主设备产生。CS从设备片选信号,由主设备控制。
SPI工作原理总结:
1、硬件上为4根线。
2、主机和从机都有一个串移位寄存器,主机通过向它的SPI串行寄存器写入一个字节来发起一次传输。
3、串行移位寄存器通过MOSI信号线将字节传送给从机,从机也将自己的串行移位寄存器中的内容通过MISO信号线返回给主机。这样,两个移位寄存器中的内容就被交换。文章来源:https://www.toymoban.com/news/detail-519184.html
4、外设的写操作和读操作是同步完成的。如果只进行写操作,主机只忽略接收到的字节;反之,若主机要读取从机的一个字节,就必须发送一个空字节来引发从机的传输。文章来源地址https://www.toymoban.com/news/detail-519184.html
到了这里,关于SPI的介绍--GPIO口模拟SPI的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!