SPI协议

关于SPI

SPI是摩托罗拉公司首次提出的,一开始并没有明文标准。它是串行外设接口(Serial Peripheral Interface)的缩写,是一种高速的、全双工、同步的通信总线。与MCU通信只占用四根引脚,分别是:MOSI、MISO、SCK、CS。

SPI硬件层

  • MOSI:master out slave in的缩写,既主机输出从机输入
  • MISO:master in slave out的缩写,既主机输入从机输出
  • SCLK:serial clock的缩写,既时钟线
  • CS:chip select的缩写,既片选线,有时也会写成NSS

SPI协议层

  • 时钟极性CPOL是指SPI通讯处于空闲状态时,SCLK信号线的电平信号。
    • CPOL=0时,SCLK在空闲状态时为低电平
    • CPOL=1时,SCLK在空闲状态时为高电平
  • 时钟相位CPHA是指数据的采样时刻。
    • 当CPHA=0时,MOSI或MISO数据线上的信号线将会在SCLK时钟线的“奇数边沿”被采样
    • 当CPHA=1时,MOSI或MISO数据线上的信号线将会在SCLK时钟线的“偶数边沿”被采样
      在这里插入图片描述
      spi2
      模式的选择应该根据从机芯片来确定

SPI协议应该注意的点

  1. 从机要使用前必须先把CS片选线拉低,使用完必须拉高
  2. 要注意数据的有效性,数据的发送是上升沿还是下降沿,数据的接收是上升沿还是下降沿

版权声明:本文为CSDN博主「哦yuè」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_47017011/article/details/122993314

关于SPI

SPI是摩托罗拉公司首次提出的,一开始并没有明文标准。它是串行外设接口(Serial Peripheral Interface)的缩写,是一种高速的、全双工、同步的通信总线。与MCU通信只占用四根引脚,分别是:MOSI、MISO、SCK、CS。

SPI硬件层

  • MOSI:master out slave in的缩写,既主机输出从机输入
  • MISO:master in slave out的缩写,既主机输入从机输出
  • SCLK:serial clock的缩写,既时钟线
  • CS:chip select的缩写,既片选线,有时也会写成NSS

SPI协议层

  • 时钟极性CPOL是指SPI通讯处于空闲状态时,SCLK信号线的电平信号。
    • CPOL=0时,SCLK在空闲状态时为低电平
    • CPOL=1时,SCLK在空闲状态时为高电平
  • 时钟相位CPHA是指数据的采样时刻。
    • 当CPHA=0时,MOSI或MISO数据线上的信号线将会在SCLK时钟线的“奇数边沿”被采样
    • 当CPHA=1时,MOSI或MISO数据线上的信号线将会在SCLK时钟线的“偶数边沿”被采样
      在这里插入图片描述
      spi2
      模式的选择应该根据从机芯片来确定

SPI协议应该注意的点

  1. 从机要使用前必须先把CS片选线拉低,使用完必须拉高
  2. 要注意数据的有效性,数据的发送是上升沿还是下降沿,数据的接收是上升沿还是下降沿

版权声明:本文为CSDN博主「哦yuè」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_47017011/article/details/122993314

生成海报
点赞 0

哦yuè

我还没有学会写个人说明!

暂无评论

发表评论

相关推荐

SPI协议

关于SPI SPI是摩托罗拉公司首次提出的,一开始并没有明文标准。它是串行外设接口(Serial Peripheral Interface)的缩写,是一种高速的、全双工、同步的通信总线。

nodemcu 模块用mciropython 使用SD卡

使用sd卡可以扩大8266的存储器,使用时候很重要的是接线。 其他很容易。下面程序就是初始化、挂载sd卡、读sd卡里面main.cpp里面的代码行。 import machine, sdcard, os from machine

MDK 分散加载文件剖析(一)

1、何为分散加载? 1.1 简介 分散加载就是我们开发者能指定你的 代码 或者 数据变量 到指定的内存空间中运行。通知链接器把程序的某一部分连接在存储器的某个地址空间,我们可以通过编写一个分散加载文件来指定 ARM