为什么在SPI通信中提供不同的模式?
创始人
2024-04-25 18:45:14

SPI传输模式

因为SPI是全双工也就是说(MOSI和MISO)上同时发送和接收数据

时钟极性(CPOL) 时钟相位(CPHA)是定义SPI总线使用的时钟格式得主要参数,根据SPOL参数,SPI时钟可以是反向或非反向的。CPHA参数用于转移采样阶段

四种模式:

Mode 0 -> CPOL = 0, CPHA = 0
Mode 1 -> CPOL = 0, CPHA = 1
MODE 2 -> CPOL = 1, CPHA = 0
MODE 3 -> CPOL = 1, CPHA = 1

CPOL=0, CPHA=0

SPI-cpol-0-CPA-0.png

数据必须在第一个时钟信号上升之前是可用的数据。时钟空闲状态为0,MOSI和MISO线路上的数据在高电平时必须稳定,并且可以在时钟低电平的时候数据变换,数据在时钟的低到高转换上捕获,并且在从高到低的时钟转换上传播。

CPOL=0, CPHA=1

SPI-cpol-0-CPHA-1.png

第一个时钟信号上升可用于准备数据。时钟空闲状态为0。MOSI和MISO线上的数据在时钟低电平时必须稳定,并且可以在时钟高电平的时候数据变换。数据在时钟高到低转换上捕获,并在低到高时钟转换时传播。

CPOL=1, CPHA=0

SPI-cpol-1-CPHA-0.png

数据必须在第一个时钟信号下降之前是可用的数据。时钟空闲状态为1。MISO和MOSI线路上的数据在时钟低电平时必须稳定。并且可以在时钟高电平时数据变换,数据在时钟由高到低转换上捕获,并在低到高时钟转换时传播。

CPOL=1, CPHA=1

SPI-cpol-1-CPHA-1.png

数据必须在第一个时钟信号下降可用。时钟空闲状态为1。MISO和MOSI线路上的数据在时钟高电平必须保持稳定。并且在时钟低电平时数据变换,数据在时钟由低到高转换上捕获,并在从高到低的时钟转换上传播。

并非所有SPI器件都支持所有模式。因此,您需要查看器件数据表以了解模式,在与该器件通信时,您需要首先通过编程相关主机寄存器来设置正确的模式,然后开始通信。

相关内容

热门资讯

猫咪吃了塑料袋怎么办 猫咪误食... 你知道吗?塑料袋放久了会长猫哦!要说猫咪对塑料袋的喜爱程度完完全全可以媲美纸箱家里只要一有塑料袋的响...
demo什么意思 demo版本... 618快到了,各位的小金库大概也在准备开闸放水了吧。没有小金库的,也该向老婆撒娇卖萌服个软了,一切只...
北京的名胜古迹 北京最著名的景... 北京从元代开始,逐渐走上帝国首都的道路,先是成为大辽朝五大首都之一的南京城,随着金灭辽,金代从海陵王...
苗族的传统节日 贵州苗族节日有... 【岜沙苗族芦笙节】岜沙,苗语叫“分送”,距从江县城7.5公里,是世界上最崇拜树木并以树为神的枪手部落...