SPI接口单线应用.docVIP

  1. 1、本文档共3页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
SPI接口单线应用

SPI接口单线应用 摘要:为解决I/O口数据传输的速率问题,提出SPI接口的单线应用方案,分析该方法的可行性,并在单片机ADuC812与射频无线通信模块nRF2401间的接口设计中得到了应用,验证该方案的有效性。该方案具有电路设计简单、数据传输速率高等优点。 1 SPI通信 SPI信号线:一般的SPI接口使用4条信号线与外围设备接口,其具体功能如下: SCLOCK: 主机的时钟线,为数据的发送和接收提供同步时钟信号。每一位数据的传输都需要1次时钟作用, 因而发送或接收1个字节的数据都需要8个时钟作用。主机的时钟可以通过固件进行设置,并和从机的时钟线相连。 MISO:主机输入/从机输出数据线。主机的MOSO应与从机的发送数据端相连,进行高位在前的数据交换。 SS:低电平有效的从机选择线。当该线置低时,才能跟从机进行通信。 SPI工作模式:SPI的工作模式分为:主模式和从模式。 主模式的特点是不论发送还是接收始终有SCLOCK信号,SS信号不是必需的, 由于SPI只能有一个主机, 因而不存在主机的选择问题。 从模式的特点是无论发送还是接收必须在时钟信号SCLOCK的作用下才能进行,并且SS信号必须有效。 不论是在主模式下还是在从模式下,都要在时钟极性和时钟相位的配合下才能有效的完成一次数据传输。 2 SPI接口的单线应用 在标准的SPI接口间进行通信时,SPI总线的四条信号线中: 主机SCLOCK与从机SCLOCK相连; 主机MISO与从机MOSI相连;主机MOSI 与从机MISO 相连; 主机控制信号线与从机的SS相连。在SPI接口与非标准接口进行通信时,例如与有的串行RAM 接口,由于双向I/O数据线只有一条,时钟和片选信号线都有,那么如何利用SPI的高速特性进行数据的读出和写入呢 在这里提出SPI的单线应用方案,其如图1所示。主机的时钟信号SCLOCK 和片选信号SS与从机的对应信号线相连, 不同的是主机的MOSI和MISO信号线分别经过合适的电阻与从机的I/O信号线相连。当主机给从机发送数据时,在时钟信号的作用下,数据从MOSI口线经电阻1到从机的I/O 口线;当主机接收数据时,也需要在时钟信号的作用下,数据从从机的I/O口线经电阻2到主机的MISO口线。该方案中MOSI与MISO连在一起, 由于加了适当的电阻,所以不违反电路设计原则,但如果电阻大小不当会对信号的特性带来影响 。 图1 SPI单线应用方案 3 SPI接口的单线应用举例 本例是作者设计的单片机,ADuC812的SPI总线与射频无线通信模块nRF2401间的通信接口,由于nRF2401只支持I/O数据传输方式,但是为了提高无线通信的数据速率,作者采用单线方式实现了SPI与nRF2401的通信。 电路设计 ADuC812的SPI与nRF2401的连接原理如图2所示。其中ADuC812作为主机,nRF2401作为从机,PWR、CE、CS是nRF2401的工作模式选择信号,他们共同完成从机的片选任务,相当于SS信号。CLK1是ADuC812串行时钟信号。根据信号阻抗匹配原则,通信中选用两个6K 的电阻。ADuC812单片机的SPI接口由SPICON SPI控制寄存器 、SPIDAT SPI数据寄存器 来控制, 通过设定SPICON 寄存器的各位实现SPI的各种工作模式。 图2 ADuC812的SPI与nRF2401的连接原理 控制寄存器SPICON中从高到低各位说明如下: ISPI: 中断标志位。当发送或接收1字节数据完毕时自动置1.当执行中断服务程序时,硬件自动清除该位。该位也可以通过软件控制。 WCOL:写冲突错误标志位。 SPE:SPI使能位。若SPE 0,则I2C串行口工作;若SPE 1,则SPI串行口工作。 SPIM:主模式选择位。若SPIM 0,则SPI工作于从模式;若SPIM 1,则SPI工作于主模式。 CPOL:时钟极性选择位。CPOL 0,在主机时钟下降沿时读取数据,各数据字节之间传输时,时钟处于高电平空闲状态;CPOL 1,在主机时钟上升沿时读取数据,各数据字节之间传输时,时钟处于低电平空闲状态。 CPHA;时钟相位选择位。CPHA 0,传输数据的最高位在SS的下降沿出现,在时钟第1个前沿读入,之后的下一个数据位在时钟后沿出现, 在下一个前沿读入,直到8位数据读完;CPHA 1,传输数据在时钟前沿出现,在同一时钟周期的后沿读入。 SPR1、SPR0:SPI波特率选择位。 接口程序设计 固件程序主要包括:SPI口初始化程序INITSPI,送数据程序SENDDATA,接收数据程RECEIVEDATA。 在SPI初始化程序中,控制寄存器SPICON设置为33H, 即CPOL 0,CPHA 0, 当设置CPOL 1,CPHA 1时, 由于干扰脉冲

文档评论(0)

haocen + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档