第10章 SPI串行总线详解.ppt

  1. 1、本文档共24页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第10章 SPI串行总线 概述 传输时序 SPI总线的应用 10.1 概述 SPI(Serial Peripheral Interface, 串行外设接口)总线是Motorola公司推出的一种同步串行接口技术。SPI总线系统是一种同步串行外设接口,允许MCU与各种外围设备以串行方式进行通信。外围设备包括FLASHRAM、A/D转换器、网络控制器、MCU等。SPI是一种高速、全双工、同步的通信总线,在芯片的管脚上升沿占用四根线。其工作模式为主/从模式,主设备与从设备间采用同步通信的方式来完成数据交换。SPI总线接口占用的端口较少,一般来说要求主设备要有SPI控制器(也可用软件模拟的方式实现),就可以与基于SPI的芯片通信。 10.1 概述 SPI总线的基本信号线为3根传输线,即SI、SO、SCK。传输的速率由时钟信号SCK决定,SI为数据输入、SO为数据输出。采用SPI总线的系统如下图所示,它包含了一个主片和多个从片,主片通过发出片选信号CS来控制对哪个从片进行通信,当某个从片的CS信号有效时,能通过SI接收指令、数据,并通过SO发回数据。而未被选中的从片的SO端处于高阻状态。 主片在访问某一从片时,必须使该从片的片选信号有效; 主片在SCK信号的同步下,通过SI线发出指令、地址信息; 如需将数据输出,则接着写指令,由SCK同步在SI线上升沿发出数据; 如需读回数据,则接着读指令,由主片发出SCK,从片根据SCK的节拍通过SO发回数据。 因而对具有SPI接口的从片器件来讲,SCK、SI是输入信号,SO是输出信号。 SCK用于主片和从片通信的同步。 SI用于将信息传输到器件,输入的信息包括指令、地址和数据,指令、地址和数据的变化在SCK的低电平期间进行,并由SCK信号的上升沿升沿锁存。 SO 用于将信息从器件传出,传出的信息包括状态和数据,信息在SCK信号的下降沿移出。 SPI总线接口的结构 8-bit Shift Register 串行发送缓冲器 (SPI TXB) 串行接收缓冲器 (SPI RXB) SPI缓冲器 (SPI BUF) 8-bit Shift Register 串行发送缓冲器 (SPI TXB) 串行接收缓冲器 (SPI RXB) SPI缓冲器 (SPI BUF) SCK SCK CS CS MI MO SO SI Master Slave 10.2 SPI总线的数据传输 SPI是一个环形总线结构,其时序是在SCK的控制下,两个双向移位寄存器进行数据交换。SCK提供时钟脉冲,SDI、SDO基于此脉冲完成数据传输。数据输出通过SDO线,数据在时钟上沿或下沿时改变,在紧接着的下沿或上升沿沿被读取,完成一位数据传输。输入原理相同。这样,在至少8次时钟信号的改变(上沿和下沿计为1次),就可以完成8位数据的传输。 假设8位寄存器内装的是待发送的数上升沿发送、下降沿接收、高位先发送。那么第一个上升沿来的时候数据将会是高位数据SDO=1。下降沿到来的时候,SDI上升沿的电平将被存到寄存器中去,那么这时寄存器=0101010SDI,这样在8个时钟脉冲以后,两个寄存器的内容互相交换一次。这样就完成里一个SPI时序。 时钟脉冲与数据变化的关系 假设主机和从机初始化就绪,并且主机的sbuff=0xaa,从机的sbuff=0x55,下面是SPI的8个时钟周期里的数据的变化情况:(下表中“上升沿”表示上升沿,“下”表示下降沿) SDI、SDO是相对于主机而言的。一个完整的传送周期是16位(2字节),主机首先发送命令,然后从机根据主机的命令进行准备,主机在下一个8位时钟周期写出或读入数据。 脉冲序号 主机缓存 从机缓存 MI MO 001010101 0 0 1上升沿 0101010x 1010101x 0 1 1下降沿10101011 0 1 2上升沿 1010100x 0101011x 1 0 2下降沿01010110 1 0 3上升沿 0101001x 1010110x 0 1 3下降沿10101101 0 1 4上升沿 1010010x 0101101x 1 0 4下降沿01011010 1 0 5上升沿 0100101x 1011010x 0 1 5下降沿10110101 0 1 6上升沿 1001010x 0110101x 1 0 6下降沿01101010 1 0 7上升沿 0010101x 1101010x 0 1 7下降沿11010101 0 1 8上升沿 0101010x 1010101x 1 0 8下降沿 01010

文档评论(0)

风凰传奇 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档