文档详情

嵌入式系统:嵌入式系统总线.ppt

发布:2025-03-23约9.79千字共62页下载文档
文本预览下载声明

SPI总线概述SPI总线结构SPI总线工作模式与数据传输SPI总线应用示例SPI总线应用代码示例片上总线——SPI总线一、SPI总线概述SPI(SerialPeripheralInterface,同步串行外设接口)是由Motorola公司首先提出的全双工三线同步外设接口,采用主从模式架构(Master-Slave),支持多从设备模式应用,一般只支持单主设备。SPI总线大量应用于主设备与EEPROM,RTC,ADC和显示驱动器之类的慢速外设通信。SPI接口在内部硬件实际上是个简单的移位寄存器,时钟由主设备(Master)控制,在时钟移位脉冲下,数据按位传输,高位在前,低位在后。一、SPI总线概述4.主要特点:①同步通信由主设备发起;②支持全双工工作模式;③工作在主-从设备模式下;④时钟相位和极性可编程;⑤带有写冲突保护和总线竞争保护机制;⑥最大传输波特率5Mbps,总线频率最高可达2MHz;⑦工作在主设备模式下时,支持最大的时钟频率=系统时钟/4;工作在从设备模式下时,支持最大的时钟频率=系统时钟/2。二、SPI总线结构SPI设备可以只是一个移位寄存器,也可以是一个独立的子系统。命令代码和数据值都是串行传输的。移位寄存器的长度不是固定的,不同设备可能不同。正常来说,移位寄存器是8位的,或者是8的整数倍(integralmultiples)。当然,移位寄存器的长度并不一定要遵循这个规范,比如两个级联的EEPROM就可以存储18位数据。二、SPI总线结构SPI要求两条控制线SCLK(时钟)、CS(片选)和两条数据线SDI(数据输入)、SDO(数据输出)。Motorola将这些数据线命名MOSI和MISO,即Master-Out-Slave-In和Master-In-Slave-Out。片选线则称为SS(Slave-Select)。CS对应被选中的外设。这个引脚大多时候是低电平有效的。若没被选中,SDO线是高阻的,故是未被激活的。主设备决定它要连接的是哪个外设。无论设备有没有被选中,时钟线SCLK都会被接入该设备。时钟信号用于数据通信的同步。大多数SPI设备提供这四条线。有时候,SDI和SDO线会翻倍,比如NationalSemiconductor公司的在温度传感器LM74;有时候,这些线中的一根会缺失。若某个外围设备一定不能被配置,它就无需输入线,只需要输出线;一旦它被选中了,它就开始发送数据。有一些ADC设备没有SDI线,比如Microchip的MCCP3001。也有些设备是没有数据输出的。比如LCD控制器,它可以被配置,但不能发送数据或状态信息。(比如NationalSemiconductor的COP472-3)。二、SPI总线结构主设备与从设备连接主设备与从设备通信环路SPI主设备-从设备连接及通信环路示意图:二、SPI总线结构主设备与级联SPI设备连接左图中的几个级联SPI设备显然可以看作是一个大型设备,可以共用同一个片选信号。前一个设备的输出数据和下一个设备的输入数据绑定在一起,这样就形成了一个更宽的移位寄存器。二、SPI总线结构主设备与多个独立从设备连接如果独立从设备与主设备直接连接,则需要右图所示的总线结构。这时候主设备的SCKL时钟和SDI数据线都和每个从设备直接连接。此时,SDO数据线也还是绑定在一起,然后一起返回给主设备。只有片选信号是独立连接到每一个SPI设备的。三、SPI总线工作模式与数据传输Motorola没有定义任何通用的SPI时钟规范,但实际上,SPI总线有四种模式可以使用,这四种模式由时钟极性(CPOL,ClockPolarity)和时钟相位(CPHA,ClockPhase)组合决定。CPOL和CPHA的设置决定了数据采样的时钟沿。1.SPI总线工作模式CPOL对传输协议没有重大影响。若CPOL=0,串行同步时钟的空闲状态为低电平;若CPOL=1,串行同步时钟的空闲状态为高电平。CPHA能够配置用于选择两种不同的传输协议之一进行数据传输。若CPHA=0,在串行同步时钟的第一个跳变沿(上升或下降)数据被采样;若CPHA=1,在串行同步时钟的第二个跳变沿(上升或下降)数据被采样。三、SPI总线工作模式与数据传输1.SPI总线工作模式SPI的四种工作模式其中,使用最广泛的是SPI0和SPI3方式。三、SPI总线工作模式与数据传输1.SPI总线工作模式CPOL决定空闲时时钟的电平如果CPOL=0,串行同步时钟的空闲状态为低电平;如果CPOL=1,串行同步时钟的空闲状态为高电平CPHA决

显示全部
相似文档