用户登录  |  用户注册
首 页商业源码原创产品编程论坛
当前位置:PB创新网文章中心解决方案电子通信

多路异步串行通信系统在光纤陀螺组合中的设计与实现

减小字体 增大字体 作者:佚名  来源:本站整理  发布时间:2009-01-10 23:56:09
【本文由PB创新网为您整理】
摘要:DSP在与多个外设进行通信时,需要扩展异步串行通信接口。以TMS320C6711为例,采用ST16C554异步串行收发器,介绍了目前最先进的C6000系列DSP与多路RS232、RS485/422设备通信的设计方案,并给出了软硬件实现实例。

    关键词:数字信号处理器 通用异步串行收发器 可编程逻辑器件 光纤陀螺

DSP与计算机通信的外部接口主要可划分为串行通信口和并行通信口。串口通信包括采用RS232、RS485/422、USB、IEEE1394等协议的通信,并口通信包括采用IEEE488、IEEE1248等协议的通信。本文主要介绍DSP多路RS232、RS485/422通信系统的设计与实现,并将此系统应用于光纤陀螺三维角速率测量组合中。

1 系统方案设计

1.1 系统框图

图1为DSP多路异步串口通信系统的框图。计算机接收端为通用的数据采集卡,其与DSP之间采用RS485/422协议,通信速率可达921.6kBPS。光纤陀螺与DSP之间采用RS232协议,通信速率可达115.2kBPS。该系统可以实现DSP与三路RS232设备和一路RS485/RS422设备的通信。
javascript:window.open(this.src);" style="cursor:pointer;"/>
    1.2 TMS320C6711简介

TMS320C6000系列DSP芯片最初主要是为移动通信基站的信号处理而推出的超级处理芯片,200MHz时钟的TMS320C6711完成1024点的FFT算法的时间只要66μs,比传统的DSP芯片要快一个数量级,因此在民用和军用领域都有广阔的应用前景。在军事通信、电子对抗、雷达系统、精确制导武器等高智能化的应用领域,这种芯片的处理能力具有不可替代的优势[2]。TMS320C67XX是TMS320C6000中的浮点系列,TMS320C6711是其中性价比较好的一款芯片。正如其它的TMS320C6000系列芯片一样,该芯片提供了两个多通道同步缓冲串口,没有提供异步串口,因此需要进行异步串口扩展。

1.3 通信方案设计

目前几乎所有的数字信号处理器都提供了一个或多个串行接口,然而,多数DSP芯片提供的是同步串口。在实际的应用中,也需要DSP能够与多个外设进行异步串行通信,如与PC机或光纤陀螺之间进行串行数据传输就要求DSP系统具有多路UART串行接口;当然也可以利用通用的I/O口构成串口,由软件设定波特率(在DSP不繁忙的情况下,往往采用这种方法)。但是当这两种I/O线被占用或对通信的实时性要求较高时,DSP应该通过扩展异步通信芯片来实现高速串行通信。

针对这种情况,本文研究并实现一种简单可靠的异步串口扩展方法,即在DSP的并行总线上扩展UART芯片,用硬件实现异步数据传输。该方法的优点是软件实现简单,代价是在总线上需扩展其它设备。由于本方案要实现DSP与四路外设的异步串口通信,综合考虑硬件连接和软件编程的方便性,采用四通道ST16C554串行异步收发器与多路电子转换芯片MAX3245E来完成。这样,用最简单的硬件连接和软件编程就能实现四路异步的串行通信。

1.4 ST16C554简介

ST16C554是EXAR公司的异步通信芯片,其主要特点如下[3]:

·与ST16C454、ST68C454、ST68C554、TL16C554兼容;

·16字节的发送与接收FIFO;

·接收控制和发送控制相互独立的四通道选择;

·四个可选的接收FIFO中断触发级;

·标准MODEM接口;

·最高可达1.5M的波特率,其波特率发生器可编程;

·数据位长度为5、6、7、8,停止位长度为1、1.5、2;

·具有偶校验、奇校验或无校验模式。

ST16C554不仅能将DSP发送的数据进行并/串转换,还能将从外设或MODEM接收的数据进行串/并转换,能够同时完成四个独立通道的收发。同时,ST16C554还具有四组独立的16字节的接收与发送FIFO,可以通过使能FIFO及设置FIFO中断触发级有效地减少CPU的中断,提高系统效率及可靠性。
javascript:window.open(this.src);" style="cursor:pointer;"/>
2 系统硬件设计

系统的硬件设计框图如图2所示。该硬件系统由电源转换电路、电源监控电路、DSP、SDRAM、FLASH ROM、UART、电平转换芯片及可编程逻辑芯片等组成。电源转换电路完成5V至3.3V/1.8V的DC-DC转换,提供系统设计中所有低压芯片的电源。电源监控电路用来监控系统所有电源电压, 当电源电压低于额定值时,DSP及UART复位,对芯片起保护作用。ST16C554 UART同时完成A、B、C、D四个通道的通信,其中A、B、C三个通道完成三路RS232的异步收发,波特率为115.2kBPS,D通道完成RS485/422的通信,波特率为921.6kBPS,且波特率可以在相应的控制寄存器中分别设置。当外接晶振为14.7456MHz时,可以方便地完成上述波特率的设置。多路UART-RS232电平转换器件MAX3245转换速率可达1MBPS。可编程逻辑芯片为XILINX公司的CPLD(XC9572XL),用以完成系统中所有的逻辑控制。

当DSP对UART进行读写操作时,必然涉及到UART的实际地址在DSP中的转换。本方案中DSP的CE3空间设为8位异步模式,相应的地址范围为0xB0000000~0xBFFFFFFF。而对应于UART的读写操作地址以及四个独立通道的选通地址,就要加上相应的偏移量。相应的读写及片选逻辑由CPLD完成。CPLD相应的内部逻辑如下:

——CE3 COMMUNICATION SPACE ADDR=B0000000—BFFFFFFF

D3: CSF3<=CE3 OR(NOT EA5);--通道C FOG3ADDR=B0000008

CSF2<=CE3 OR(NOT EA4);--通道B FOG2ADDR=B0000004

CSFl<=CE3 OR(NOT EA3);--通道A FOG1ADDR=B0000002

CSF4<=CE30R(NOT EA2);--通道D RS422A

[1] [2]  下一页

Tags:

作者:佚名

文章评论评论内容只代表网友观点,与本站立场无关!

   评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论
PB创新网ourmis.com】Copyright © 2000-2009 . All Rights Reserved .
页面执行时间:28,375.00000 毫秒
Email:ourmis@126.com QQ:2322888 蜀ICP备05006790号