经产观察
IT资讯
IT产业动态
业界
网站运营
站长资讯
互联网
国际互联网新闻
国内互联网新闻
通信行业
通信设备
通信运营商
消费电子
数码
家电
通信设备

一种通过SPI接口协议实现DSP与其它设备通信的方法

作者:habao 来源: 日期:2016-2-4 20:27:29 人气:

  2016年4月08日

  深圳会展中心

  处在IOT新时代,无线通信是业内炙手可热的技术之一,其革新进程也从未停止,WiFi、蓝牙、zigBee、2.4GHz RF等无线连接技术处于爆发的前夜,互联近在咫尺!鉴此,电子发烧友网将邀请行业精英以及拟邀CSR 、高通、MTK、博通、飞利浦、NXP、TI、Marvell、360等众多知名原厂的权威技术专家,共同搭建产业共生交流平台,助力无线通讯与IOT快速发展。

  点击免费报名>>

  2015年12月04日

  深圳•南山软件产业五栋五楼538房 1号报告大厅

  第二届中国IOT大会汇集QQ物联、微软、京东智能、中科院、阿里云、ARM、中国联通、夏普等业界大佬,共同分析IoT各领域的价值与创新机会,涵盖车联网、IOT技术、智能硬件、云技术与大数据等热门领域,探讨完善的创新的解决方案。本次IoT大会是讨论各种解决方案以创造IoT长远发展不可多得的良机。

  精彩回顾>>

  介绍了SPI通信协议,并着重介绍了TI公司生产的TMS320C5402 DSP用于SPI协议通信时的串口配置方法和接口电设计实例,最后给出了串口McBSP的配置程序。

  关键词:多通道缓冲串行口,主设备,从设备,NECuPD780308,SPI,DSP

  1 引 言

  随着信息技术的深入和计算机技术的飞速发展,DSP技术也正以极快的速度应用到科技和国民经济的各个领域。在很多工程开发处理中,往往要求实现单片DSP芯片与单片DSP芯片、多片DSP芯片以及其它处理芯片的通信,怎样更高效、更便捷地实现通信,已成为广大DSP应用者必须首要解决的一个问题。

  本文根据笔者在工程应用和调试TIDSPTMS320C5402与NECuPD780308单片机通信的经验,着重介绍并讨论通过将C5402 DSP的多通道缓冲串行口McBSP(Multi-channel Buffered Serial Port)配置为SPI模式(即时钟停止模式),实现DSP与其它单片处理器通信,并给出部分程序代码,供读者们参考。

  2多通道缓冲串行口McBSP

  多通道缓冲串行口McBSP的功能是提供器件内外数据串行交换。同以前的串口相比,McBSP串口具有相当大的灵活性。表1给出了有关VC5402的McBSP管脚的说明。其中串口接收、发送时钟和同步帧信号,既可由外部设备提供,又可由内部时钟发生器提供,大大地提高了通信的灵活性。

  3SPI协议:McBSP时钟停止模式

  SPI协议是以主从方式工作的,有一个主设备和一个或多个从设备,接口包括以下4个信号:串行数据输入(也称为主进从出,或MISO);串行数据输出(也称为主出从进,或MOSI);串行移位时钟(也称为SCK);从使能信号(也称为SS)。

  图1为设备接口示意图。

  主设备通过提供移位时钟和从使能信号来控制信息的流动,从使能信号是一个可选的高低电平,它激活从设备(在没有时钟提供的情况下)的串行输入和输出。在没有专门的从使能信号的情况下,主从设备之间的通信则由移位时钟的有无来决定,在这种连接方式下,从设备必须自始至终保持激活状态,而且从设备只能是一个,不能为多个。

  DSPVC5402提供的时钟停止模式则可用于SPI协议通信中,当McBSP被配置为时钟停止模式时,发送器和接收器是内部同步的,即可将McBSP配置为一个SPI主或从设备。其中,可将发送数据帧时钟(FSX)用作从使能(即SS),而发送数据位时钟(CLKX)则用作SPI协议中的SCK,由于接收数据位时钟(CLKR)和接收数据帧时钟(FSR)在内部与FSX和CLKX是相连的,所以该管脚不用于SPI模式。

  当McBSP被配置作为一个主设备,传送输出信号(BDX)被用作SPI协议的MOSI信号,接收输入信号(BDR)就被用作MISO信号。图2所示为McBSP用作主设备的SPI接口。

  同样地,当McBSP被配置作为一个从设备,BDX就被用作了MISO信号,BDR就被用作了MOSI信号。图3所示为McBSP用作从设备的SPI接口。

  DSPVC5402的McBSP被用于时钟停止模式时,寄存器SPCR1的CLKSTP位域和引脚配置寄存器的CLKXP位的配置见表2。

  4McBSP作为SPI设备时的其它有关寄存器的配置

  为了能使读者更好地掌握和了解当McBSP作为SPI设备时的有关寄存器配置,笔者将以McBSP作为SPI从设备运行为例,给读者介绍有关McBSP的其它有关寄存器的配置,若McBSP作为SPI主设备,则相关配置相反即可。

  当McBSP作为SPI从设备时,主设备外部产生主时钟。CLKX引脚和FSX引脚必须被设置为输入。CLKX引脚和CLKR信号内部连接,从而传送和接收回均由外部主时钟计时(CLKX)。同时,FSX引脚和FSR信号内部连接,CLKR引脚和FSR引脚不再需要外部信号连接。将McBSP用作从设备的SPI接口的例子如图3所示。

  尽管CLKX信号由主设备外部产生且与McBSP同步,McBSP的采样率发生器必须可以启动正确的SPI从设备运行。采样率发生器应被编为它的最大速率(CPU时钟速率的一半)。内部采样率时钟被用来同步McBSP逻辑和外部主时钟及从使能信号。每次传送,McBSP需要FSX输入的从使能信号的上升沿。这就是说,在每次传送的开始,主设备必须从使能信号,在每次传送完成后,消除从使能信号。在两次传送之间,从使能信号不能一直保持为高电平。对正确的SPI从设备运行而言,McBSP的数据延迟参数必须设置为0,在这种运行模式中,值1或2没有定义。配置McBSP为从设备所需的寄存器位值列在表3中。

  6结束语

  文中所介绍的串行SPI通信协议,是一种标准的通信协议,在很多场合下,很多芯片采用的正是这种机制,文中举例将DSP作为从设备,目的是时钟可由主设备来提供,不用再专门去调试时钟,这为开发提供了很大的方便。参考文献

  1李哲英,等.DSP基础理论与应用技术.:航空航天大学出版社,2002

  2王念旭,等.DSP基础与应用系统设计.:航空航天大学出版社,2001

推荐:

推荐文章