MATLAB Coder(转自恒润科技)

2635阅读 0评论2011-08-16 tiny_xd
分类:C/C++

从MATLAB代码生成C/C++代码

      MATLAB  Coder™ 可以从MATLAB®代码生成独立的、可读性强、可移植的C /C++代码。MATLAB Coder 支持程序控制结构,函数和矩阵操作。它可以生成MEX函数,该函数可以加速MATLAB代码的运行速度并且验证生成代码的属性。MATLAB Coder™结合 Simulink Coder™和 Embedded Coder™可以将含有MATLAB代码的Simulink®模型生成C代码,生成的C代码可以用来:

特点:


MATLAB Coder  工程管理界面(左)和代码生成报告(右),该报告显示了生成的C代码.

强大的功能

 ■   可生成代码的MATLAB 语言子集

      MATLAB Coder可以针对某些MATLAB 语言生成代码,这些语言一般都是设计工程师在开发大型系统的算法时经常用到的。这些支持的子集包括超过400个操作符和MATLAB中的函数。

      MATLAB Coder支持对Aerospace Toolbox,Image Processing Toolbox™和Signal Processing Toolbox™中的部分函数生成代码,而且支持对Communications System Toolbox™,Computer Vision System Toolbox™和DSP System Toolbox™中的系统对象生成代码。

      MATLAB Coder支持开发算法时用到的大部分MATLAB语言,包括:

 ■   MATLAB Coder的应用

      MATLAB Coder的应用通过使用MATLAB Coder,设计工程师可以在MATLAB中开发算法,然后生成可读性强和可移植的C/C++代码,利用该代码可以:


MATLAB Coder应用情况

 ■   从MATLAB中生成代码

      将MATLAB语言转换成C代码在执行过程中需要确定一定的要求,MATLAB Coder可以在MATLAB语言环境中指导你完成这个过程。由于MEX函数需要调用编译好的C代码,所以可以通过生成MEX函数,然后在MATLAB中运行该函数来确保你的算法符合代码生成规则。MATLAB    Coder 生成一个报告,这个报告中会指出在从MATLAB算法到生成代码过程中必须改正的错误。通过不断的修正错误、生成MEX函数这种迭代过程直到MATLAB算法满足代码生成的要求,这时就可以生成C/C++的源代码或者MEX函数了。

C 或者C++源代码可以用来:

MEX文件可以代替MATLAB代码被调用:


通过使用MATLAB Coder从MATLAB生成代码的三步迭代流程

 ■   MATLAB Coder 、Simulink Coder和Embedded Coder

      用于仿真的MATLAB  Function模块和代码生成可以让你将MATLAB算法生成算法集成到Simulink模型中。Simulink Coder可以将这些Simulink包含MATLAB代码的模型生成代码。


Simulink中的雷达跟踪模型,这个模型使用MATLAB Function模块
在这个模块中有用MATLAB编写的卡尔曼滤波算法

      Embedded Coder可以针对支持的嵌入式处理器、面向目标的快速控制原型板,及微处理器的需要和微处理器生成代码,它提供了配置选项和可以更好的控制生成代码的函数、文件和数据的高级优化选项,因此它扩展了MATLAB Coder和Simulink Coder。Embedded Coder 提高了代码效率,并且能很方便的集成已有代码,数据类型和产品中的标定参数。

      使用Embedded Coder生成的代码,可以导出到第三方的开发环境中,可以在嵌入式系统中自动创建可执行文件。生成的代码可以在处理器上执行用来验证性能,可以通过PIL仿真和代码剖析的方法来查看代码在硬件上的运行情况。

上一篇:AVL 树
下一篇:嵌入式Linux中让应用程序自动启动(转载)