首页 > 其他分享 >通信协议——SPI详解

通信协议——SPI详解

时间:2022-10-12 00:34:02浏览次数:82  
标签:CPHA CPOL 通信协议 总线 SPI 详解 SCLK 时钟

SPI协议

(一)简介

SPI(Serial Periphera Interface)是串行外设接口的缩写。

特点有:

  • 一种高速的、全双工、同步的串行通信总线;
  • 采用主从方式工作;
  • 一般有一个主设备和一个或者多个从设备;
  • 需要至少4根线:MISO, MOSI, SCLK, CS

(二)协议

1. 寻址方式

当主设备要和某个从设备进行通信时,主设备需要先向对应从设备的片选CS线上发送使能信号(高/低由从机决定),表示选中该从设备

2. 通信过程

SPI总线在进行数据传送时,先传送高位,后传送低位。

相比IIC总线,没有起始信号,也没有结束信号,也没有应答信号。

采用同步方式工作,SCLK时钟线在上升沿或下降沿时发送器向数据线上发送数据,在下一个跳变沿时接收器从数据线上读取数据,完成一位数据传送,八个时钟周期即可完成一个字节数据的传送。

设置好工作方式后,可以在每个时钟周期的下降沿发送器发送数据,在每个时钟周期的上升沿接收器接收数据

3. 极性和相位

SPI总线有四种不同工作模式,取决于时钟极性CPOL和相位CPHA两个因素。

CPOL表示SCLK空闲时的状态:

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

时钟极性相当于空闲时SCLK的电平

CPHA表示采样时刻:

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

4. IIC和SPI的区别

相同点:

  1. 均采用串行、同步方式
  2. 均采用TTL电平,传输距离都不长,一般用于一个板子上两个模块的通信
  3. 均采用主从方式工作

不同点:

IIC SPI
半双工 全双工
有应答机制 无应答机制
通过向总线广播从机地址来寻址 通过向对应从机发送使能信号来寻址
时钟极性和时钟相位固定 时钟极性和时钟相位可调

https://www.sohu.com/a/271099924_292853

标签:CPHA,CPOL,通信协议,总线,SPI,详解,SCLK,时钟
From: https://www.cnblogs.com/Ethan-Code/p/16783103.html

相关文章

  • LinkedBlockingDeque详解
    LinkedBlockingDeque介绍【1】LinkedBlockingDeque是一个基于链表实现的双向阻塞队列,默认情况下,该阻塞队列的大小为Integer.MAX_VALUE,可以看做无界队列,但也可以设置容......
  • 阻塞队列详解
    什么是阻塞队列【1】阻塞队列:从定义上来说是队列的一种,那么肯定是一个先进先出(FIFO)的数据结构。与普通队列不同的是,它支持两个附加操作,即阻塞添加和阻塞删除方法。......
  • git提交代码详解
    刚开始做项目的时候,git怎么提交代码?一般情况是我们现在github或者gitee上新建一个仓库,然后将建好的仓库clone到本地,最后在clone下来的代码的基础上撸代码。撸完代码之后,添......
  • 视频+课件|单目6D姿态估计算法详解
    写在前面感谢「3D视觉从入门到精通」知识星球嘉宾王谷博士为我们带来的主题为单目6D物体姿态估计算法视频讲解,星球成员可免费观看学习。备注:王谷博士,清华大学自动化系BBNCL......
  • LinkedBlockingQueue详解
    LinkedBlockingQueue介绍【1】LinkedBlockingQueue是一个基于链表实现的阻塞队列,默认情况下,该阻塞队列的大小为Integer.MAX_VALUE,由于这个数值特别大,所以LinkedBlock......
  • C++ 智能指针详解
    这篇博客主要参考上面这个博客和《Boost程序库完全开发指南:深入C++准标准库》第三版   一个智能指针就是一个C++的对象,这个对象的行为像一个指针,但是它却可以在其......
  • 软著申请流程详解
    软著申请流程详解文章目录​​软著申请流程详解​​​​前言​​​​一、为什么要申请软著​​​​二、如何申请软著​​​​1.注册中国版权保护中心账号​​​​2.账号实......
  • 最全的2021蓝桥杯算法课《算法很美》的学习笔记总目录+真题详解
    这里写目录标题​​第一章位运算​​​​第二章递归​​​​第三章查找与排序​​​​......
  • 详解MongoDB索引优化
    一、索引简介索引通常能够极大的提高查询的效率,如果没有索引,MongoDB在读取数据时必须扫描集合中的每个文件并选取那些符合查询条件的记录。1.1概念索引最常用的比喻就......
  • 详解ROMA Connect API 流控实现技术
    1、概述ROMA平台的核心系统ROMAConnect源自华为流程IT的集成平台,在华为内部有超过15年的企业业务集成经验。依托ROMAConnect,可以将物联网、大数据、视频、统一通信、GIS等......