一种基于TMS320C55x - DSP的UART通信设计

发布时间:2011-01-04 13:29:12   来源:文档文库   
字号:
隧煎适墓匿垂亟羹羹圈DsP开发与应用文章编号:1008-0570(2008)02—2--0153-02一种基于TMS320C55xDSP的UART通信设计DesignofUARTCommunicationSystemBasedonTMS320C55xDSP(1.安阳工学院;2中国科学院自动化研究所综合信息系统研究中心)成兰1崔亚量1田原2CHENGLANCUlYALIANGTIANYUAN摘要:全双工异步串行通信在TMS320C55xDSP上的通常实现方式是利用DSP的McBSP接口加外接芯片实现.这种设计方法增加了实现UART的硬件成本和电路设计复杂度。提出了一种直接利用DSP的MCBSP接口和DMA通道实现UART的方法,给出了使用c语言和csL的编程方法。与传统实现方法相比。具有实现成本低,硬件电路简单。移植性强等特点,稍加修改可应用于C5000和C6000各系列芯片中。关键词:DSP;全双工异步串行通信;多通道缓冲串口;DMA;过采样中图分类号:TN913文献标识码:AAbstract:UARTThecommonmethodofusingUARTonTMS320C55xDSPiSbasedonintroduceexternalchipstotheMcBSPofDSP.ThedesigntechniqueincreasesthehardwarecostandthedesigncomplexityinimplementingUART.DescribinghowtouseMcBSPandDMAtoimplementUART.AndthecodeprogramminginClanguageandCSLmethodisgiven.neproposedmethodhasthecharacteristicsoflowcost.easycircuitandportability.thusitcanbeusedinchipsofC5000andC6000serieschipsbyonlylittlemodification.KeyWords:DSPUARTMcBSPDMAoversampling1引言MS320C55x数字信号处理器通过多通道缓冲串口(McBSP)提供了与外设的多种同步串行通信方式。然而,由于DSP中串行通信由数据信号、帧同步信号和时钟3种信号配合实现,其中帧同步信号和数据信号由不同的数据线传输。而异步串行通信则在一根传输线上实现数据发送或接收,且不需要专门的时钟信号线。因此DSP与异步设备的接口,如UART通信实现相对复杂.需要对McBSP的相关寄存器进行正确初始化。DSP中实现全双工异步通信的通常做法是使用专用的串行接口芯片,如TLl6C550.这种设计方法编程相对简单,但增加了设计成本和电路复杂度。本文介绍了一种TMS320C55xDSP芯片利用McBSP和DMA直接实现UART的方法.基于该方法实现的DSP异步串行通信模块已成功应用于控制偏振图像采集处理的DSP硬件设备中。2UART在DSP上的实现异步串行通信要求DSP能够模拟和检测到UART的帧信号。由于DSP串13是同步串口,而且DSP时钟为高速时钟,经分频或倍频后无法保证与UART的异步串行时钟精确同步。DSP的帧同步信号无法与UART的帧信号同步,造成串行通信信号中信号位的偏移。最好的解决方法是减小偏移和对接收的数据流进行过采样,本文采用了对UART信号的16倍过采样。2.1McBSP设置DSP的McBSP通过3种信号实现同步通信:数据、帧同步和时钟。异步通信发送和接收各在一条线上进行,具有自己的帧时序。UART的通信时钟由使用的通信波特率(每秒传输的数据位个数)决定,通常为2400,9600,19200等。DSP与UART异步通信成兰:副教授时,由于DSP的内部时钟频率通常都不是UART时钟频率的整数位,因而会造成双方通信时数据位的偏移,为了尽量减小这种偏移.McBSP的串口时钟需要正确的设置时钟频率以达到与UART波特率相匹配。数据包(PKTBITS)由起始位、数据位、奇偶校验位和停止位组成,起始位为1位,停止位通常为1,1.5,2位,数据数通常为8位,如何使用校验,那么数据包还包括1位校验位。以上数据位中,每l位都被DSP以16倍波特率的时钟频率过采样。发送时,为保证UART能收到半个停止位,需要将DSP的McBSP发送端口设置为2相的数据帧。第1相为16位的数据字,第2相为8位的数据字。那么第1相数据长度为(起始位+数据位+校验位)个字,第2相长度为停止位的字长。发送时的总帧长(TxPKTBITS)为这两相的总字长。接收数据包格式与发送相似,其结构如图2所示。DSP的串口发送引脚与外部串口设备的接收引脚相连,不使用FSX引脚和CLKX引脚。接收时,McBSP通过接收帧同步信号引脚(FSR)检测数据的到来,根据帧同步信号的不同,帧同步信号可配置成上升沿触发或下降沿触发,由于UART的起始位为低电平,因此使用下降沿触发。将UART发送数据信号与McBSP的数据接收引脚DR和FSR相连。实现用UART的发送信号触发McBSP的接收帧同步信号。在McBSP接收一帧数据期间,为了防止下降沿再次触发一帧数据接收,McBSP应该设置为接收数据包期间忽略帧同步信号。:::竺:!二唑尘:竺:!,‘’‘—’’’————————‘‘‘———‘。‘。。’一——‘‘‘。。。—’’’’’’—’’’’’’’‘—’’—~——!业!——,.』坐§12E旦L、、!!:!!=12掣Onlym专磊===============:;暑。。。■c8SPR●c●lyeF~●。陬PK?BITS’16SB…1图1UART接收数据包的帧格式f堡堕堡鲞堡塑兰塑!刨@嗽霹邮局订阮82.舛6360元,/-153— 万方数据

本文来源:https://www.2haoxitong.net/k/doc/a6efa84efe4733687e21aaf4.html

《一种基于TMS320C55x - DSP的UART通信设计.doc》
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:
点击下载文档

文档为doc格式