转换codegen
命令等效MATLAB编码器项目
您可以使用codegen
命令-toproject
选择转换codegen
命令一个等价的MATLAB®编码器™项目文件。然后您可以使用另一个项目文件的生成代码codegen
命令或MATLAB编码器应用程序。
例如,将一个codegen
命令输入参数input_arguments
项目文件myProject.prj
运行:
codegeninput_arguments-toprojectmyProject.prj
输入参数codegen
包括:
的入口点函数的名字
通过使用指定输入类型定义
arg游戏
选项代码生成选项,包括参数配置对象中指定
自定义的源文件的名称包括在生成的代码中
您还可以使用-toproject
选择将一个不完整的codegen
命令一个项目文件。例如,要创建一个项目文件myProjectTemplate.prj
仅包含代码生成参数存储在配置对象cfg
运行:
codegen配置cfg-toprojectmyProjectTemplate.prj
myProjectTemplate.prj
不包含规格的入口点函数或输入类型。所以,你不能从这个项目文件生成代码。您可以打开myProjectTemplate.prj
在MATLAB编码器应用和使用它作为一个模板来创建完整的项目文件,您可以使用它们来生成代码。
请注意
运行codegen
命令-toproject
选项不生成代码。它创建项目文件。
例如:把一个完整的codegen
命令一个项目文件
定义一个MATLAB函数,myadd
,返回两个值的总和。
函数y = myadd (u, v)% # codegeny = u + v;结束
创建一个coder.CodeConfig
对象生成一个静态库。集TargetLang
来“c++”
。
cfg = coder.config (“自由”);cfg。TargetLang =“c++”;
在MATLAB命令行,创建并运行一个codegen
命令。指定myadd
的入口点函数。指定输入myadd
为适应矩阵的类型双
的尺寸是无界的。指定cfg
作为配置对象的代码。包括-toproject
选择转换codegen
命令一个等价的MATLAB编码器项目文件名称myadd_project.prj
。
codegen配置cfgmyaddarg游戏{coder.typeof([正无穷,正无穷]),coder.typeof(1[正无穷,正无穷])}-toprojectmyadd_project.prj
项目文件的myadd_project。撮合下”是成功创建了。开放项目
代码生成器创建项目文件myadd_project.prj
在当前工作目录中。运行codegen
与-toproject
选项不生成代码。它创建项目文件。
生成代码myadd_project.prj
通过使用另一个codegen
命令。
codegenmyadd_project.prj
代码生成器生成一个c++静态库函数myadd
在
文件夹,工作
\ codegen \ lib \ myadd
是你的当前工作目录。工作
例如:将一个不完整的codegen
命令一个模板项目文件
创建一个coder.CodeConfig
对象生成一个静态库。集TargetLang
来“c++”
。
cfg = coder.config (“自由”);cfg。TargetLang =“c++”;
在MATLAB命令行,创建并运行一个codegen
命令。指定cfg
作为配置对象的代码。包括-toproject
选择转换codegen
命令一个等价的MATLAB编码器项目文件名称myProjectTemplate.prj
。
codegen配置cfg-toprojectmyProjectTemplate.prj
项目文件的myProjectTemplate。撮合下”是成功创建了。开放项目
你现在可以打开myProjectTemplate.prj
在MATLAB编码器应用和使用它作为一个模板来创建完整的项目文件,您可以使用它们来生成代码。
限制
当你使用codegen
命令-toproject
选项,这些限制适用:
导出
CodeTemplate
参数的coder.EmbeddedCodeConfig
对象不支持一个项目文件。金宝app假设你的
codegen
命令生成一个墨西哥人函数使用coder.Constant
这是一个定义一个常量输入fi
(定点设计师)对象obj
。某些
fi
对象属性启用其他属性。当你构建一个fi
对象,这些属性设置为默认值,除非你显式地修改它们。在obj
,你设置一个或多个属性,不支持非默认值。看到fi设置对象属性(定点设计师)。你把这个
codegen
通过使用命令一个项目文件-toproject
选择。您构建项目文件,并生成一个墨西哥人的功能。当你通过obj
作为常数输入参数生成的墨西哥人的功能和运行墨西哥人,墨西哥人可能会抛出一个错误。为了解决这个问题,您必须设置的属性
obj
不启用前为其默认值传递到墨西哥人功能。为此,定义一个新的fi
对象obj_new
:一个= mat2str (obj);obj_new = eval ();
通过
obj_new
作为常数输入生成的墨西哥人的功能。