SPI总线基本概念

SPI是一种高速、全双工、同步的串行通信总线,全称是Serial Peripheral Interface,使用时在芯片的管脚上只占用三根或者四根线(如果单向传输的话只需三根线就可以了),节约了芯片的管脚资源,所以在实际项目中应用也非常广泛。SPI总线的通信模式也是一主多从模式。

SPI的四根线都是单向的I/O线:

  • MISO(SDI)– Master Input Slave Output,主设备数据输入,从设备数据输出;
  • MOSI(SDO)– Master Output Slave Input,主设备数据输出,从设备数据输入;
  • SCLK – Serial Clock,时钟信号,由主设备产生;
  • CS(SS)– Chip Select,从设备使能信号,由主设备控制。

常见的硬件连接图:

SPI如何实现一对一的通信?

主设备通过CS片选引脚选中要通信的从设备,只有当从设备的CS引脚被使能才能和主设备进行通信。这就允许在同一个SPI总线上连接多个SPI从设备但仍能保持一对一的通信。

SPI的工作模式

SPI有四种工作模式,各个工作模式的不同在于SCLK不同,具体工作由CPOL和CPHA决定:

CPOL(Clock Polarity):时钟极性

  • 当CPOL为0时,时钟空闲时电平为低;
  • 当CPOL为1时,时钟空闲时电平为高;

CPHA(Clock Phase):时钟相位

  • 当CPHA为0时,时钟周期的上升沿采集数据,时钟周期的下降沿输出数据;
  • 当CPHA为1时,时钟周期的下降沿采集数据,时钟周期的上升沿输出数据;

CPOL和CPHA分别都可以是0或是1,对应四种组合即为SPI的四种工作模式

注意:SPI主模块和与之通信的外设时钟相位和极性应该保持一致,主设备SPI时钟和极性的配置应该由外设来决定,二者的配置应该保持一致,即主设备的SDO同从设备的SDO配置一致,主设备的SDI同从设备的SDI配置一致。

SPI简单的收发时序,上升沿发送、下降沿接收、高位先发送

总结:

SPI接口的优点:不需要进行寻址操作且全双工,可以同时发送和接收数据,传输速率高。

SPI接口的缺点:没有指定的流控制,没有应答机制确认是否接收到数据。

以上是对SPI总线协议的总结,如有不足欢迎指正;关于SPI总线在找工作面试中也会被经常问到,如果喜欢的话要收藏关注哦!

spi四种工作模式时序图_还没学会SPI总线协议?干货都在这里相关推荐

  1. SPI四种工作模式时序图

    1.SPI总线简介 SPI(serial peripheral interface,串行外围设备接口)总线技术是Motorola公司推出的一种同步串行接口.它用于CPU与各种外围器件进行全双工.同步串 ...

  2. spi四种工作模式时序图_SPI总线协议及SPI时序图详解

    嵌入式linux QQ交流群:175159209,欢迎爱好者加入交流技术问题! SPI,是英语Serial Peripheral Interface的缩写,顾名思义就是串行外围设备接口.SPI,是一种 ...

  3. AndroidManifest.xml文件详解(activity)(三)四种工作模式

    android:launchMode 这个属性定义了应该如何启动Activity的一个指令.有四种工作模式会跟Intent对象中的Activity标记(FLAG_ACTIVITY_*常量)结合在一起用 ...

  4. 工程监测多通道振弦模拟信号采集仪VTN的四种工作模式

    工程监测多通道振弦模拟信号采集仪VTN的四种工作模式 VTN是多通道振弦.温度.模拟传感信号系列数据采集仪,可对32通道振弦频率.32通道热敏电阻或DS18B20温度传感器.32通道模拟量传感器(电流 ...

  5. shell教程(二) 四种工作模式

    标准 根据 POSIX 标准,Shell 分为登录(login).非登录(non-login)和交互(interactive).非交互(non- interactive)两个维度的处理.因此 bash ...

  6. Linux链路聚合,链路聚合四种工作模式

    一.基础知识 链路聚合(英语:Link Aggregation)是一个计算机网络术语,指将多个物理端口汇聚在一起,形成一个逻辑端口,以实现出/入流量吞吐量在各成员端口的负荷分担,交换机根据用户配置的端 ...

  7. 无线网卡的四种工作模式

    无线网卡一般有四种工作模式,即 Managed,Master,Ad-hoc,Monitor. Managed (被管理,即你的无线网卡处理被管理的模式)模式:该模式用于你的无线客户端直接与无线接入点( ...

  8. stm32芯片休眠模式_STM32的运行、睡眠、停止和待机四种工作模式

    01 前言 按功耗由高到低排列,STM32具有运行.睡眠.停止和待机四种工作模式.上电复位后 STM32 处于运行状态,当内核不需要继续运行,就可以选择进入后面的三种低功耗模式降低功耗,这三种模式中, ...

  9. 消息队列(四)——rabbitMQ四种工作模式

    RabbitMQ工作模式 模式总结: 1.简单模式helloworld 一个生产者,一个消费者,不需要交换机(使用默认交换机) 2.工作队列模式Work Queue 一个生产者,多个消费者(竞争关系) ...

最新文章

  1. 系统app无法访问外部存储设备问题
  2. C语言Catalan number卡特兰数(使用n个键可以搜索多少个二叉搜索树)的算法(附完整源码)
  3. GET和POST的真正区别
  4. [网络安全自学篇] 三十四.Windows系统安全缺陷之5次Shift漏洞启动计算机机理分析
  5. edittext无法获取焦点_小黑鞋强势回归,用帅气拉回时尚焦点
  6. P7295-[USACO21JAN]Paint by Letters P【平面图欧拉公式】
  7. 使用集搜客爬取酷狗排行歌曲信息
  8. Linux的文件压缩与解压缩
  9. 基于命令行编译打包phonegap for android应用
  10. 初次体验.net Ajax无刷新技术
  11. python心脏线绘制代码_JavaScript图形实例:曲线方程
  12. SPSS教程—如何安装加权kappa计算插件
  13. java负载均衡搭建_负载均衡环境搭建(nginx和tomcat)
  14. 大数据技术生态体系(截图)
  15. 大数据行业发展前景及岗位方向如何?
  16. 仿Twitter源代码/社交网络源码/基于脉聊二开版本
  17. 和差角证明托勒密定理
  18. C/C++ 学习日记3:制作带有界面的植物大战僵尸助手(基于MFC)
  19. linux宝塔重新安装,Linux服务器Windows系统 安装和卸载宝塔面板
  20. 互联网晚报 | 8月23日|共享充电宝涨至4元/小时;公安部辟谣2022红绿灯新国标:不存在;滴滴高德曹操首汽等11家公司被约谈...

热门文章

  1. tensorflow实现反卷积
  2. scrapy-redis 使 redis 不止保存 url(例如:json)
  3. 轻量级分布式任务调度平台 XXL-JOB
  4. CompletableFuture详解~anyOf
  5. Introduce Explaining Variable(引入解释性变量)
  6. 线程Blocked--SynchronizedDemo
  7. C++学习之路 | PTA乙级—— 1055 集体照 (25 分)(精简)
  8. insert插入语句设置主键id回滚
  9. [转载] --- Fastjson1.2.68版及以下全版本远程代码执行漏洞通告
  10. 软件工程课, 编程课 助教的工作介绍