【2017年整理】19串行外围设备接口(SPI).doc

【2017年整理】19串行外围设备接口(SPI).doc

  1. 1、本文档共15页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
【2017年整理】19串行外围设备接口(SPI)

第19章 串行外围设备接口(SPI) 19.1 概述 串行外围设备接口(允许MPC8349E其他PowerQUICC系列芯片、MC68360、M68HC11和M68HC05微控制器系列以及其他系列交换数据。SPI用于外围设备的通信,EEPROM、实时时钟A/D转换器和ISDN等。 SPI是全双工同步面向字符的通道,支持四线接口(接收发送时钟和从选择)。SPI发送和接收一个独立的波特率器和一个控制单元。发送和接收使用相同的时钟。这个时钟主模式下波特率器在SPI传输过程中,同时发送和接收数据。 接收器和发送器双缓冲,如图19-1所示,有效FIFO两字符。首先SPI的MSB/LSB。当SPI模式寄存器SPI时(SPMODE[EN]=0)功耗小。 19.2 绪论 SPI的结构图如19-1所示。 19-1 SPI结构图 19.2.1 特征 SPI的主要特征如下所示: 四信号接口(SPIMOSISPIMISO,SPICLK和SPISEL) 全双工操作 32位数据字符或4位到16位数据字符 支持字符发送和接收 支持8/16/32字符长度的反向数据模式 支持主SPI模式 支持多主环境 最大时钟频率主模式下为(系统时钟频率/4)从模式下为(系统时钟频率/2) 独立的可编程波特率发生器 的本地能力 漏极开路输出支持多主配置 19.2.2SPI发送和接收过程 由于SPI是面向字符通信,因此核是打包和解包接收和发送帧。帧包含一个完整的SPI传输中发送或接收的所有字符从写入SPITD寄存器的第一个字符开始到设置SPCOM[LST]之后的最后一个字符。更多的信息参看19.4.1.4SPI命令寄存器(SPCOM)。 核通过读SPI接收数据保持寄存器(SPIRD)接收数据,然后清除非空的SPIE[NE]以释放SPIRD寄存器,为下一次接收操作做准备。核通过SPI发送数据保持寄存器(SPITD)发送数据,然后SPI清除SPI事件寄存器(SPIE)的非满位(NF)SPITD寄存器待发送的字符。当待发送的下一个字符为当前帧中最后一个字符时,核置位SPCOM[LST],将最后一个字符写入SPITD。 SPI核握手协议可以通过轮询或中断实现。当采用轮询方式时,核按照预定义的读SPIE,并且根据SPIE位进行操作。轮询取决于SPI串行信道。当采用中断机制时,置位SPIE的非满(NF)非空(NE)位引起e300核的中断。然后读SPIE,并根据SPIE位进行操作。三个基本的发送和接收模式为主从和多主模式。 注意 当非满(NF)和非空(NE)位均被置位时,e300核在发送新数据前读取接收的数据。 SPMODE[LEN]硬件发送的字符长度。核负责位,将数据打包或者解包字符长度。更多信息参看表19-4中SPMODE[LEN]说明。 19.2.3操作模式 SPI设定在在单主或多主环境下工作。本节单主配置时SPI主和从操作。同时也讨论了多主环境下SPI的操作。 总结了SPI支持的主要操作模式。 19.2.3.1 作为主设备的SPI 在主模式下,SPI发送消息到从外设,从外设同时应答。带有多个从设备的单主可以并行I/O信号从设备,如图19-2所示。为了单主环境下的多主的错误,通过外部主的输入无效。 图19-2单主/多从配置 为了开始交换数据。e300将待发送数据写入SPITD寄存器。SPI为每一个字符在SPICLK产生可编程时钟脉冲。将Tx数据在SPI主出从入(SPIMOSI)移出,同时将Rx数据在SPI主入从出(SPIMISO)移。在发送过程中,无论何时SPI发出请求核负责提供数据,从而保证操作的顺畅。在最后一个数据(LST命令和紧接其后的数据)发送完毕后,写入SPITD的第一个字符作为SPI的开始命令。 SPI连续地发送和接收字符直到SPCOM[LST]被置位或者有错误发生。 只要发送缓冲区不满,SPI置位SPIE[NF]中断控制器可屏蔽中断。在发送完最后一个字SPI也置位NF。作为回应,核读取与最后一个字相关的异常标志。只要接收缓冲区,SPI置位SPIE[NE],中断控制器可屏蔽中断。 19.2.3.2 作为从设备SPI 在从模式下,SPI设备接收来自SPI主的信息并且同时。从的必须在Rx时钟之前有效。一旦信号有效,SPICLK成为从主到从的输入。SPICLK可以为从DC到系统时钟/2之间的任意频率。 核心将待发送数据送入SPITD寄存器,为数据传输做准备。一旦有效,从设备将数据从SPIMISO移出,从SPIMOSI移入。SPISPI寄存器的NF位,当满缓冲完成发送和接收或者出现,发出可屏蔽中断。SPI连续接收,直到信号无效。 发送连续进行直到数据或者无效。一旦重新有效,并且SPICLK开始,继续发送。缓冲区中的字符发送,只要保持有效,SPI发送1。 19.2.3

文档评论(0)

junzilan11 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档