
权利声明:本文系雷声天下个人学习所用,将 Mathworks 公司高级工程师 Loren 的日志翻译
成中文,与大家分享。喜欢 Matlab 的同学可以好好学习一下。不可以被用作商业利用啊,
违者必究!!!
本文的问题:Matlab Coder 的基本使用
Matlab 的 C 语言自动生成(一)
Matlab 2 C 语言简史:
2011 年 4 月 Mathworks 公司将 Matlab 的 M2C 语言生成功能作为一个独立的产品推出,这个
功能是的我们可以从 Matlab 算法生成可读的、端口模块化的、订制的 C 代码。其实 Matlab
的老用户们不觉得这是什么新鲜的功能,下面我们给出这个功能的日程表
2004 在 Simulink 中添加了 Embeded Matlab Function 模块
2007 在 Real-Time Workshop 中添加了 emlc 函数,现在称其为 Simulink Coder 用于生成独立
的 C 代码
2011 发布了 Matlab Coder,第一个独立的产品,用于从 Matlab 代码中生成独立的、可读的、
模块化的 C 代码
代码生成样例:
下面给出一个简单的代码生成样例:
我们手中有这样一个函数文件名称为 simpleProduct.m
若果我们使用 dbtype 命令,将函数的内容按照行号显示出来,就会有如下结果
dbtype simpleProduct.m
1 function c = simpleProduct(a,b) %#codegen
2 c = a*b;
为了将这个函数生成 C 文件,需要提前将文件中的输入、输 出 参数的维数进行指定,这时候
可以以实用 Matlab 提供的 Matlab Coder UI 辅助设计如图表 1 所示:
评论0