这里介绍的方法是使用脚本命令来输出C代码,具体生成脚本命令如下:
codgen fcn -args {s} -config:lib -report
fcn:指代的是matlab function 的名称
s:指代的是matlab function 的参数
-config:lib:指代生成的是类似于静态库的c代码
-report:可以让matlab输出报告,里面包含了生成的C代码,和基本的使用例程。
在report的界面的工具栏上会有一个package打包的按钮,在执行命令生成完代码后的report界面里点击该按钮可以将整个生成的代码打包出来,包括没有显示一些依赖关系等。
由于Matlab和C语言在处理函数和一些变量上存在一些区别,可能会导致生成代码失败,有如下的几点建议:
1、定义好matlab的函数的输入
2、在matlab函数中使用数组一定要定义好数组的大小
3、根据输出报告检查生成的代码是不是想要的
在更改完能输出C代码后,需要再次运行matlab确定输出结果是满足需求的。
综上已经可以从matlab生成C语言代码,但是也可以同时代码生成mex函数,mex函数可以直接在Matlab和C语言环境直接运行。
用如下语句
code