基于TMS320C6000的串行通信扩展方法.docx

上传人:b****7 文档编号:10803717 上传时间:2023-02-23 格式:DOCX 页数:11 大小:168.86KB
下载 相关 举报
基于TMS320C6000的串行通信扩展方法.docx_第1页
第1页 / 共11页
基于TMS320C6000的串行通信扩展方法.docx_第2页
第2页 / 共11页
基于TMS320C6000的串行通信扩展方法.docx_第3页
第3页 / 共11页
基于TMS320C6000的串行通信扩展方法.docx_第4页
第4页 / 共11页
基于TMS320C6000的串行通信扩展方法.docx_第5页
第5页 / 共11页
点击查看更多>>
下载资源
资源描述

基于TMS320C6000的串行通信扩展方法.docx

《基于TMS320C6000的串行通信扩展方法.docx》由会员分享,可在线阅读,更多相关《基于TMS320C6000的串行通信扩展方法.docx(11页珍藏版)》请在冰豆网上搜索。

基于TMS320C6000的串行通信扩展方法.docx

基于TMS320C6000的串行通信扩展方法

课程结业论文

基于TMS320C6000的串行通信扩展方法

 

课程名称:

DSP原理及应用

任课教师:

许善祥

所在学院:

信息技术学院

专业:

电气工程及其自动化

班  级:

09电气

(2)班

学生姓名:

齐宏力

学  号:

20094073243

 

中国·大庆

2012年5月

摘要

在信号处理器DSP的应用中,能够高速可靠的传输数据是非常重要的。

TMS320C6000的McBSP不仅具有以往DSP标准串口的基本功能,而且支持许多方式的传输接口,尤其可以利用LVDS实现DSP与DSP之间的数据传输。

本文以TMS320C6711B为例,介绍了两种串行通信的扩展方法,同时给出了相应的软件实现程序。

关键词:

TMS320C6000;McBSP;SPI模式;LVDS串行通信

Abstract

Indigitalsignalprocessor(DSP)applications,itisimportanttotransferdatatoandfromDSPs,aswellasbetweenthem,athighspeedandwithhighreliability.TMS320C6000multichannelbufferedserialport(McBSP)isdesignednotonlytohavebasicfunctionsofpreviousDSPSerialPort,butalsosupportmanyinterfacedevices,especiallytransferdatabetweenDSPsusingalowvoltagedifferentialsignaling(LVDS).TMS320C6711Btwoextendedserialportcommunicationwaysareintroducedandcorrespondingprogramisprovided.

Keywords:

TMS320C6000;McBSP;SPImode;LVDSserialportcommunication

在DSP的应用中,能够高速可靠的进行数据传输是非常重要的。

TMS320C6000的多通道缓冲串口(McBSP)是在C2x,Ox,C5x和C54x标准串口的基础上发展而来的,它除了具备基本的功能外,还具有以下特点:

(1)支持下面方式的传输接口。

①TI/El帧协议;

②MVIP兼容的交换方式以及ST-BUS兼容设备;

③IOM-2兼容设备;

④AC97兼容设备;

⑤HS兼容设备;

⑥SPI设备。

(2)可与多达128个通道进行收发。

(3)支持传输的数据字长可以是8bit,12bit,16bit,20bit,24bit或32bit.

(4)内置拜一律和A一律压扩硬件。

(5)对8bit数据的传输,可选择先传LSB或MSB。

(6)可设置帧同步信号和数据时钟信号的极性。

(7)内部传输时钟和帧同步信号可编程程度高。

本文以TMS320C6711B(提供了两个McBSP串口)为例,介绍两种串行通信的扩展方法。

 

基于TMS320C6000的串行通信扩展方法-1-

摘要-2-

Abstract-2-

1多通道缓冲串口(McBSP)接口设计-4-

1.1数据通道-4-

1.2控制通道-5-

2SPI协议接口到UART的转换-5-

2.1McBSP的SPI功能-5-

2.2MAX311IE-SPI兼容UART-5-

2.3时序-6-

2.4McBSP与MAX3111E的通信设置-7-

3McBSP扩展LVDS高速串行通信口-8-

3.1LVDS原理-8-

3.2LVDS收发器SN65LVDS32和SN65LVDS31-8-

3.3LVDS设计考虑-8-

4结论-10-

参考文献:

-10-

 

1多通道缓冲串口(McBSP)接口设计

本系统需要一个异步串行口作为调试或者作为异步串行通信使用,但McBSP不是异步串口。

通常对于TI的DSP芯片可以采用多种方法搭建一个异步串口,比如直接在EMIF口用专用UART扩展或使用CPLD扩展甚至可以直接利用McBSP,使用大量软件编程来模拟一个异步串口,它们各有优缺点。

在设计中为了充分利用DSP的现有资源,考虑到McBSP支持SPI设备,所以使用SPI到UART转换专用IC(MAX3111E)来实现UART(RS-232),另外一个McBSP,作为同步高速串口增加LVDS驱动,搭建成一个高速串口。

McBSP口(结构框图见图1)包含两个主要的功能模块:

1.1数据通道

数据通道完成数据的发送和接收。

CPU或EDMA控制器向数据发送寄存器(DXR)写入待发送的数据,从数据接收寄存器(DRR)读取接收到的数据。

①接收。

一旦接收帧同步信号变为有效后,DR管脚上接收到的数据先移位进入接收转移寄存器(RSR),然后被复制到接收缓冲寄存器(RBR)中,RBR再将数据复制到DRR中,等候CPU或EDMA控制器将数据读走。

②发送。

写入DXR中的数据先移位进入发送移位寄存器(XSR),当发送帧同步有效后,XSR中的数据输出至DX管脚。

1.2控制通道

控制通道完成的任务包括内部时钟产生、帧同步信号产生、对这些信号的控制以及多通道的选择等。

控制通道还负责产生中断信号送往CPU,产生同步事件通知EDMA控制器。

2SPI协议接口到UART的转换

2.1McBSP的SPI功能

SPI(seiresprotocolinterface)是利用4根信号线的串行接口协议4个接口信号是:

串行数据输入(MISO,主设备输入,从设备输出)、串行数据输出(MOSI,主设备输出,从设备输入)、移位时钟(SCLK)、从设备使能(SS)。

SPI的最大特点是由主设备时钟信号出现与否来界定主/从设备通信,一旦检测到主设备时钟信号,就开始传输数据,时钟信号无效后,传输结束。

McBSP的数据同步时钟具有停止控制选项,因此可以与SPI协议兼容,以McBSP作为SPI的主控端。

McBSP可以很容易地通过对相关寄存器的设定完成SPI兼容功能。

表I列出了CLKSTP与CLKXP相配合,对串口时钟工作模式的控制。

2.2MAX311IE-SPI兼容UART

MAX31IIE是一个全功能UART与SPI兼容极易与微处理器接口需要4条接口线实现与微控制器握手接口,另一条中断信号线可选用。

MAX31IIE仅需要50B的程序,在等待串行事件时,处理器和UART可以进入休眠状态,其FIFO还可缓冲接收突发信息。

MAX3111E工作在3.3V,而且自带具有士巧kVESD保护的RS-232收发器,还包括了UART/SPI接口、波特率发生器(最大波特率230kb/s)、中断发生器和8B的FIFO.通过“写结构寄存器”完成波特率、字长、校验、8B接收FIFO的设定并选择通用UART方式或IrDA方式,控制节电状态和4个中断任务。

图2给出了SPI到UART的转换模块,图3给出了MAX31IIE与CPU的连接图。

片内时钟X1可以是1.8432MHz.3.6864MHz或由占空比为45%-55%的外部方波驱动X1,片内时钟除16是波特率时钟,BO-B3四位确定波特率系数(BRD),波特率时钟除以BRD即为波特率,波特率的范围是300-230kbaud。

2.3时序

MAX3111E的接口是一个全双工结构,无论读写哪个寄存器都是从DIN逐位输入16bit数据,同时从DOUT逐位输出16bit数据。

每次数据输入都是先从高位开始,到低位结束。

DIN的输入的前两位告诉了UART传输的类型,DIN在SCLK的上升沿被锁存,DOUT在SCLK上升沿被McBSP读入。

DOUT的第1位在CS的下降沿输出,第14-0位在SCLK的下降沿输出。

每次数据都是16bit,如果在数据读写的过程中CS变高,那么这次传输终止。

图4是它的时序图。

2.4McBSP与MAX3111E的通信设置

McBSP中的传输时钟具有停止模式选项,这保证了与SPI协议的兼容性。

McBSP作为主设备,MAX31IIE作为从设备。

通过对McBSP的相关寄存器的设置完成通信交连。

相关寄存器有:

串口控制寄存器(SPCR),接收控制寄存器(RCR),发送控制寄存器(XCR),管脚控制寄存器(PCR),采样率发生控制寄存器(SRGR)。

根据MAX3111E时序上的要求,McBSP寄存器设置如下:

①CLKXM=1(PCR),CLKX为输出。

②CLKSM=1(SRGR),采样率发生器时钟来源于CPU。

③CLKGDV=29(SRGR),采样率发生器分频数为300

④FSXM=1(PCR),FSX为输出。

⑤FSGM=O(SRGR),FSX在每次包传输时被激活。

⑥FSXP=1(PCR),FSX低有效。

⑦XDATDLY=01(XCR),发送时钟延时为to

⑧RDATDLY=01(RCR),接收时钟延时为to

⑨CLKSTP=10(SPCR),时钟停止模式1,无延迟,数据接收在下降沿。

CLKXP=O(PCR),发送数据在时钟上升沿。

⑩RWDLEN1=010(RCR),发送包长为16位。

XWDLENI=010(XCR),接收包长为16位。

3McBSP扩展LVDS高速串行通信口

在许多通信应用中,需要在远距离传输数据,例如在机箱内的板到板之间甚至在机柜到机柜之间的传输几十Mb/s甚至几百Mb/s速率的数据,传统的RS-485.RS-422,RS-232,USB2.0等串行接口标准根本达不到如此高的传输速率,如何稳定、高速地传输数据成为了一个难题。

LVDS接口的出现解决了高速传输这一瓶颈。

3.1LVDS原理

LVDS(lowvoltagedifferentialsignaling)是一种小振幅差分信号技术,使用非常低的幅度信号(350mV),通过一对差分PCB走线或平衡电缆传输,它允许单个信道传输率达到每秒百兆比特(Mb/s),它特有的低振幅及恒流源模式驱动只产生极低的噪声,消耗非常小的功率,目前LVDS使用的是TIA/EIA-644标准。

3.2LVDS收发器SN65LVDS32和SN65LVDS31

采用SN65LVDS32和SN65LVDS31收发器作为McBSP的LVDS的扩展,其特点如下:

①符合甚至超过ANSI,TIA/EIA-644标准;

②LVDS类型,输出电压350mV,10092负载;

③速率高达400Mb/s;

④典型寄生延时1.7ns;

⑤操作电压为单3.3V;

3.3LVDS设计考虑

(1)输入。

①未使用的输入引脚可以开路,因其内部有下拉电阻300M;

②LVDS31和LVDS32的“G”和“/G”选通信号可以直接接地或VCC,如果接上拉、下拉电阻阻值不应超过10W;

③印制板上在McBSP与LVDS接收器之间的连接线应尽可能短并且匹配,保持任何连接线在长度在5cm之内,相应匹配长度误差小于1cm.

(2)电源供给。

0.01四0805电容在PIN16和GND之间,尽可能靠近IC.

(3)输出。

①PCB引线在发送器和连接器之间要小于2cm,PCB必须构造一个可控的差分阻抗>100。

;

②每条引线在收发器和连接器之间的匹配长度误差小于1CM.

(4)端接。

使用0603或0805,1001215%,1/20W电阻跨接在差分对线上,引线特征阻抗90S2

具体的软件程序实现如下:

;EMIF寄存器初始化

*(unsignedvolatileint*)McBSP1_SPCR=0;

*(unsignedvolatileint*)McBSP1_RCR=0x000500a0;

*(unsignedvolatileint*)McBSP1_XCR=0x000100a0;

*(unsignedvolatileint*)McBSP1_SRGR=0x300000ld;

*(unsignedvolatileint*)McBSP1_MCR=0x0;-

*(unsignedvolatileint*)McBSP1_RCER=0x0;

*(unsignedvolatileint*)McBSP1_XCER=0x0;

*(unsignedvolatileint*)McBSP1_PCR=0xa05;

For(i=0;i<90000;i++);

*(unsignedvolatileint*)McBSP1_SPCR=0x00401800;

*(unsignedvolatileint*)McBSP1_SPCR=0x00411801;

*(unsignedint*)McBSP1_DXP=0xc00b;初始化完毕

for(i=0;i<90000;i++);

for(i=0;i<90000;i++)

{

*(unsignedvolatileint*)(McBSP1_DXP=0x8235;

for(temp=0;temp<90000;temp++);

}

4结论

由于TMS320C6000的McBSP支持SPI设备,这就使得调试系统的硬件和软件更为方便,从而缩短了系统的开发周期。

同时,由于可以用LVDS进行DSP之间的数据传输,因此,使得高速可靠的进行数据传输得到了保证。

参考文献:

[I]李方慧,王飞,何佩混,等.TMS320C600()系列DSPs原理与应用「M].北京:

电子工业出版社.

[2]DSPtoDSPLinkUsingLVDS(slla105)[Z].

[3]TMS320C6000McBSPInitalization(SPRA488)[Z].

[4]TMS32OC6000DigitalSignalProcessordatasheets[EB/OL].w.

[5]TMS320C6000PeripheralsReferenceGuide(SPRU190)[Z].

[6]UsingtheTMS32OC6000McBSPasaHighSpeedCommunicationPort[Z].

[7]TMS320C6000McBSPInterfacetoSPIROM(SPRA487c)[Z]

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 表格模板 > 调查报告

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1