当前位置: 首页 > article >正文

江协科技stm32————11-1SPI通信协议

目录

SPI通信

硬件电路

移位示意图

SPI时序基本单元

模式0 

模式1

SPI时序

发送指令

指定地址写 

指定地址读


SPI通信

四根通信线:

SCK(Serial Clock):串行时钟线

MOSI(Master Output Slave Input):主机输出从机输入

MISO(Master Input Slave Output):主机输入从机输出

SS(Slave Select):从机选择

同步:同步时序

全双工 :发送和接收单独分别用两条线路

硬件电路

  • 主机要指定谁,就将连接的ss线置低电平
  • 输出引脚配置为推挽输出(有很强的驱动能力,使SPI引脚信号的上、下降沿非常迅速)从机未被选中时,MISO输出为高阻态,避免产生冲突
  • 输入引脚配置为浮空或上拉输入 ,

移位示意图

高位先行,主机移位寄存器向左移动一位通过MOSI移动到从机寄存器的右边;从机寄存器向左移动一位通过MOSO移动到从机寄存器的右边

当时钟上升沿来时,移位寄存器向左移动一位,数据存放在输出数据寄存器中

当时钟的下降沿来时,主机和从机都会进行数据采样输入 

重复该过程,直到主机和从机的字节完成数据交换,可以实现发送一个字节(只看从机)、接收一个字节(只看主机)以及发送同时接收一个字节 

SPI时序基本单元

模式0 

数据交换的超前时钟信号半个周期 

 模式1

ss开启前MISO为高阻态,避免冲突,ss关闭后MISO变为高阻态

SCK第一个边沿,MOSI和MISO移出最高位,SCK第二个边沿,之前移出的最高位进入对方的最低位

SPI时序

发送指令

采用指令码加读写数据的模型

从机中有一个指令集(起始后第一个字节发送指令码,指导从机完成相应的功能)

该图中,从机获得MOSI的0x06,写使能的指令 

指定地址写 

 首先发送0x02指定地址写的指令,后面的24位跟着指定的地址,然后写入数据 

 指定地址读

 指定地址后,主机给从机0xFF交换得到从机数据


http://www.kler.cn/a/289494.html

相关文章:

  • MQTT协议解析 : 物联网领域的最佳选择
  • 除了 Mock.js,前端还有更方便的 Mock 数据工具吗?
  • python高效处理大数据:将Excel10万数据分批插入MySQL数据库的实战代码
  • 随手记:简单实现纯前端文件导出(XLSX)
  • Jmeter基础篇(22)服务器性能监测工具Nmon的使用
  • python实战(八)——情感识别(多分类)
  • Python爬虫-实现自动获取随机请求头User-Agent
  • C——四种排序方法
  • HarmonyOS开发实战( Beta5版)Swiper高性能开发指南
  • 5千多道安全生产证考试题库ACCESS\EXCEL数据库
  • 大带宽服务器推流延迟怎么回事
  • 【架构-29】RPC
  • 保隆科技半年报:净利同比下滑近两成,ADAS/空悬业务仍亏损
  • windows中Selenium安装最新版Chrome WebDriver
  • 动态路由和路由导航守卫及其案例分析
  • 解析星型架构及其对 Power BI 的重要性
  • 科研绘图系列:R语言组合图形绘图
  • 《大道平渊》· 廿壹 —— 杀心篇:何谓 “杀心”?本质上,就是寻求杀心的一个过程。
  • 浅聊kubernetes RBAC
  • centOS服务器上如何安装宝塔面板-两分钟快速配置
  • 【单片机原理及应用】实验: 8位数码显示器
  • Win11 / Win10 系统极化工具,降低游戏延迟效果明显
  • Django Admin管理后台导入CSV
  • 中秋之美——html5+css+js制作中秋网页
  • 解释 CountDownLatch 和 CyclicBarrier 的作用,并给出一个实际的使用场景来说明如何使用这两个类来协调多线程任务?
  • PMP–一、二、三模、冲刺、必刷–分类–14.敏捷–技巧--累积流图