微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > DSP与PC机串行通信接口设计及应用

DSP与PC机串行通信接口设计及应用

时间:05-27 来源:互联网 点击:

数据通信任务。如果需要利用软件来实现dsp与pc的双向复位,则可将图1中的跳线端子jump1的1、2 脚短接,串口的dtr引脚通过上拉电阻接通电源,将jump4的2、3脚短接,max232的第二路收/发单元的发送引脚接通dsp的复位端 hostrest。系统上电之后,dtr呈现高电平状态,若系统运行过程中出现dsp控制器的程序出错、监控对象异常时,可以通过在上位机端执行特定的复位操作,在程序中使pc串口的dtr引脚状态产生由低到高的电平变化,通过max232芯片的第二路通信收/发单元,将输出电平传递给hostrest,最后提供给dsp的复位引脚rs,使得复位引脚rs上同样出现低到高的电平变化,从而使dsp复位,下位机dsp控制程序得以重新运行。同样的,当dsp 端自行检测到通信数据不正常时,可以根据检测结果,自行发送复位信号。通过指令clr xf,置位xf引脚为低电平,经由max232芯片的第二路通信收/发单元,串口的cts引脚接收到低电平信号,pc端程序若查询到cts电平出现由高到低的电平变化时(触发comevcts事件),自动改变程序运行流程,使得pc端的通信程序重新开始,以期恢复通信的正常。当然,也可以通过在dsp端改变xf引脚电平状态,作为给pc发送的特定命令信号,相当于在dsp与pc之间预留了一个相互联系的通信接口。

● pc端上位机通信程序的编制

上位pc串行通信程序在windows 2000平台下采用visual c++ 6.0实现。vc自带的activex控件microsoft communications control,即mscomm控件,提供了对windows通信驱动程序的api函数接口,为应用程序提供了通过串行口收发数据的简便方法。因此直接在应用程序中嵌入mscomm控件,可以方便地进行计算机串口的通信管理。即只需设置mscomm控件的相应属性,调用控件的相应方法和事件,按照通信协议的要求定时发送数据包,上位机即可完成相应功能,实现数据通信任务。

mscomm控件提供下列两种处理通信的方式:事件驱动方式和查询方式。表2列出了mscomm控件的主要属性并给出了这些属性在程序中的设定值。上位pc一般采取事件驱动的方式接收来自于下位机dsp的二进制数据。事件驱动方式的工作原理类似于中断,当有通信事件发生时(如发送数据、接收数据等),就会触发oncomm事件,在该事件的处理函数中调用getcommevent()函数,通过返回值即可确定是哪类事件,再做出相应的数据处理,完成双方之间的通信。

结束语

通过串行口完成dsp与pc之间的通信,具有硬件接口简单、数据传送距离远以及开发周期短、成本低的特点,已经成功应用到研制的机器人作业系统中。本文介绍tms320f240与pc串行通信接口的设计方法具有一定的通用性,对tms320f241/f243/c242以及tms320lf2406 /lf2407等tms320f24x系列芯片具有很好的参考作用。

参考文献

1 张雄伟.dsp芯片的原理与开发应用.电子工业出版社. 1997

2 tms320c2xx users guide. america. texas instruments. 1997

3 李朝青.pc机及单片机数据通信技术.北京航空航天大学出版社. 2001

4 向先波,张琴.tms320f24x的实时多中断任务处理.单片机与嵌入式系统应用. 2003.12

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top