登录发现更多内容
首页
分类
发帖
账号
自动登录
找回密码
密码
登录
立即注册
立即登录
立即注册
其他登录
QQ
微信
首页
Portal
求助问答
Xiuno资源
Xiuno教程
Xiuno插件
Xiuno主题
休闲茶馆
定制主题
产品教程
BBS
求助问答
Xiuno资源
Xiuno教程
Xiuno插件
Xiuno主题
休闲茶馆
定制主题
开发资料
求助问答
Xiuno资源
Xiuno教程
Xiuno插件
Xiuno主题
休闲茶馆
定制主题
样品购买
求助问答
Xiuno资源
Xiuno教程
Xiuno插件
Xiuno主题
休闲茶馆
定制主题
IoT云平台
求助问答
Xiuno资源
Xiuno教程
Xiuno插件
Xiuno主题
休闲茶馆
定制主题
GitHub
求助问答
Xiuno资源
Xiuno教程
Xiuno插件
Xiuno主题
休闲茶馆
定制主题
技术博客
求助问答
Xiuno资源
Xiuno教程
Xiuno插件
Xiuno主题
休闲茶馆
定制主题
搜索
搜索
热搜:
LoRa
ESP8266
安信可
本版
帖子
用户
请
登录
后使用快捷导航
没有账号?
立即注册
每日签到
任务
广播
导读
排行榜
设置
我的收藏
退出
10
0
0
首页
技术杂谈
›
嵌入式通信协议-SPI
1
2
/ 2 页
下一页
返回列表
嵌入式通信协议-SPI
[ 复制链接 ]
发布帖子
timo
论坛元老
11
主题
492
回帖
1万
积分
论坛元老
论坛元老, 积分 10049, 距离下一级还需 9989950 积分
论坛元老, 积分 10049, 距离下一级还需 9989950 积分
积分
10049
私信
10人留言
楼主
技术杂谈
4559
10
2024-1-20 15:53:22
# 前言 SPI 是英语Serial Peripheral interface的缩写,顾名思义就是串行外围设备接口。是Motorola(摩托罗拉)首先在其MC68HCXX系列处理器上定义的。 SPI,是一种高速的,全双工,同步的通信总线,并且在芯片的管脚上只占用四根线,节约了芯片的管脚,同时为PCB的布局上节省空间,提供方便,主要应用在 EEPROM,FLASH,实时时钟,AD转换器,还有数字信号处理器和数字信号解码器之间。 # SPI主从模式 SPI分为主、从两种模式,一个SPI通讯系统需要包含一个(且只能是一个)主设备,一个或多个从设备。提供时钟的为主设备(Master),接收时钟的设备为从设备(Slave),SPI接口的读写操作,都是由主设备发起。当存在多个从设备时,通过各自的片选信号进行管理。 **SPI是全双工且SPI没有定义速度限制,一般的实现通常能达到甚至超过10 Mbps** # SPI信号线 SPI接口一般使用四条信号线通信: **SDI(数据输入),SDO(数据输出),SCK(时钟),CS(片选)** - MISO: 主设备输入/从设备输出引脚。该引脚在从模式下发送数据,在主模式下接收数据。 - MOSI: 主设备输出/从设备输入引脚。该引脚在主模式下发送数据,在从模式下接收数据。 - SCLK:串行时钟信号,由主设备产生 - CS/SS:从设备片选信号,由主设备控制。它的功能是用来作为“片选引脚”,也就是选择指定的从设备,让主设备可以单独地与特定从设备通讯,避免数据线上的冲突。 - - MISO也可以是SIMO,DOUT,DO,SDO或SO(在主机端); MOSI也可以是SOMI,DIN,DI,SDI或SI(在主机端); NSS也可以是CE,CS或SSEL; SCLK也可以是SCK; - ## 一主一从  ## 单主多从  ## 通信过程 SPI是[单主设备( single-master )]通信协议,这意味着总线中的只有一支中心设备能发起通信。当SPI主设备想读/写[从设备]时,它首先拉低[从设备]对应的SS线(SS是低电平有效),接着开始发送工作脉冲到时钟线上,在相应的脉冲时间上,[主设备]把信号发到MOSI实现“写”,同时可对MISO采样而实现“读” # 时钟极性 CKP/Clock Polarity 根据硬件制造商的命名规则不同,时钟极性通常写为CKP或CPOL。时钟极性和相位共同决定读取数据的方式,比如信号上升沿读取数据还是信号下降沿读取数据; CKP可以配置为1或0。这意味着您可以根据需要将时钟的默认状态(IDLE)设置为高或低。极性反转可以通过简单的逻辑逆变器实现。您必须参考设备的数据手册才能正确设置CKP和CKE。 CKP = 0:时钟空闲IDLE为低电平 0; CKP = 1:时钟空闲IDLE为高电平 1; # 时钟相位 CKE /Clock Phase (Edge) 除配置串行时钟速率和极性外,SPI主设备还应配置时钟相位(或边沿)。根据硬件制造商的不同,时钟相位通常写为CKE或CPHA; 顾名思义,时钟相位/边沿,也就是采集数据时是在时钟信号的具体相位或者边沿; CKE = 0:在时钟信号SCK的第一个跳变沿采样; CKE = 1:在时钟信号SCK的第二个跳变沿采样; # 极性相位数据采样对应关系 > MSB 高位 > > LSB 低位 CPOL极性 CPHA相位 在时钟线低位时就放数据,上升沿读数据,下降沿放数据  上升沿发数据,下降沿读数据  高电平时候就放数据,下降沿读数据,上升沿放数据  这种和IIC一样,下降沿放数据,上升沿读数据 
点赞
0
收藏
0
淘帖
0
────
0
人觉得很赞
────
回复
使用道具
举报
10 回复
电梯直达
正序浏览
倒序浏览
正序浏览
沙发
1084504793
回复
使用道具
举报
2024-1-20 17:36:01
赞
回复
评论
使用道具
举报
板凳
bzhou830
回复
使用道具
举报
2024-1-20 17:44:04
赞
回复
评论
使用道具
举报
选择去发光,而不是被照亮
地板
WangChong
回复
使用道具
举报
2024-1-20 17:50:07
学习了
回复
评论
使用道具
举报
5
#
liuli
回复
使用道具
举报
2024-1-20 19:05:50
学
回复
评论
使用道具
举报
6
#
干簧管
回复
使用道具
举报
2024-1-20 20:22:49
👍
回复
评论
使用道具
举报
7
#
sansui
回复
使用道具
举报
2024-1-21 09:23:55
学习了
回复
评论
使用道具
举报
8
#
noonezero
回复
使用道具
举报
2024-1-21 10:35:52
赞
回复
评论
使用道具
举报
9
#
WT_0213
回复
使用道具
举报
2024-1-22 08:45:11
回复
评论
使用道具
举报
10
#
lazy
回复
使用道具
举报
2024-1-22 14:08:24
赞
回复
评论
使用道具
举报
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
立即登录
手机登录
点评
高级模式
本版积分规则
回帖并转播
回帖后跳转到最后一页
下一页 »
1
2
/ 2 页
下一页
浏览过的版块
Ai-M61系列
爱星物联IoT云平台
今日推荐
Ai-Thinker Skills 正式发布!快来试试!
九章开发板疑问
🔌手把手!1T1R 毫米波测距演示怎么跑?接入与 Python 环境配置
ONELAB开发套件常见问题Q&A:距离、角度、速度、距离门设置
【九章MCP验证板】开发环境配置教程
AI-WV02-32S 铁板烧焊接翻车
不用写代码,先跑通这两个开源例程,感受毫米波能做什么
【体验】Ai-WV02-32S 这不就跑起来了么
【问题】Ai-WV02-32S 短路
【B站/视频号直播预告】莫工带你跑通 AI→MCP 协议→硬件执行全
热帖排行
Ai-Thinker Skills 正式发布!快来试试!
九章开发板疑问
🔌手把手!1T1R 毫米波测距演示怎么跑?接入与 Python 环境配置
ONELAB开发套件常见问题Q&A:距离、角度、速度、距离门设置
【九章MCP验证板】开发环境配置教程
TB-04模块 从机收不到主机信息
AI-WV02-32S 铁板烧焊接翻车
<Ai-WB2-12F>这个模组请教个问题-FTP下载
统计信息
会员数: 31170 个
话题数: 42256 篇
首页
分类
我的