当前位置:首页 > 嵌入式 > 嵌入式硬件
[导读] 在开发DSP数据采集和处理系统的过程中.通常需要采用DSP汇编语言开发一些复杂的算法(如FFT分析、相关分析等),但是,实现这些算法的程序一般都很复杂,尤其需要图形显示时,程序的编写.

前言

在开发DSP数据采集和处理系统的过程中.通常需要采用DSP汇编语言开发一些复杂的算法(如FFT分析、相关分析等),但是,实现这些算法的程序一般都很复杂,尤其需要图形显示时,程序的编写就更复杂了。此外,这些程序还将占用DSP的内存资源。Matlab提供了矩阵处理、数值计算、图形显示等强大功能,同时还带有功能丰富的软件工具箱.若能把Matlab的高效、便捷算法和图形显示工具应用于DSP数据采集和处理系统.即把采集到的数据上传到Matlab平台进行相应的处理和图形显示.这样.不仅减少了DSP的负荷和开销.而且还可以加快系统的研发进度。

1 系统设计

基于Matlab平台的DSP数据采集和处理系统的主要功能是:在Matlab平台上控制底层DSP目标板进行数据的采集和处理,并把采集到的数据上传到Matlab平台上进行相应的数值处理和图形显示然后再把处理后的数据回传给底层DSP目标板,完成后续任务。

1.1硬件结构

DSP数据采集系统主要由PC计算机、TMS320C6202 DSP目标板、AD16模块、MOT模块、数字I/O口和Timer模块组成,如图1所示。

①DSP目标板选用ll(Innovative Integration)公司M6x系列的TMS320C6202开发板。DSP目标板通过计算机主板上的PCI插槽装在计算机内部,DSP程序通过JTAG进行在线调试:DSP目标板提供了许多动态连接库函数.可直接完成对目标板的底层操作,如Target_Open()--打开目标板驱动、iicoffld()--下载程序列DSP中、Target_Close()--关闭目标板驱动等;

②AD16是Ⅱ公司的16通道16位的数据采集模块.双端差动输入,输入范围是-10V至+10V,可同时采集16路外部模拟信号,采样频率为5~195KHz;



图1系统硬件结构

③MOT是一个集成有4个16位DA转换器的信号产生模块,DA输出电压范围是-10V到+10V.可输出4路测试需要的模拟信号.DA转换频率最高可达200KHz:

④数字I/O模块是一个32位数字I/O连接端口。系统可以通过这个数字I/O接口与外界进行数字通信:

⑤Timer模块提供了三个外部定时器,其定时参考时钟可以是DSP目标板上的时钟,也可以是外部提供的时钟。其定时输出信号可满足系统测试的定时要求。

1.2软件设计

图2是DSP数据采集和处理系统的软件设计模块图。其中:Matlab平台主要完成对目标板的操作和控制,处理DSP目标板上传的数据.再回传给DSP目标板,并进行图形显示。



图2系统的软件模块图

visual C++平台作为Matlab与底层DSP目标板的连接中介,主要完成对DSP目标板的具体操作。由于DSP目标板自带了对板卡进行操作的动态连接库函数,因此在Vishal C++平台中就可利用这些函数,完成对目标板的一些控制和操作。例如:用户界面(图4)上的Open按钮就是在Visual C++中利用Target_Open()函数完成目标板驱动的打开。

DSP数据采集和处理程序主要控制AD16采集外界模拟信号,并经过相应处理之后.上传到Matlab平台,然后再从Matlab平台接收处理后的数据.控制MOT模块输出系统所需的模拟信号。完成一个完整的数据采集—数据处理一系统控制的全过程。

2 系统实现的关键技术

Matlab作为高级应用程序语言.并不能直接控制和操作所有的底层板卡。Matlab仿真模块里面带有一些可以直接控制和操作的DSP板卡.但是这些板卡都是一些固定型号的DSP板卡,而对用户自行设计和其它一些型号的DSP板卡并没提供这种功能.因此要实现在Matlab平台上控制一般的DSP板卡进行数据的采集和处理还必须借助中介软件.这个中介软件就是Visual C++。这样便可实现Matlab与DSP底层板卡的无缝连接。具体技术包括:DSP目标板和主机的数据交换,Matlab与Visual C++的接口。

2.1 DSP目标板和丰机的数据交换

TI公司提供DSP与PC主机之间的实时数据传输技术RTDX(Real Time Data Exchange)协议.并在主机中提供了工业标准的目标连接与嵌入应用程序接口OLE API(Application Program Interface).因而能方便地与符合OLE API标准的第三方软件接口。实现与DSP的数据交换。完整的RTDX协议包含4个部分:主机应用程序、主机软件库、目标机软件库和目标机程序。图3是实现计算机和DSP之间数据传输的关系图。



图3 RTDX数据传输关系

微软公司(Microsoft)提供的Visual C++软件开发环境封装了,TI公司的RTDX协议,配合DSP程序可方便、实时地与Pc主机进行数据通信。因此通过visual c++软件就有可能实现在MATLAB平台上完成对DSP数据采集和处理的控制。实现PC主机与DSP目标板的数据交换。

PC主机和DSP目标板通过RTDX协议实现数据交换需要在PC主机程序和DSP程序中定义同名的一条RTDX通道,数据通过该通道在PC主机和DSP目标板之间传输。PC主机程序和目标板上的DSP程序需要严格的配合,PC主机的读操作和DSP目标板的写操作通过定义一个“写RTDX”通道实现:而PC主机的写操作与DSP目标板的读操作通过定义一个“读RTDX”通道实现.必须一一对应,这样才能实现主机与DSP目标板的数据交换。

2.2 Matlab与Visual C++的接口

Matlab作为一种工具软件.通常是不能直接控制DSP目标板。但是Matlab软件为了扩充自身软件的功能,提供了一种与其它开发工具或开发语言进行交互的应用程序接口 (API)。其中.MEX文件就是MATLAB软件提供的一种与Visual c++沟通的接口文件。

在MEX文件中使用c语言编写以mexFunction (int nlhs,mxArray *nlhs[ ],int nrhs,const mxArray * plhs[ ])函数为主函数的动态连接库程序(*.dll).然后只需在Matlab命令提示符下键入此MEX文件名(*.dll)即可完成调用.这与Matlab的内建函数的调用方式完全相同。mexFunction函数中的参数说明如下:

①int nlhs是左边输出参数的个数,即visual c++向Matlab传递的参数个数;

②mxArray *nlhs [ ]是左边参数的数组。它是一个mxArray结构体类型的指针数组.这个数组的元素按顺序(nlhs[0].nlhs[1]?)指向所有的输出参数:

③int nrhs是右边输入参数的个数,即Matlab向VisualC++传递的参数个数;

④const mxArray *plhs [ ]是右边参数的数组,它是一个mxArray结构体类型的指针数组,这个数组的元素按顺序(plhs[0],plhs[1]??)指向所有的输入参数。

在MEX文件中.利用DSP目标板提供的动态连接库函数,编写对目标板进行操作的动态连接库程序.然后在Matlab平台上调用这些动态连接库函数既町实现Matlab和底层DSP目标板的无缝连接。



图4系统测试结果

具体过程是:在Matlab平台上.以传递参数的形式调用动态连接库程序。把需要传送给DSP目标板处理的数据,通过mexFunction函数的右边参数数组先传送给动态连接库程序。然后通过Visual C++程序和DSP程序共同定义的“写RTDX通道”把数据传送给DSP目标板:需要上传到Matlab平台的数据,首先被DSP应用程序写入到“读RTDX通道”中.然后在Visual C++中的动态连接库程序读取该R31DX通道中的数据,再经过MexFunction函数的左边参数数组把数据上传到Matlab平台。这样.就实现了在Matlab平台上控制和操作DSP目标板,并与之进行数据交换。

图4是按照上述方法编写的软件界面和对系统进行测试所得到的结果。

3 结束语

基于Matlab平台的DSP数据采集和处理系统,在Matlab强大的数据分析和绘图功能的基础上,结合了Visual c++易于实现操作和控制的性能。改善了Matlab在控制底层板卡方面的不足。该系统的研究不仅是把Matlab应用于DSP数据采集和处理系统的一次尝试.也为一些半实物仿真系统提供了新的思路。Matlab/Simulink本身就是一种功能强大的系统仿真工具,因此,如果能在该系统的基础上把Matlat/Simulink的仿真功能添加上来。则可实现硬件在环的半实物仿真。相信Matlab丰富的函数库和众多的专业工具箱.必会为今后系统的完善以及扩展提供充分的条件。

本文作者创新点:通过在Matlab平台上直接控制DSP数据采集系统.把Matlab的优良算法应用于系统中。简化了系统的数据处理过程。提高了,系统数据处理速度,缩短了系统设计周期,具有广泛的应用前景。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

9月2日消息,不造车的华为或将催生出更大的独角兽公司,随着阿维塔和赛力斯的入局,华为引望愈发显得引人瞩目。

关键字: 阿维塔 塞力斯 华为

加利福尼亚州圣克拉拉县2024年8月30日 /美通社/ -- 数字化转型技术解决方案公司Trianz今天宣布,该公司与Amazon Web Services (AWS)签订了...

关键字: AWS AN BSP 数字化

伦敦2024年8月29日 /美通社/ -- 英国汽车技术公司SODA.Auto推出其旗舰产品SODA V,这是全球首款涵盖汽车工程师从创意到认证的所有需求的工具,可用于创建软件定义汽车。 SODA V工具的开发耗时1.5...

关键字: 汽车 人工智能 智能驱动 BSP

北京2024年8月28日 /美通社/ -- 越来越多用户希望企业业务能7×24不间断运行,同时企业却面临越来越多业务中断的风险,如企业系统复杂性的增加,频繁的功能更新和发布等。如何确保业务连续性,提升韧性,成...

关键字: 亚马逊 解密 控制平面 BSP

8月30日消息,据媒体报道,腾讯和网易近期正在缩减他们对日本游戏市场的投资。

关键字: 腾讯 编码器 CPU

8月28日消息,今天上午,2024中国国际大数据产业博览会开幕式在贵阳举行,华为董事、质量流程IT总裁陶景文发表了演讲。

关键字: 华为 12nm EDA 半导体

8月28日消息,在2024中国国际大数据产业博览会上,华为常务董事、华为云CEO张平安发表演讲称,数字世界的话语权最终是由生态的繁荣决定的。

关键字: 华为 12nm 手机 卫星通信

要点: 有效应对环境变化,经营业绩稳中有升 落实提质增效举措,毛利润率延续升势 战略布局成效显著,战新业务引领增长 以科技创新为引领,提升企业核心竞争力 坚持高质量发展策略,塑强核心竞争优势...

关键字: 通信 BSP 电信运营商 数字经济

北京2024年8月27日 /美通社/ -- 8月21日,由中央广播电视总台与中国电影电视技术学会联合牵头组建的NVI技术创新联盟在BIRTV2024超高清全产业链发展研讨会上宣布正式成立。 活动现场 NVI技术创新联...

关键字: VI 传输协议 音频 BSP

北京2024年8月27日 /美通社/ -- 在8月23日举办的2024年长三角生态绿色一体化发展示范区联合招商会上,软通动力信息技术(集团)股份有限公司(以下简称"软通动力")与长三角投资(上海)有限...

关键字: BSP 信息技术
关闭
关闭