欢迎来到天天文库
浏览记录
ID:47433256
大小:812.52 KB
页数:13页
时间:2020-01-11
《SPI工作原理》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、SPI· 由于SPI(setialperipheralinterface)总线占用的接口线少,通信效率高,并且支持大部分处理器芯片,因而是一种理想的选择。SPI是利用4根信号线进行通信的串行接口协议,包括主/从两种模式。4个接口信号为:串行数据输入(MISO,主设备输入、从设备输出)、串行数据输出(MOSI,主设备输出、从设备输入)、移位时钟(SCK)、低电平有效的从设备使能信号(cs)。SPI最大的特点是由主设备时钟信号的出现与否来确定主/从设备间的通信。一旦检测到主设备的时钟信号,数据开始传输。
2、·目录·SPI工作方式简介·SPI的数据传输·SPI用户逻辑·SPI基本原理与结构SPI工作方式简介· SPI是由美国摩托罗拉公司最先推出的一种同步串行传输规范,也是一种单片机外设芯片串行扩展接口。 SPI模式可以允许同时同步发送和接收8位数据,并支持4种工作方式: 1.串行数据输出,对应RC5/SDO引脚; 2.串行数据输入,对应RC4/SDI/SDA引脚; 3.串行时钟,对应RC3/SCK/SCL引脚; 4.从动方式选择,对应RA5/SS/AN4引脚。 SPI模式下与之相关的寄存器有
3、10个,其中4个是与I2C模式共用的。 图1所示是由一个主机对接一个从机进行全双工通信的系统构成的方式。在该系统中,由于主机和从机的角色是固定不变的,并且只有一个从机,因此,可以将主机的丽端接高电平,将从机的SS端固定接地。 图1全双工主机/从机连接方法 若干个具备SPI接口的单片机和若干片兼容SPI接口的外围芯片,可以在软件的控制下,构成多种简单或者复杂的应用系统,例如以下3种。 (1)一个主机和多个从器件的通信系统。 如图2所示,各个从器件是单片机的外围扩展芯片,它们的片选端SS分别独占
4、单片机的一条通用I/O引脚,由单片机分时选通它们建立通信。这样省去了单片机在通信线路上发送地址码的麻烦,但是占用了单片机的引脚资源。当外设器件只有一个时,可以不必选通而直接将SS端接地即可。 图2一个主机扩展多个外围器件 (2)几个单片机互相连接构成多主机通信系统。 图3所示为3个既可以当做主机也可以当做从机的单片机组成的系统。 图3多主机通信系统连接方法 (3)主机、从机和从器件共同组成的应用系统。 图4所示为一个主机、一个从机和多片外设芯片组成的应用系统。这些外设芯片有的只接收来自单片
5、机信息,有的只向单片机提供信息,还有的既接收也发送信息。 图4主机、从机和从器件互连SPI的数据传输· SPI主设各负责产生系统时钟,并决定整个SPI网络的通信速率。所有的SPI设各都采用相同的接口方式,可以通过调整处理器内部寄存器改变时钟的极性和相位。由于SPI器件并不一定遵循同一标准,比如EEPROM、DAC、ADC、实时时钟及温度传感器等器件的SPI接口的时序都有所不同,为了能够满足不同的接口需要,采用时钟的极性和相位可配就能够调整SPi的通信时序。 SPI设各传输数据过程中总是先发送或接
6、收高字节数据,每个时钟周期接收器或收发器左移1位数据。对于小于16位的数据在发送之前必须左对齐,如果接收的数据小于16位则采用软件将无效的数据位屏蔽,如图1所示。 SPI接口有主和从两种操作模式,通过MASTER/SLAVE位(SPICTL.2)选择操作模式以及SPICLK信号的来源,如图2所示。 图1SPI通信数据格式 图2SPI主控制器/从控制器的连接SPI用户逻辑· 该模块针对用户不同的应用来设计,本质上就是用户的具体业务应用,与SPI-4接口没有直接关系。当应用支持多个端口时,这部分就
7、显得至关重要。下面以支持两个端口的应用来说明用户逻辑的设计技巧。 (1)SinkCore的用户逻辑 端口为两个时,用户逻辑就需要用两个不同的FIFO根据端口的地址等来分别缓存用户的两个业务数据.同时根据FIFO的情况来发出流控信息给SP14数据接口,如图1所示。 图1SinkCeore两个端口的用户逻辑 (2)SourceCore的用户逻辑 当端口为两个时,用户逻辑就需要根据流控信息和两个不同的FffiOffJ情况来做仲裁,谀定哪个用户逻辑FIFO需要发送给SPI4数据接口,如图2所示。
8、图2SourceCore2个端口的用户逻辑SPI基本原理与结构·串行外围设备接口(SPI)是由Motorola公司开发的、用来在微控制器和外围设备芯片之间实现数据交换的低成本、易使用接口。与标准的串行接口不同,SPI是一个同步协议接口,全双工通信,所有的传输都参照一个共同的时钟,这个同步时钟信号由主机产生。接收数据的外设使用时钟对串行比特流的接收进行同步化。其传输速度可达几Mb/s。 SPI主要使用4个信号:MISO(主机输入/从机输出)、MOSI(主
此文档下载收益归作者所有