0 卖盘信息
BOM询价
您现在的位置: 首页 > 电子资讯 >基础知识 > SPI是什么

SPI是什么

2017-11-13
类别:基础知识
eye 328
文章创建人 拍明

  1.SPI是什么--简介

  SPI是Serial Peripheral Interface的缩写,中文名称为串行外设接口。SPI总线系统是一种同步串行外设接口,它可以使MCU与各种外围设备以串行方式进行通信以交换信息。SPI总线系统是一种高速的,全双工,同步的通信总线,并且在芯片的管脚上只占用四根线,节约了芯片的管脚,同时为PCB的布局上节省空间,提供方便,

  2.SPI是什么--发展

  串行外设接口总线(SPI)最早由Motorola首先提出的全双工三线同步串行外围接口,采用主从模式(Master—Slave)架构,支持一个或多个Slave设备,首先出现在其M68系列单片机中,由于其简单实用、性能优异,又不牵涉到专利问题,因此许多厂家的设备都支持该接口,广泛应用于MCU和外设模块如E2PROM、ADC、显示驱动器等的连接。需要注意的是,SPI接口是一种事实标准,大部分厂家都是参照Motorola的SPI接口定义来设计的,并在此基础上衍生出多种变种,因此,不同厂家产品的SPI接口在使用上可能存在一定差别,有的甚至无法直接互连(需要软件进行必要的修改),在实际中需仔细阅读厂家文档确认。

SPI是什么.png

  3.SPI是什么--特点

  SPI一共有11位有用信号,每位信号差分成两个信号用来提高传输抗干扰性,在物理连接上用标准25芯D型插头座传输,因此连线多且复杂,传输距离短,容易出现故障。而ASI(异步串行接口)用串行传输,只需要一根同轴电缆线,连线简单,传输距离长。

  3.SPI是什么--接口信号

  SPI的通信原理很简单,它以主从方式工作,这种模式通常有一个主设备和一个或多个从设备,需要至少4根线。基于SPI设备的接口信号共有四种,非别时:

  (1)SDO--数据输出信号,主设备数据输入,从设备数据输出;

  (2)SDI--数据输入信号,主设备数据输出,从设备数据输入;

  (3)SCLK--时钟信号,由主设备产生;

  (4)CS--片选信号,从设备使能信号,由主设备控制。

  其中,CS是控制芯片是否被选中的,也就是说只有片选信号为预先规定的使能信号时,对此芯片的操作才有效。这就允许在同一总线上连接多个SPI设备成为可能。

  4.SPI是什么--组成结构

  SPI系统可直接与各个厂家生产的多种标准外围器件接口,它只需4条线:串行时钟线(SCK)、主机输入/从机输出数据线(MISO)、主机输出/从机输人数据线(MOSI)和低电平有效的从机选择线(NSS)。

  (1)MISO:主设备输入/从设备输出引脚。该引脚在从模式下发送数据,在主模式下接收数据。

  (2)MOSI:主设备输出/从设备输入引脚。该引脚在主模式下发送数据,在从模式下接收数据。

  (3)SCK:串口时钟,作为主设备的输出,从设备的输入。

  (4)NSS:从设备选择。这是一个可选的引脚,用来选择主/从设备。它的功能是用来作为片选引脚,让主设备可以单独地与特定从设备通信,避免数据线上的冲突。

  SPI是一个环形总线结构,由NSS、SCK、MISO、MOSI构成,NSS引脚设置为输入,MOSI引脚相互连接,MISO引脚相互连接,数据在主和从之间串行地传输(MSB位在前)。[3]

  5.SPI是什么--工作方式

  主动方式

  SPI有主从两种工作方式。在主模式下,SPI为其他节点的SPICLK引脚提供串行时钟,数据从SPISIMO引脚输出,从SPISOMI引脚输入。主控制器写人数据到寄存器SPITXBUF便启动发送,数据从SPITXBUF传送到SPIDAT中再通过SPISIMO引脚发送出去,先发送最高位;同时,主控制器接收到的数据通过SPISOMI引脚移入寄存器SPIDAT的最低位。当选定数量的位数发送完时,整个数据发送完毕,紧接着接收完毕(通过SPISIMO引脚发送的SPIDAT的数据最高位每移出一位后就会从SPISOMI引脚移人一位到SPIDAT最低位)。首先将接收到的数据传送到寄存器SPIRXBUF,并进行右对齐,供CPU读取。

  从动方式

  在从动方式下,数据从SPISOMI引脚移出并由SPISIMO引脚移入。SPICLK引脚作为串行移位时钟的输入。

  为了接收数据,串行外设接口等待网络主控制器送出的SPICLK信号,然后它将SPISIMO引脚上的数据移入到SPIDAT寄存器。如果从控制器同时也发送数据,则必须在SPICLK信号开始之前把数据写入到SPIRXBUF或SPIDAT寄存器中。

SPI是什么.png

  6.SPI是什么--工作模式

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

  当CPOL为0时,时钟空闲idle时候的电平是低电平;当CPOL为1时,时钟空闲idle时候的电平是高电平。

  当CPHA为0时,时钟周期的前一边缘采集数据;当CPHA为1时,时钟周期的后一边缘采集数据。

  因此,CPOL和CPHA,分别都可以是0或时1,对应的四种组合就是:


责任编辑:Davia

【免责声明】

1、本文内容、数据、图表等来源于网络引用或其他公开资料,版权归属原作者、原发表出处。若版权所有方对本文的引用持有异议,请联系拍明芯城(marketing@iczoom.com),本方将及时处理。

2、本文的引用仅供读者交流学习使用,不涉及商业目的。

3、本文内容仅代表作者观点,拍明芯城不对内容的准确性、可靠性或完整性提供明示或暗示的保证。读者阅读本文后做出的决定或行为,是基于自主意愿和独立判断做出的,请读者明确相关结果。

4、如需转载本方拥有版权的文章,请联系拍明芯城(marketing@iczoom.com)注明“转载原因”。未经允许私自转载拍明芯城将保留追究其法律责任的权利。

拍明芯城拥有对此声明的最终解释权。

标签: SPI

相关资讯