stm32入门教程--SPI协议3 超详细!!!

简介

寻址方式、通信过程

极性和相位

SPI总线由四种不同的工作模式,取决于极性(CPOL)和相位(CPHL)这两个因素

CPOL表示SCLK(时钟线)空闲时的状态

CPOL=0,空闲时SCLK为低电平

CPOL=1,空闲时SCLK为高电平

CPHA表示采样时刻

CPHA=0,每个周期的第一个时钟沿采样

CPHA=1,每个周期的第二个时钟沿采样

详解

CPOL(极性)=0,CPHA(相位)=0

图中默认电平为低电平,即CPOL为0,

在通信开始时往数据线上发送一位数据(---),

紧接着时钟线从低电平变为高电平(),接收器就可以把刚才这位数据读走

再往下,由高电平变为低电平时(),再发送第二位数据,

紧接时钟线由低电平变为高电平(),接收器就可以读走第二位数据

一共循环八次就可以完成一个字节数据的发送。

CPOL(极性)=0,CPHA(相位)=1

图中默认电平为低电平,即CPOL为0,CPHA为1,上升沿时发送数据,

在通信开始时,SCLK(时钟线)由低电平变为高电平()发送数据,

紧接着时钟线从高电平变为低电平(),接收器就可以把刚才这位数据读走

再往下,由低电平变为高电平时(),再发送第二位数据,

紧接时钟线由高电平变为低电平(),接收器就可以读走第二位数据

一共循环八次就可以完成一个字节数据的发送。

CPOL(极性)=1,CPHA(相位)=0

图中默认电平为高电平,即CPOL为1,

在通信开始时往数据线上发送一位数据(---),

紧接着时钟线从高电平变为高电平(),接收器就可以把刚才这位数据读走

再往下,由低电平变为高电平时(),再发送第二位数据,

紧接时钟线由高电平变为低电平(),接收器就可以读走第二位数据

一共循环八次就可以完成一个字节数据的发送。

CPOL(极性)=1,CPHA(相位)=1

图中默认电平为高电平,即CPOL为1,CPHA为1,下降沿时发送数据,

在通信开始时,SCLK(时钟线)由高电平变为低电平()发送数据,

紧接着时钟线从低电平变为高电平(),接收器就可以把刚才这位数据读走

再往下,由高电平变为低电平时(),再发送第二位数据,

紧接时钟线由高电平变为低电平(),接收器就可以读走第二位数据

一共循环八次就可以完成一个字节数据的发送。

需要说明的是,对于一个特定的从设备来说,一般在出厂时就会将其设计为某种特定的工作模式;我们在使用该设备时就必须保证主设备的工作模式和从设备保持一致,否则是无法进行通信的;所以一般我们需要对主设备的CPOL和CPHA进行配置

IIC和SPI的异同

相同点

1、均采用串行、同步的方式

2、均采用TTL电平,传输距离和应用场景类似

3、均采用主从方式工作

不同点

1、IIC为半双工,SPI为全双工

2、IIC有应答机制,SPI无应答机制

3、IIC通过向总线广播从机地址来寻址,SPI通过向对应从机发送使能信号来寻址

4、IIC的时钟极性和时钟相位固定,SPI的时钟极性和时钟相位可调

相关推荐
开开心心就好1 天前
吾爱大佬原创的文件时间修改工具
安全·智能手机·pdf·电脑·智能音箱·智能手表·1024程序员节
开开心心就好6 天前
近200个工具的电脑故障修复合集
安全·智能手机·pdf·电脑·consul·memcache·1024程序员节
数据皮皮侠AI8 天前
中国城市可再生能源数据集(2005-2021)|顶刊 Sci Data 11 种能源面板
大数据·人工智能·笔记·能源·1024程序员节
计算机毕业论文辅导11 天前
物联网实战:基于MQTT协议的智能家居数据传输系统设计与实现
1024程序员节
开开心心就好11 天前
支持批量处理的视频分割工具推荐
安全·智能手机·rust·pdf·电脑·1024程序员节·lavarel
liuyao_xianhui13 天前
Linux开发工具结尾 _make
linux·运维·服务器·数据结构·哈希算法·宽度优先·1024程序员节
学传打活15 天前
【边打字.边学昆仑正义文化】_21_爱的结晶(1)
微信公众平台·1024程序员节·汉字·昆仑正义文化
数据皮皮侠AI22 天前
顶刊同款!中国地级市风灾风险与损失数据集(2000-2022)|灾害 / 环境 / 经济研究必备
大数据·人工智能·笔记·能源·1024程序员节
Fab1an23 天前
Busqueda——Hack The Box 靶机
linux·服务器·学习·1024程序员节
技术专家24 天前
Stable Diffusion系列的详细讨论 / Detailed Discussion of the Stable Diffusion Series
人工智能·python·算法·推荐算法·1024程序员节