阅读 | 订阅
阅读 | 订阅
控制系统

详解TMS320VC5410的McBSP串行接口技术与程序设计

星之球激光 来源:与非网2011-12-05 我要评论(0 )   

一、 DSP 的 串行接口 技术 DSP是一种独特的 微处理器 ,是以数字信号来处理大量信息的器件。其工作原理是接收 模拟 信号,转换为0或1的数字信号。再对数字信号进行修改...

一、DSP串行接口技术

 

DSP是一种独特的微处理器,是以数字信号来处理大量信息的器件。其工作原理是接收模拟信号,转换为0或1的数字信号。再对数字信号进行修改、删除、强化,并在其他系统芯片中把数字数据解译回模拟数据或实际环境格式。它不仅具有可编程性,而且其实时运行速度可达每秒数以千万条复杂指令程序,远远超过通用微处理器,是数字化电子世界中日益重要的电脑芯片。它的强大数据处理能力和高运行速度,是最值得称道的两大特色。

 

如今,嵌入式系统正迅速向低功耗、低成本、小体积、高性能、高速率方向发展。随着串行接口技术的不断成熟,逐步达到了以上设计要求,成为重要的接口方案。尤其在数字信号处理器方面,串行口的重要性体现得更加突出,几乎所有的数字信号处理器都提供了一个或多个串行接口,并且随着数字信号处理器的更新换代,其相应的串行接口,在功能上不断强化,性能上不断提升。

 

与并行接口相比,串行接口的最大优点就是减少了DSP的引脚数目,降低了接口设计的复杂性。通常,串行接口提供全双工同步操作,输入和输出数据以位为单位的串行方式进行处理。目前,世界各主要半导体制造商提交了许多不同的串行协议,其中一些已经成为工业标准。典型的串行协议包括:MOTOROLA(Austin,TX)的串行外围设备接口SPI和队列SPI(QSPI)、PHILIPS(Sunnyvale,CA)、National Semiconductor的微总线(microwire)。

 

图1是典型的SPI协议。SPI协议采用主从设置,相互连接的设备中一个作为主设备,其他的设备作为从设备。接口连线主要包括以下4条信号线:

 

(1)串行数据输入信号线,即MISO(Master InSlave Out);

 

(2)串行数据输出信号线,即MOSI(Master Out-Slave In);

 

(3)移位时钟信号线,即SCK;

 

(4)从设备片选信号线,即SS。

 

 

典型的SPI协议

 

二、TMS320VC5410的多通道缓存串行口——McBSP

 

1.McBSP的功能特点

 

TMS320V5410是TI生产的第二代低功耗TMS320C5000系列定点数字信号处理器,提供了3个高速、全双工、多通道缓存串行口McBSP,每个串行口可以支持128通道,速度达100Mbit/s。McBSP是在标准串行接口的基础之上对功能进行扩展,因此,具有与标准串行接口相同的基本功能:

 

(1)全双工通信;

 

(2)拥有两级缓冲发送和三级缓冲接收数据寄存器,允许连续数据流传输;

 

(3)为数据发送和接收提供独立的帧同步脉冲和时钟信号;

 

(4)能够与工业标准的解码器、模拟接口芯片(AICs)和其他串行A/D和D/A设备直接连接;

 

(5)支持外部移位时钟或内部频率可编程移位时钟。

 

此外,McBSP还具有以下特殊功能:

 

(1)可以与IOM-2、SPI、AC97等兼容设备直接连接;

 

(2)支持多通道发送和接收,每个串行口最多支持128通道;

 

(3)串行字长度可选,包括8、12、16、20、24和32位;

 

(4)支持μ-Law和A-Law数据压缩扩展;

 

(5)进行8位数据传输时,可以选择LSB或MSB为起始位;

 

(6)帧同步脉冲和时钟信号的极性可编程;

 

(7)内部时钟和帧同步脉冲的产生可编程,具有相当大的灵活性。

 

2.McBSP寄存器的访问

 

TMS320VC5410包含3组多通道缓存串行口,每组多通道缓存串行口有23个寄存器与之相关,除RBR[1,2]、RSR[1,2]、XSR[1,2]之外,其中15个寄存器是可寻址寄存器。由于数据页0的存储空间限制,有些寄存器必须通过子地址寻址方式来访问。SPSA_x是子地址寄存器,欲访问指定的寄存器,只要把相应的子地址写入SPSA_x就可以了。表1列出了McBSP的子地址寄存器。

 

 

McBSP子地址寄存器
表1 McBSP子地址寄存器

 

假如要对McBSP1的发送控制寄存器2(XCR2_1)进行设置。首先,将子地址0x0005写入子地址寄存器(SPSA_1),与此同时,存储单元0x0049就映射为发送控制寄存器2(XCR2_1)。然后,对存储单元0x0049的读写操作,就相当于对发送控制寄存器2(XCR2_1)进行操作。

 

例:设置McBSP1的发送控制寄存器2(XCR2_1)。

 

3.McBST的SPI接口设计

 

McBSP的时钟停止模式与SPI协议兼容。当设置McBSP为主设备时,发送端输出信号(BDX)就作为SPI协议的MOSI信号,接收端输入信号(BDR)就作为SPI协议的MISO信号。发送帧同步脉冲信号(BFSX)作为从设备片选信号(SS),而发送时钟信号(BCLKX)就与SPI协议的串行时钟信号(SCK)相对应。由于接收时钟信号(BCLKR)和接收帧同步脉冲信号(BFSR)与发送端的相应部分在内部相互连接,因此这些信号不用于时钟停止模式。McBSP设置为主设备时,SPI协议连接如图2所示。

 

 

SPI协议连接

 

三、McBSP接口举例

 

1.高精度数模转换器MAX541

 

MAX541是16位串行输入、电压输出数模转换器,+5V单电源供电。DAC输出非缓冲,因此只有0.3mA的低供电电流和1LSB的低漂移误差。DAC输出范围为0V至VREF。MAX541采用3线串行接口,兼容于SPITM/QSPITM/MICROWIRETM等串行通信协议。MAX541最高可以获得500×10 3采样点/秒的通过率,满足大多数应用的要求。MAX541采用8引脚DIP或SO封装。MAX541各引脚描述如表2所列。

 

 

MAX541引脚说明
表2 MAX541引脚说明

 

2.McBSP与MAX541的接口电路

 

TMS320VC5410与MAX541的接口电路如图3所示。

 

 

TMS320VC5410与MAX541的接口电路

 

为使MAX541获得高分辨率和高精度,可以由MAX873提供高精度的+2.5V低阻抗基准电压源。为了消除高频和低频干扰,必须在REF引脚与模拟地之间接入退耦电容。由于AX541的数字输入DIN与TTL/CMOS逻辑电平兼容,因此,可以与TMS320VC5410的串行输出BDX直接连接。此外,必须严格隔离模拟地AGND和数字地DGND,最后在MAX541的AGND引脚上将模拟地和数字地连接在国起,构成星形的地线系统。在MAX541的输出端接入电压跟随型运算放大器MAX495。表3是数字输入代码与模拟输出电压之间的对应关系。#p#分页标题#e#

 

 

MAX541单极性接口
表3 MAX541单极性接口

 

DSP的发送帧同步脉冲信号(BFSX)作为MAX541的片选信号(CS),而发送时钟信号(BCLKX)作为MAX541的串行时钟输入。MAX541的三线接口电路时序如图4所示。

 

 

MAX541的三线接口电路时序

 

图4所示,在片选信号CS由高电平转变为低电平的同时,串行数据按照从最高有效位到最低有效位的顺序,在串行时钟的每个上升沿逐位移入片内的输入寄存器。

3.软件设计

 

下面通过产生国个锯齿波的例子来说明TMS320VC5410与MAX541之间的软件设计。

 

当McBSP作为SPI通信的主设备,由它为从设备提供时钟信号,并控制数据的传输过程。CLKX引脚上的时钟信号必须在数据包传输期间使能,当没有数据包传输时,时钟信号根据所采用的极性保持高电平或者低电平。通常,通过McBSP的采样率发生器产生10MHz时钟信号,由BCLKX引脚输出,作为MAX541的串行时钟输入信号。McBSP利用BFSX引脚为MAX541提供片选信号,因此必须正确设置帧脉冲发生器,使之在每个数据包传输期间产生帧同步脉冲,即在数据包传输的第一位转变为有效状态(在本例中为低电平有效,取决于MAX541的片选信号CS),然后维持有效状态直到数据包发送完毕。此外,根据SPI传输协议,必须正确设置数据发送延迟时间(XDATDLY=01b),由图4可知,在帧同步脉冲有效之后,大约延迟了一个时钟周期才进行串行数据的发送。根据图4所示的时序图,为McBSP选择一种合适的时钟方案,即设置McBSP的时钟停止模式。在本例中采用时钟停止模式3(CLKSTP=10b、CLKXP=1),其时钟方案如图5所示。

 

 

时钟方案

 

表4列出了一些与SPI设置相关的寄存器位。

 

 

与SPI设置相关的些寄存器位
表4 与SPI设置相关的些寄存器位

 

4.程序清单

 

程序首次初始化TMS320VC5410,使数据页指针(DP)为0,并且禁止中断。TMS320VC5410外接10Hz的时钟频率发生器,通过锁相环电路倍频至100MHz。接着初始化TMS320VC5410的多通道缓存串行口McBSP。最后,响应XRDY中断发送数据。

 

 

程序

 

 

程序

 

 

程序

 

 

程序

 

结束语

 

本文介绍了TMS320VC5410的多通道缓存串行口(McBSP)的功能特点,并结合实例子着重讨论了如何利用SPI接口协议实现McBSP与其他串行器件之间相互通信。

 

转载请注明出处。

暂无关键词
免责声明

① 凡本网未注明其他出处的作品,版权均属于激光制造网,未经本网授权不得转载、摘编或利用其它方式使用。获本网授权使用作品的,应在授权范围内使 用,并注明"来源:激光制造网”。违反上述声明者,本网将追究其相关责任。
② 凡本网注明其他来源的作品及图片,均转载自其它媒体,转载目的在于传递更多信息,并不代表本媒赞同其观点和对其真实性负责,版权归原作者所有,如有侵权请联系我们删除。
③ 任何单位或个人认为本网内容可能涉嫌侵犯其合法权益,请及时向本网提出书面权利通知,并提供身份证明、权属证明、具体链接(URL)及详细侵权情况证明。本网在收到上述法律文件后,将会依法尽快移除相关涉嫌侵权的内容。

网友点评
0相关评论
精彩导读