历史上的今天
返回首页

历史上的今天

今天是:2024年10月11日(星期五)

正在发生

2019年10月11日 | SPI接口的工作原理及优缺点分析

2019-10-11 来源:eefocus

  SPI(Serial Peripheral Interface,串行外设接口)是Motorola公司提出的一种同步串行数据传输标准,在很多器件中被广泛应用。


  1. 接口
  SPI接口经常被称为4线串行总线,以主/从方式工作,数据传输过程由主机初始化。如图1所示,其使用的4条信号线分别为:
  1) SCLK:串行时钟,用来同步数据传输,由主机输出;
  2) MOSI:主机输出从机输入数据线;
  3) MISO:主机输入从机输出数据线;
  4) SS:片选线,低电平有效,由主机输出。


  在SPI总线上,某一时刻可以出现多个从机,但只能存在一个主机,主机通过片选线来确定要通信的从机。这就要求从机的MISO口具有三态特性,使得该口线在器件未被选通时表现为高阻抗。
  

  2. 数据传输
  在一个SPI时钟周期内,会完成如下操作:
  1) 主机通过MOSI线发送1位数据,从机通过该线读取这1位数据;
  2) 从机通过MISO线发送1位数据,主机通过该线读取这1位数据。


  这是通过移位寄存器来实现的。如图2所示,主机和从机各有一个移位寄存器,且二者连接成环。随着时钟脉冲,数据按照从高位到低位的方式依次移出主机寄存器和从机寄存器,并且依次移入从机寄存器和主机寄存器。当寄存器中的内容全部移出时,相当于完成了两个寄存器内容的交换。
 

  3. 时钟极性和时钟相位
  在SPI操作中,最重要的两项设置就是时钟极性(CPOL或UCCKPL)和时钟相位(CPHA或UCCKPH)。时钟极性设置时钟空闲时的电平,时钟相位设置读取数据和发送数据的时钟沿。


  主机和从机的发送数据是同时完成的,两者的接收数据也是同时完成的。所以为了保证主从机正确通信,应使得它们的SPI具有相同的时钟极性和时钟相位。


  举例来说,分别选取MSP430控制器和OLED驱动SH1101A为主从机,图3和图4为它们的SPI时序。由图4可知,SH1101A的SPI时钟空闲时为高电平,并且在后时钟沿接收数据,则MSP430控制器SPI的设置应与此保持一致。从图3中可以看出,要使得时钟在空闲时为高电平,应将UCCKPL置1;要使得在后时钟沿接收数据,应将UCCKPH清零。
   

  4. 优缺点
  SPI接口具有如下优点:
  1) 支持全双工操作;
  2) 操作简单;
  3) 数据传输速率较高。


  同时,它也具有如下缺点:
  1) 需要占用主机较多的口线(每个从机都需要一根片选线);
  2) 只支持单个主机。


推荐阅读

史海拾趣

HBControls公司的发展小趣事
如果电源正常,检查压缩机是否运行。压缩机是冰箱制冷的核心部件,如果压缩机不工作,可能是电机故障或压缩机过热保护启动。
Displaytech公司的发展小趣事

随着公司业务的不断发展,Displaytech于1997年在加利福尼亚州圣地亚哥成立了销售办事处,名为SEACOMP。这一举措标志着公司开始向国际市场进军。SEACOMP的成立不仅为公司带来了更多的商业机会,也促进了公司在全球范围内的技术交流与合作。

歌普(GEPU)公司的发展小趣事

Displaytech一直致力于技术创新和产品升级。在多年的发展过程中,公司不断推出新的LCD产品,包括触摸屏TFT、单色图形LCD和字符显示模块等。同时,公司还加强了表面贴装能力、PCB组装服务、工具和注塑成型等业务的拓展,进一步提升了整体竞争力。

General Diode Corp公司的发展小趣事
无电流输出或电流输出不稳定。
EM Devices Corporation公司的发展小趣事

EM Devices Corporation始终将产品质量放在首位。公司建立了一套严格的质量管理体系,对生产过程中的每一个环节都进行严格的监控和检测。同时,公司还不断引入先进的生产设备和工艺,提高产品的生产效率和质量。此外,公司还鼓励员工提出改进意见和建议,以便及时发现并解决问题。这种持续改进的精神使得EM Devices Corporation的产品在市场上始终保持着良好的口碑。

东通电子公司的发展小趣事

东通电子深知人才是企业发展的关键因素。因此,公司一直致力于引进和培养人才,建立了一支高素质、专业化的团队。公司现有员工550人,其中技术人员31人,质量管理人员27人,研发团队12人。这些人才为公司的发展提供了有力的支持,也为公司的技术创新和品质提升奠定了基础。

以上是关于东通电子在电子行业中发展起来的相关故事概述。这些故事展示了东通电子在品质、技术创新、生产规模、环保和人才建设等方面的努力和成就。

问答坊 | AI 解惑

CC2500射频芯片中文资料

同时介绍:CC2500 是集FSK/ASK/OOK/MSK调制方式的收发模块,它兼容扩展硬件支持实现信息包处理、数据缓冲、群发射.。可以采用曼彻斯特编码进行调制它的数据流,性能优越并且易于应用到你的产品设计中。它可以应用在2400-2483.5MHz ISM/SRD频段的系 ...…

查看全部问答>

flash和sram 地址数据线复用

当硬件设计上 flash 和 sram 地址数据线时,sopc的建立需要一个三态桥,然后再把加入的CFI 和 SRAM controller 分别挂在该三态桥上。   然后双击三态桥,address 勾上,设置成复用。   一点常用的技巧共享给大家!…

查看全部问答>

one or more files from the emulator for windows ce installation is missing

在Embedded Visual C++ 4.0编译程序,即不能编译,也运行不起来,提示如下:   one or more files from the emulator for windows ce installation is missing 解决办法: 打开系统分区根目录下的BOOT.INI文件,对其进行编辑。 将其 ...…

查看全部问答>

zlIP速度的问题

我正在使用zlIP做PC和MCU的TCP通信。MCU作为服务器,PC作为客户端。连接之后PC发送一次数据等待MCU处理完成后回发一组数据才去执行下面的工作。 现在的问题是PC段每次从调用CSocket的Send函数到CSocket的Receive函数执行完毕都需要消耗500毫秒左右 ...…

查看全部问答>

请教煤气检测和电子点火干扰问题?

机器上用到煤气加热,需要煤气检测。请问: 1.煤气检测是不是应该与控制电路板分开,单独做出一个煤气传感器模块? 2.独立的煤气传感器安装在什么位置比较好的?机器的高度才1米。 3.电子脉冲点火器对单片机的干扰很大,具体怎么做可以降低干扰 ...…

查看全部问答>

请教版主关于STLINK下载问题

我用的IAR5.3和三合一板子上STLINK,调试STM32F103RBT6芯片,前些天调试仿真还都挺好,但从昨天开始,代码不能下载仿真了,显示 下载 (27.69 KB) 2010-5-26 13:21 警告,按确定后出现 下载 (55.81 KB) 201 ...…

查看全部问答>

【设计工具】实用FPGA调试工具Chipscope使用技巧

Chipscope是XILINX推出的一款在线调试软件,价格便宜,通过它完全可以脱离传统逻辑分析仪(太贵)来调时序,观察FPGA内部的任何信号,触发条件、数据宽度和深度等的设置也非常方便,但是肯定也存在不足,比如速度和数据量方面。Chipscope本身是一个逻 ...…

查看全部问答>

【TI资料】TI旋转电机-更智能,更安全,更绿色

本帖最后由 dontium 于 2015-1-23 11:46 编辑 来自于,电机驱动业务部门Gem Li 市场销售经理   电机驱动基础知识,仅供初步学习~~~欢迎下载分享~~~     …

查看全部问答>

如何提高阅读源代码的效率

如何提高阅读源代码的效率              记得在开源流行之前,我看过的代码紧限于所参与的项目,能有个几万行就不错哩。后来很多优秀开源项目都相继蹦出来了,阅读的代码量那叫一个大呀!不得不 ...…

查看全部问答>