网站公告列表

  没有公告

加入收藏
设为首页
联系站长
您现在的位置: 61IC中国电子在线 >> DSP >> C3000文章 >> VC30系列 >> 文章正文
  [组图]DSP串行通信         ★★★ 【字体:
DSP串行通信
作者:余翔 陆…    文章来源:电子工程师    点击数:    更新时间:2007-1-1    

华中科技大学电子工程系 (武汉430074)余翔 陆继明 毛承雄 

 
  【 】 以TI公司TMS320C32为例,探讨了如何开发DSP自动控制装置通信程序,包括DSPPC之间的异步串行通信、DSP与模拟接口芯片(AIC)的同步串口通信以及DSP之间的同步串行通信,并列出了相关部分的程序代码及硬件连接图。
   
关键词:同步串行通信,异步串行通信,DSP
  


1
 引 言
  虽然DSP的发展有专用化的趋势,例如德仪(TI)公司的C24X对电机控制的优化,C54XGSM语音编码的优化等,但高主频和硬件乘法器的优势使得DSP在计算密集的实时控制领域的应用也日趋广泛。TMS320C32是目前应用比较广泛的一款浮点DSP,具有4级指令流水线,其并行指令可以在一个周期内完成两次运算/操作,适用于高精度控制领域。DSP的功能强大,但对于某一控制任务可能仍然需要多个DSP协同完成,例如,一个DSP负责控制、测量和人机接口,另一个DSP专门负责计算,这样能够保证DSP的指令流不被打断,可以充分发挥DSP的运算能力。实时控制所需的数据量不大,但是对实时性和可靠性要求很高。C32自身带有一个同步串口,可以以DMA方式与其他DSP进行高速实时通信,完全可以满足控制装置中各DSP之间的数据交换的要求。除了DSP间的通信外,C32的同步串口还可与AIC等外围芯片直接连接,进行功能扩展。
  一般而言,控制装置应该具有与上位机通信的功能以便进行集中监控。上位机程序的主要功能是接收控制装置上传的状态数据以及下传一些控制命令,供值班人员监控设备的运行。作为上位机的PC和控制装置间的距离一般很短,传输的数据量较小,对数据传输的实时性要求也不高,使用RS232异步串行通信方式可以满足需要。上位机程序使用VB开发,VB易学易用,功能强大,非常适合这类应用。
2
 DSP的同步串行通信
  与常见的异步串行通信不同的是,同步串行通信的发送端与接收端保持同步,这样可以获得较高的数据传输速度。
2
1 DSP之间的同步串口通信
  在由多个DSP协作完成控制任务时,通过同步串口直接连接是DSP之间进行数据交换的一种有效方式。这种连接方式无需外围芯片辅助,而且通信速度非常高。
2
11 硬件连接
   
硬件连接见图1


  

DSP采取直接连接,保密性好,连接方便。两个DSP地位对等,寄存器设置完全相同。

212 软件设置

  SPORTword 808040h;串口地址


  

DSP初始化时先复位串口及其定时器,再将FSXDXCLKX引脚功能设为串口发送,FSRDRCLKR引脚功能设为串口接收,串口定时器周期设为F8,通信方式为32位爆发方式,允许接收中断。

213 数据发送



214 数据接收



22 DSPAIC之间的同步串口通信
  TLC320C4XTI出品的模拟接口芯片,具有DAAD功能,与DSP连接时无需其他芯片支持。
2
21 硬件连接
   
硬件连接见图2

 

222 软件
  DSPAIC的通信代码使用与DSP间通信时类似,因此下面仅列出流程图,见图3。需要注意的是,每次进入中断服务程序都必须先初始化TLC320C4x



3 DSP的异步串行通信扩展
  如前所述,控制装置中使用的C32自带的串口主要用于DSP间的高速同步串行通信,不能用于RS232异步串行通信。为了与上位机通信,可使用16C550在外部扩展的异步串行通道。16C5508250兼容,但自带了14字节的FIFO,能够有效减少通信中断次数,提高通信速度。
3
1 硬件连接
  使用16C550扩展异步串行通信的硬件连接如图4所示。
3
2 软件实现
321 上位机部分的串口初始化
  在VB中使用MsComm控件进行串口通信,一个MsComm控件对应一个串口,一般只接收定长数据块。



deBinary

'以二进制形式接收数据

MsComm1RThreshold40'数据块长40个字节

MsComm1PortOpenTrue'打开串口

322 DSP部分的串口初始化

  以下是DSP中对控制异步串口通信的芯片16C550进行初始化:




MsComm1CommPort1'选择COM1作通信口
MsComm1
Settings="9600e81"'通信波特率9600,偶校验,8位数据,1位停止位  MsComm1InputModecomInputMo


 

 上位机中必须以变量接收上传的数据,再将值赋给动态数组,以保留方式重定义数组后,得到的就是字节数组形式的数据了。
  为了节省中断资源,下位机中的数据收发一般采用查询方式。
4
 结束语
  本文以TMS320C32这种浮点DSP为例,介绍了DSP的同步串行通信和异步串行通信。同步串口适用于DSP间或DSP与高速外设之间的高速通信,异步串口适用于DSP与上位机之间的低速通信。随着DSP的推广应用,深入了解DSP的各种通信方式和原理对于开发DSP控制装置有着极为重要的现实意义。

 

参考文献

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

               欢迎点击进入:TI德州中文网   (国内唯一针对TI应用的中文技术网站)    文章录入:admin    责任编辑:admin 
  • 上一篇文章:

  • 下一篇文章:
  • 发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
    最新热点 最新推荐 相关文章
    基于DSP的电子节气门PID控制
    基于DSP的多路音/视频采集处…
    低功耗实时可编程DSP数字助听…
    基于DSP+CPLD的断路器智能控…
    基于DSP+CPLD的交流电机调速…
    基于DSP的分布式微机保护测控…
    基于DSP的语音实时变速系统设…
    以ARM和DSP嵌入式系统为核心…
    基于双DSP的运动目标智能跟踪…
    高性能定点DSP位处理单元(BM…
      网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)
    站长:61IC 湘ICP备05002478号