codegengydF4y2Ba
生成C / c++代码gydF4y2BaMATLABgydF4y2Ba代码gydF4y2Ba
语法gydF4y2Ba
描述gydF4y2Ba
codegengydF4y2Ba
从MATLAB生成C或c++代码gydF4y2Ba®gydF4y2Ba函数的输入类型gydF4y2Ba选项gydF4y2Ba
函数gydF4y2Ba
args {gydF4y2Bafunc_inputsgydF4y2Ba
}gydF4y2Bafunc_inputsgydF4y2Ba
并构建生成的代码。使用gydF4y2Ba选项gydF4y2Ba
等参数来指定设置代码生成配置对象。配置对象控件构建类型(墨西哥人,自由,dll或exe)和代码生成参数。创建和使用一个配置对象的信息,明白了gydF4y2Ba配置构建设置gydF4y2Ba,gydF4y2Bacoder.configgydF4y2Ba
和配置对象引用页面:gydF4y2Bacoder.CodeConfiggydF4y2Ba
,gydF4y2Bacoder.MexCodeConfiggydF4y2Ba
,gydF4y2Bacoder.EmbeddedCodeConfiggydF4y2Ba
。gydF4y2Ba
如果函数没有输入,省略函数专用gydF4y2Baargs {gydF4y2Ba
选择。gydF4y2Bafunc_inputsgydF4y2Ba
}gydF4y2Ba
codegengydF4y2Ba
生成C / c++代码从MATLAB函数使用定制代码中指定的外部来源gydF4y2Ba选项gydF4y2Ba
文件gydF4y2Ba
函数gydF4y2Ba
args {gydF4y2Bafunc_inputsgydF4y2Ba
}gydF4y2Ba文件gydF4y2Ba
。有关更多信息,请参见gydF4y2Ba调用自定义的C / c++代码生成的代码gydF4y2Ba和gydF4y2Ba配置构建外部C / c++代码gydF4y2Ba。gydF4y2Ba
codegengydF4y2Ba
生成C / c++代码的数量和控制输出参数生成C / c++函数代码的MATLAB函数。文件和选项的参数是可选的。使用gydF4y2Ba选项gydF4y2Ba
文件gydF4y2Ba
函数gydF4y2Ba
args {gydF4y2Bafunc_inputsgydF4y2Ba
}-nargoutgydF4y2Banumber_argsgydF4y2Ba
-nargoutgydF4y2Ba
选项时,并不是所有的MATLAB函数输出是必要的。有关更多信息,请参见gydF4y2Ba指定数量的入口点函数的输入或输出参数来生成gydF4y2Ba。gydF4y2Ba
codegengydF4y2Ba
从多个MATLAB生成C / c++代码的功能。写输入参数分别为每一个函数的函数名之后。您还可以使用gydF4y2Ba选项gydF4y2Ba
文件gydF4y2Ba
function1 args {func1_inputs}…functionN args {funcN_inputs}gydF4y2Ba-nargoutgydF4y2Ba
选项为每个函数。你从被称为生成代码的功能gydF4y2Ba入口点函数gydF4y2Ba。有关更多信息,请参见gydF4y2Ba为多个入口点函数生成代码gydF4y2Ba。gydF4y2Ba
codegengydF4y2Ba
产生多重签名墨西哥人从MATLAB函数。提供多个gydF4y2Ba选项gydF4y2Ba
文件gydF4y2Ba
函数gydF4y2Ba
args {func_inputs1}…args {func_inputsN}gydF4y2Baarg游戏gydF4y2Ba
规格相同的入口点函数的输入参数。使用gydF4y2Ba选项gydF4y2Ba
代码生成等参数来指定设置配置对象和参数。您必须指定构建类型作为墨西哥人的功能。其他构建类型(gydF4y2Ba自由gydF4y2Ba
,gydF4y2BadllgydF4y2Ba
,gydF4y2BaexegydF4y2Ba
不支持)。金宝app有关更多信息,请参见gydF4y2Ba生成一个墨西哥人函数多个签名gydF4y2Ba。gydF4y2Ba
codegengydF4y2Ba
生成的代码从一个gydF4y2BaMATLAB编码器™gydF4y2Ba例如,项目文件gydF4y2Ba项目gydF4y2Ba
test.prjgydF4y2Ba
。gydF4y2Ba
例子gydF4y2Ba
生成一个墨西哥人从一个函数gydF4y2BaMATLABgydF4y2Ba函数gydF4y2Ba
编写一个MATLAB函数gydF4y2BamcaddgydF4y2Ba
返回两个值的总和。gydF4y2Ba
函数gydF4y2Bay = mcadd (u, v)gydF4y2Ba% # codegengydF4y2Ba%的指令% # codegen表示函数gydF4y2Ba%用于代码生成gydF4y2Bay = u + v;gydF4y2Ba结束gydF4y2Ba
在MATLAB命令行运行gydF4y2BacodegengydF4y2Ba
命令。gydF4y2Ba
codegengydF4y2BamcaddgydF4y2Baarg游戏gydF4y2Ba{[0 0 0 0],0}gydF4y2Ba
代码生成器生成一个墨西哥人文件gydF4y2Bamcadd_mexgydF4y2Ba
在当前工作目录中。gydF4y2Ba
如果你不指定一个构建目标,代码生成默认为墨西哥人代码生成。默认情况下,代码生成器生成的墨西哥人名字的函数gydF4y2Ba
mcadd_mexgydF4y2Ba
。gydF4y2Ba让墨西哥人的生成或C / c++代码与特定的类型,您必须指定属性(类、大小和复杂性)的所有输入变量MATLAB入口点函数。在本例中,您使用gydF4y2Ba
arg游戏gydF4y2Ba
提供示例值输入的选项。代码生成器使用这些示例值来确定,第一个输入gydF4y2Ba1gydF4y2Ba
——- - - - - -gydF4y2Ba4gydF4y2Ba
数组的gydF4y2Ba双gydF4y2Ba
是一个真正的标量值和第二输入gydF4y2Ba双gydF4y2Ba
。gydF4y2Ba这些例子的实际值输入不相关的代码生成。任何其他的值相同的属性(类、大小和复杂性)在生成的代码相同的结果。看到gydF4y2Ba指定入口点函数输入的属性gydF4y2Ba。gydF4y2Ba
在命令行中,调用函数生成的墨西哥人gydF4y2Bamcadd_mexgydF4y2Ba
。确保类、大小和复杂性的值传递给gydF4y2Bamcadd_mexgydF4y2Ba
匹配输入属性中指定的gydF4y2BacodegengydF4y2Ba
命令。gydF4y2Ba
mcadd_mex ([1 1 1 1), 5)gydF4y2Ba
ans = 6 6 6 6gydF4y2Ba
运行MATLAB函数gydF4y2BamcaddgydF4y2Ba
与这些输入值产生相同的输出。这个测试用例验证gydF4y2BamcaddgydF4y2Ba
和gydF4y2Bamcadd_mexgydF4y2Ba
有相同的行为。gydF4y2Ba
生成一个墨西哥人从一个函数gydF4y2BaMATLABgydF4y2Ba函数有多个签名gydF4y2Ba
编写一个MATLAB函数gydF4y2BamyAddgydF4y2Ba
返回两个值的总和。gydF4y2Ba
函数gydF4y2Bay = myAdd (u, v)gydF4y2Ba% # codegengydF4y2Bay = u + v;gydF4y2Ba结束gydF4y2Ba
在MATLAB命令行运行gydF4y2BacodegengydF4y2Ba
命令。gydF4y2Ba
codegengydF4y2Ba配置:墨西哥人gydF4y2BamyAdd.mgydF4y2Baarg游戏gydF4y2Ba{1,2}gydF4y2Baarg游戏gydF4y2Baint8 {int8 (2), (3)}gydF4y2Baarg游戏gydF4y2Ba{1:10,1:10}gydF4y2Ba报告gydF4y2Ba
myAdd_mexgydF4y2Ba
中指定多个签名gydF4y2BacodegengydF4y2Ba
命令。有关更多信息,请参见gydF4y2Ba生成一个墨西哥人函数多个签名gydF4y2Ba。gydF4y2Ba
自定义文件夹中生成C静态库文件gydF4y2Ba
写一个MATLAB函数,gydF4y2BamcaddgydF4y2Ba
,返回两个值的总和。gydF4y2Ba
函数gydF4y2Bay = mcadd (u, v)gydF4y2Ba% # codegengydF4y2Bay = u + v;gydF4y2Ba
自定义文件夹中生成C库文件gydF4y2BamcaddlibgydF4y2Ba
使用gydF4y2Ba配置:自由gydF4y2Ba
选择。指定第一个输入类型1-by-4向量的16位无符号整数。第二个输入指定为双精度标量。gydF4y2Ba
codegengydF4y2Ba- dgydF4y2BamcaddlibgydF4y2Ba配置:自由gydF4y2BamcaddgydF4y2Baarg游戏gydF4y2Ba{0 (1,4,“uint16”), 0}gydF4y2Ba
生成一个可执行文件gydF4y2Ba
写一个MATLAB函数,gydF4y2BacoderRandgydF4y2Ba
,产生一个随机的标量值从开区间上的均匀分布标准(0,1)。gydF4y2Ba
函数gydF4y2Bar = coderRand ()gydF4y2Ba% # codegengydF4y2Bar = rand ();gydF4y2Ba
主要写一个C函数,gydF4y2Bac: \ myfile \ cgydF4y2Ba
,电话gydF4y2BacoderRandgydF4y2Ba
。gydF4y2Ba
/ * * *主要。c * / # include < stdio。h > # include < stdlib。h > # include " coderRand。h coderRand_initialize # include。h coderRand_terminate # include。h " int main () {coderRand_initialize ();printf (" coderRand = % g \ n”, coderRand ());coderRand_terminate ();把(“按回车退出:”);获取字符();返回0; }
配置您的代码生成参数包括主要的C函数,然后生成C可执行。gydF4y2Ba
cfg = coder.config (gydF4y2Baexe”gydF4y2Bacfg。CustomSource =gydF4y2Ba“c”gydF4y2Bacfg。CustomInclude =gydF4y2Ba“c: \ myfile”gydF4y2BacodegengydF4y2Ba配置gydF4y2BacfggydF4y2BacoderRandgydF4y2Ba
codegengydF4y2Ba
C生成一个可执行文件,gydF4y2BacoderRand.exegydF4y2Ba
在当前文件夹,支持文件在默认文件夹,金宝appgydF4y2Bacodegen \ exe \ coderRandgydF4y2Ba
。gydF4y2Ba
这个例子显示了如何指定一个主函数作为一个参数在配置对象gydF4y2Bacoder.CodeConfiggydF4y2Ba
。此外,您可以指定文件包含gydF4y2Bamain ()gydF4y2Ba
分别在命令行。您可以使用一个来源,对象,或库文件。gydF4y2Ba
更详细的例子,请参阅gydF4y2Ba在一个应用程序中使用一个示例C主要gydF4y2Ba。gydF4y2Ba
生成的代码使用一个适应输入gydF4y2Ba
写一个MATLAB函数,它接受一个输入。gydF4y2Ba
函数gydF4y2Bay = halfValue(向量)gydF4y2Ba% codegengydF4y2Bay = 0.5 *向量;gydF4y2Ba结束gydF4y2Ba
使用gydF4y2Bacoder.typeofgydF4y2Ba
定义一个行向量的输入类型双打1-by-16的最大大小,适应与第二个维度。gydF4y2Ba
vectorType =编码器。类型of(1, [1 16], [false true]);
生成一个静态库。gydF4y2Ba
codegengydF4y2Ba配置:自由gydF4y2BahalfValuegydF4y2Baarg游戏gydF4y2Ba{vectorType}gydF4y2Ba
生成的代码使用全局数据gydF4y2Ba
写一个MATLAB函数,gydF4y2Bause_globalsgydF4y2Ba
,接受一个输入参数gydF4y2BaugydF4y2Ba
并使用两个全局变量gydF4y2Ba基于“增大化现实”技术gydF4y2Ba
和gydF4y2BaBgydF4y2Ba
。gydF4y2Ba
函数gydF4y2Bay = use_globals (u)gydF4y2Ba% # codegengydF4y2Ba%关掉内联gydF4y2Ba%生成的代码更容易阅读gydF4y2Bacoder.inline (gydF4y2Ba“永远”gydF4y2Ba);gydF4y2Ba全球gydF4y2Ba基于“增大化现实”技术;gydF4y2Ba全球gydF4y2BaB;AR (1) = u (1) + B (1);y = AR * 2;gydF4y2Ba
生成一个墨西哥人的功能。默认情况下,gydF4y2BacodegengydF4y2Ba
生成一个墨西哥人命名函数gydF4y2Bause_globals_mexgydF4y2Ba
在当前文件夹。指定的属性命令行通过使用全局变量gydF4y2Ba全局变量gydF4y2Ba
选择。指定输入gydF4y2BaugydF4y2Ba
是一个真正的、标量、双,用吗gydF4y2Baarg游戏gydF4y2Ba
选择。gydF4y2Ba
codegengydF4y2Ba全局变量gydF4y2Ba{AR, (4),“B”, (1 2 3 4)}gydF4y2Bause_globalsgydF4y2Baarg游戏gydF4y2Ba{0}gydF4y2Ba
或者,您可以初始化全局数据的MATLAB工作区。在MATLAB提示,输入:gydF4y2Ba
全球gydF4y2Ba基于“增大化现实”技术的B;基于“增大化现实”技术= 1 (4);B = (1 2 3);gydF4y2Ba
生成墨西哥人的功能。gydF4y2Ba
codegengydF4y2Bause_globalsgydF4y2Baarg游戏gydF4y2Ba{0}gydF4y2Ba
生成代码,接受一个枚举类型的输入gydF4y2Ba
写一个函数,gydF4y2BadisplayStategydF4y2Ba
,使用枚举数据激活LED显示,基于设备的状态。这灯绿色LED显示屏显示状态。这灯一个红色LED显示屏显示离开状态。gydF4y2Ba
函数gydF4y2Ba领导= displayState(状态)gydF4y2Ba% # codegengydF4y2Ba如果gydF4y2Ba= = sysMode状态。在领导= LEDcolor.GREEN;gydF4y2Ba其他的gydF4y2Ba领导= LEDcolor.RED;gydF4y2Ba结束gydF4y2Ba
定义一个枚举gydF4y2BaLEDColorgydF4y2Ba
。MATLAB的道路,创建一个名为“LEDColor”包含的文件:gydF4y2Ba
classdefgydF4y2BaLEDcolor < int32gydF4y2Ba枚举gydF4y2Ba绿(1),红(2),gydF4y2Ba结束gydF4y2Ba结束gydF4y2Ba
创建一个gydF4y2Bacoder.EnumTypegydF4y2Ba
从现有的MATLAB枚举对象使用一个值。gydF4y2Ba
定义一个枚举gydF4y2BasysModegydF4y2Ba
。MATLAB的道路,创建一个名为“sysMode”包含的文件:gydF4y2Ba
classdefgydF4y2BasysMode < int32gydF4y2Ba枚举gydF4y2Ba(0)(1)gydF4y2Ba结束gydF4y2Ba结束gydF4y2Ba
创建一个gydF4y2Bacoder.EnumTypegydF4y2Ba
从这个枚举对象。gydF4y2Ba
t = coder.typeof (sysMode.OFF);gydF4y2Ba
生成一个墨西哥人功能gydF4y2BadisplayStategydF4y2Ba
。gydF4y2Ba
codegengydF4y2BadisplayStategydF4y2Baarg游戏gydF4y2Ba{t}gydF4y2Ba
生成一个静态库,接受一个定点输入gydF4y2Ba
MATLAB语言编写一个函数,gydF4y2BamcsqrtfigydF4y2Ba
,计算平方根的定点输入。gydF4y2Ba
函数gydF4y2Bay = mcsqrtfi (x)gydF4y2Ba% # codegengydF4y2Bay =√x);gydF4y2Ba
定义gydF4y2BanumerictypegydF4y2Ba
和gydF4y2BafimathgydF4y2Ba
定点输入属性gydF4y2BaxgydF4y2Ba
并生成C库代码gydF4y2BamcsqrtfigydF4y2Ba
使用gydF4y2Ba配置:自由gydF4y2Ba
选择。gydF4y2Ba
T = numerictype (gydF4y2Ba“字”gydF4y2Ba32岁的gydF4y2Ba…gydF4y2Ba“FractionLength”gydF4y2Ba23岁的gydF4y2Ba…gydF4y2Ba“签署”gydF4y2Ba,真正的)F = fimath (gydF4y2Ba“SumMode”gydF4y2Ba,gydF4y2Ba“SpecifyPrecision”gydF4y2Ba,gydF4y2Ba…gydF4y2Ba“SumWordLength”gydF4y2Ba32岁的gydF4y2Ba…gydF4y2Ba“SumFractionLength”gydF4y2Ba23岁的gydF4y2Ba…gydF4y2Ba“ProductMode”gydF4y2Ba,gydF4y2Ba“SpecifyPrecision”gydF4y2Ba,gydF4y2Ba…gydF4y2Ba“ProductWordLength”gydF4y2Ba32岁的gydF4y2Ba…gydF4y2Ba“ProductFractionLength”gydF4y2Ba,23)gydF4y2Ba%定义一个定点与这些变量gydF4y2Ba% numerictype和fimath属性gydF4y2Bamyfiprops = {fi (4.0、T、F)} codegengydF4y2Ba配置:自由gydF4y2BamcsqrtfigydF4y2Baarg游戏gydF4y2BamyfipropsgydF4y2Ba
codegengydF4y2Ba
生成C库和支持文件在默认文件夹,金宝appgydF4y2Bacodegen / lib / mcsqrtfigydF4y2Ba
。gydF4y2Ba
生成一个静态的c++库,接受Half-Precision输入gydF4y2Ba
你可以接受half-precision输入MATLAB代码生成代码。有关更多信息,请参见gydF4y2Ba一半gydF4y2Ba
。gydF4y2Ba
编写一个MATLAB函数gydF4y2Ba喷火gydF4y2Ba
返回两个值的总和。gydF4y2Ba
函数gydF4y2Bay = foo (a, b) y = a + b;gydF4y2Ba结束gydF4y2Ba
在MATLAB命令行运行gydF4y2BacodegengydF4y2Ba
命令。gydF4y2Ba
codegengydF4y2Ba朗:c++gydF4y2Ba配置:自由gydF4y2Ba喷火gydF4y2Baarg游戏gydF4y2Ba{(0),一半(0)}gydF4y2Ba报告gydF4y2Ba
代码生成成功:gydF4y2Ba查看报告gydF4y2Ba
代码生成器生成一个静态的c++库gydF4y2Ba
,在那里gydF4y2Ba工作gydF4y2Ba
\ codegen \ lib \ foogydF4y2Ba
是当前工作目录。gydF4y2Ba工作gydF4y2Ba
查看代码生成报告,点击gydF4y2Ba查看报告gydF4y2Ba
。在报告中查看器,检查生成的c++源代码文件中gydF4y2Bafoo.cppgydF4y2Ba
。gydF4y2Ba
real16_T foo (real16_T real16_T b){返回a + b;}gydF4y2Ba
生成的函数gydF4y2Ba喷火gydF4y2Ba
接受并返回half-precision值。c++ half-precision类型gydF4y2Bareal16_TgydF4y2Ba
生成的头文件中定义吗gydF4y2Bartwhalf.hgydF4y2Ba
。检查的定义gydF4y2Ba+gydF4y2Ba
操作符的类gydF4y2Bareal16_TgydF4y2Ba
。gydF4y2Ba
生成的代码在这个例子将half-precision输入转换为单精度,在单精度执行添加操作,并将结果回half-precision。gydF4y2Ba
转换成浮点数gydF4y2BaMATLABgydF4y2Ba定点C代码的代码gydF4y2Ba
这个例子需要定点设计师™。gydF4y2Ba
写一个MATLAB函数,gydF4y2BamyaddgydF4y2Ba
,返回两个值的总和。gydF4y2Ba
函数gydF4y2Bay = myadd (u, v)gydF4y2Ba% # codegengydF4y2Bay = u + v;gydF4y2Ba结束gydF4y2Ba
写一个MATLAB函数,gydF4y2Bamyadd_testgydF4y2Ba
,测试gydF4y2BamyaddgydF4y2Ba
。gydF4y2Ba
函数gydF4y2Bay = myadd_testgydF4y2Ba% # codegengydF4y2Bay = myadd (10、20);gydF4y2Ba结束gydF4y2Ba
创建一个gydF4y2Bacoder.FixptConfiggydF4y2Ba
对象,gydF4y2BafixptcfggydF4y2Ba
默认设置。gydF4y2Ba
fixptcfg = coder.config (gydF4y2Ba“fixpt”gydF4y2Ba);gydF4y2Ba
设置试验台的名字。gydF4y2Ba
fixptcfg。TestBenchName =gydF4y2Ba“myadd_test”gydF4y2Ba;gydF4y2Ba
创建一个C代码生成配置对象生成一个独立的静态库。gydF4y2Ba
cfg = coder.config (gydF4y2Ba“自由”gydF4y2Ba);gydF4y2Ba
生成的代码使用gydF4y2Ba-float2fixedgydF4y2Ba
选择。gydF4y2Ba
codegengydF4y2Ba-float2fixedgydF4y2BafixptcfggydF4y2Ba配置gydF4y2BacfggydF4y2BamyaddgydF4y2Ba
转换gydF4y2BacodegengydF4y2Ba
命令等效gydF4y2BaMATLABgydF4y2Ba编码器gydF4y2Ba项目gydF4y2Ba
定义一个MATLAB函数,gydF4y2BamyaddgydF4y2Ba
,返回两个值的总和。gydF4y2Ba
函数gydF4y2Bay = myadd (u, v)gydF4y2Ba% # codegengydF4y2Bay = u + v;gydF4y2Ba结束gydF4y2Ba
创建一个gydF4y2Bacoder.CodeConfiggydF4y2Ba
对象生成一个静态库。集gydF4y2BaTargetLanggydF4y2Ba
来gydF4y2Ba“c++”gydF4y2Ba
。gydF4y2Ba
cfg = coder.config (gydF4y2Ba“自由”gydF4y2Ba);cfg。TargetLang =gydF4y2Ba“c++”gydF4y2Ba;gydF4y2Ba
在MATLAB命令行,创建并运行一个gydF4y2BacodegengydF4y2Ba
命令。指定gydF4y2BamyaddgydF4y2Ba
的入口点函数。指定输入gydF4y2BamyaddgydF4y2Ba
适应矩阵的类型gydF4y2Ba双gydF4y2Ba
的尺寸是无界的。指定gydF4y2BacfggydF4y2Ba
作为配置对象的代码。包括gydF4y2Ba-toprojectgydF4y2Ba
选择转换gydF4y2BacodegengydF4y2Ba
命令一个等价的gydF4y2BaMATLAB编码器gydF4y2Ba项目文件名称gydF4y2Bamyadd_project.prjgydF4y2Ba
。gydF4y2Ba
codegengydF4y2Ba配置gydF4y2BacfggydF4y2BamyaddgydF4y2Baarg游戏gydF4y2Ba{coder.typeof([正无穷,正无穷]),coder.typeof(1[正无穷,正无穷])}gydF4y2Ba-toprojectgydF4y2Bamyadd_project.prjgydF4y2Ba
项目文件的myadd_project。撮合下”是成功创建了。gydF4y2Ba开放项目gydF4y2Ba
代码生成器创建项目文件gydF4y2Bamyadd_project.prjgydF4y2Ba
在当前工作目录中。运行gydF4y2BacodegengydF4y2Ba
与gydF4y2Ba-toprojectgydF4y2Ba
选项不生成代码。它只创建项目文件。gydF4y2Ba
生成代码gydF4y2Bamyadd_project.prjgydF4y2Ba
通过使用另一个gydF4y2BacodegengydF4y2Ba
命令。gydF4y2Ba
codegengydF4y2Bamyadd_project.prjgydF4y2Ba
代码生成器生成一个c++静态库函数gydF4y2BamyaddgydF4y2Ba
在gydF4y2Ba
文件夹,gydF4y2Ba工作gydF4y2Ba
\ codegen \ lib \ myaddgydF4y2Ba
是你的当前工作目录。gydF4y2Ba工作gydF4y2Ba
输入参数gydF4y2Ba
选项gydF4y2Ba
- - - - - -gydF4y2Ba代码生成选项gydF4y2Ba
选项值gydF4y2Ba|gydF4y2Ba空间分隔的列表中选择值gydF4y2Ba
的gydF4y2BacodegengydF4y2Ba
命令给单个命令行选项优先级/选项指定一个配置对象。如果命令行选项冲突,最右边的选项。选项和其他语法元素的顺序是可以互换的。gydF4y2Ba
指定为一个或多个值:gydF4y2Ba
- cgydF4y2Ba |
生成C / c++代码,但不要调用gydF4y2Ba |
配置:dllgydF4y2Ba |
生成一个动态C / c++库使用默认配置参数。gydF4y2Ba |
配置:exegydF4y2Ba |
生成一个静态C / c++执行使用默认配置参数。gydF4y2Ba |
配置:自由gydF4y2Ba |
生成一个静态C / c++库使用默认配置参数。gydF4y2Ba |
配置:墨西哥人gydF4y2Ba |
生成一个墨西哥人函数使用默认配置参数。gydF4y2Ba |
配置:单gydF4y2Ba |
生成单精度MATLAB代码使用默认配置参数。gydF4y2Ba 需要定点设计师。gydF4y2Ba |
配置gydF4y2Ba |
指定包含代码生成参数配置对象。gydF4y2Ba
有关更多信息,请参见gydF4y2Ba配置构建设置gydF4y2Ba。gydF4y2Ba |
- dgydF4y2Ba |
将生成的文件存储在指定的绝对或相对路径gydF4y2Ba
如果指定的文件夹gydF4y2Ba 如果你不指定文件夹的位置,gydF4y2Ba codegen /gydF4y2Ba目标gydF4y2Ba/gydF4y2Bafcn_namegydF4y2Ba。gydF4y2Ba
功能不支持以下文件夹中的人物名称:星号(*)金宝app,问号(?),美元(美元)和英镑(#)。gydF4y2Ba 请注意gydF4y2Ba 每一次gydF4y2Ba |
-double2singlegydF4y2Ba |
生成单精度MATLAB代码使用的设置gydF4y2Ba
当使用gydF4y2Ba 。gydF4y2Ba
有关更多信息,请参见gydF4y2Ba生成单精度MATLAB代码gydF4y2Ba。你必须有定点设计师使用这个选项。gydF4y2Ba |
-float2fixedgydF4y2Ba |
当使用gydF4y2Ba
当不使用时gydF4y2Ba 你必须设置gydF4y2Ba fixptcfg。TestBenchName =“myadd_test”;gydF4y2Ba myadd_testgydF4y2Ba 的测试文件是浮点定点配置对象gydF4y2BafixptcfggydF4y2Ba 。gydF4y2Ba有关更多信息,请参见gydF4y2BaMATLAB代码转换为定点C代码gydF4y2Ba。你必须有定点设计师使用这个选项。gydF4y2Ba |
- ggydF4y2Ba |
指定是否使用C编译器的调试选项。如果启用了调试模式,C编译器禁用一些优化。编译速度更快,但执行慢。gydF4y2Ba |
全局变量gydF4y2Ba |
指定名称和MATLAB文件中的全局变量初始值。gydF4y2Ba
{init1 g1, g2, init2,…gn, initn}gydF4y2Ba
全局{‘g’, 5}gydF4y2Ba 另外,使用这种格式:gydF4y2Ba 全局{global_var,{类型,initial_value}}gydF4y2Ba
在生成代码gydF4y2Ba MATLAB编码器gydF4y2Ba和MATLAB分别有自己的全球数据的副本。为了一致性,同步全球数据只要两个交互。如果你不同步的数据,他们的全局变量可以是不同的。gydF4y2Ba 为一个全局变量指定一个恒定值,使用gydF4y2Ba 全局{‘g’, coder.Constant (v)}gydF4y2Ba ggydF4y2Ba 是一个全局变量与常量值吗gydF4y2BavgydF4y2Ba 。gydF4y2Ba有关更多信息,请参见gydF4y2Ba为全局数据生成代码gydF4y2Ba。gydF4y2Ba |
-我gydF4y2Ba |
添加gydF4y2Ba 如果路径包含不7位ASCII字符,如日本的角色,它是可能的gydF4y2Ba 如果你的gydF4y2Ba “C: \项目“C: \自定义文件”gydF4y2Ba |
jitgydF4y2Ba |
使用即时(JIT)编译生成一个墨西哥人的功能。JIT编译可以加快墨西哥人函数生成。此选项仅适用于墨西哥人函数生成。这个选项不兼容与特定的代码生成功能或选项,如自定义代码或使用图书馆OpenMP。gydF4y2Ba |
朗:cgydF4y2Ba |
指定要使用的语言在生成的C代码。gydF4y2Ba 如果你不指定任何目标语言,代码生成器生成C代码。gydF4y2Ba |
朗:c++gydF4y2Ba |
指定要使用的语言和c++在生成的代码中。gydF4y2Ba |
-launchreportgydF4y2Ba |
生成并打开一个代码生成报告。如果不指定这个选项,gydF4y2Ba |
- ogydF4y2Ba |
生成墨西哥人功能,C / c++库,或C / c++基本名称的可执行文件gydF4y2Ba
墨西哥人的功能,gydF4y2Ba 如果你不指定输出文件名称库和可执行文件的基本名称gydF4y2Ba |
- ogydF4y2Ba |
优化生成的代码,基于价值的gydF4y2Ba
指定gydF4y2Ba 如果不指定,gydF4y2Ba |
包gydF4y2Ba |
独立的代码生成及其依赖项打包成一个压缩的ZIP文件的名字gydF4y2Ba 这种包装功能也提供的gydF4y2Ba |
-preservearraydimsgydF4y2Ba |
使用n维索引生成代码。有关更多信息,请参见gydF4y2Ba使用n维索引生成代码gydF4y2Ba。gydF4y2Ba |
配置文件gydF4y2Ba |
使分析生成的墨西哥人函数通过使用MATLAB分析器。有关更多信息,请参见gydF4y2Ba通过使用MATLAB分析器概要墨西哥人功能gydF4y2Ba。gydF4y2Ba |
报告gydF4y2Ba |
产生一个代码生成报告。如果不指定这个选项,gydF4y2Ba 如果你有嵌入式编码,这个选项还允许生产的代码替换报告。gydF4y2Ba |
-reportinfogydF4y2Ba |
出口信息代码生成的变量gydF4y2Ba |
-rowmajorgydF4y2Ba |
生成代码,使用行阵列布局。列为主的布局是默认的。有关更多信息,请参见gydF4y2Ba生成代码,使用行阵列布局gydF4y2Ba。gydF4y2Ba |
沉默gydF4y2Ba |
如果代码生成成功没有警告,抑制所有信息,包括当你生成一个报告。gydF4y2Ba 显示警告和错误消息。gydF4y2Ba |
-singleCgydF4y2Ba |
生成单精度C / c++代码。有关更多信息,请参见gydF4y2Ba在命令行生成单精度C代码gydF4y2Ba。gydF4y2Ba 你必须有定点设计师使用这个选项。gydF4y2Ba |
化:c89 /人私下偷偷收藏盒式gydF4y2Ba |
使用C89/90 (ANSI)语言生成的代码标准。gydF4y2Ba |
c99化:gydF4y2Ba |
使用C99语言生成的代码标准(ISO)。gydF4y2Ba |
化:c++ 03gydF4y2Ba |
使用c++语言03 (ISO)的标准生成的代码。你只能使用这个库生成c++代码。gydF4y2Ba |
化:c++ 11gydF4y2Ba |
使用c++ 11 (ISO)语言生成的代码的标准。你只能使用这个库生成c++代码。gydF4y2Ba |
以及gydF4y2Ba |
运行gydF4y2Ba 支持这个选项只有当生成墨西哥人金宝app函数或当使用一个配置对象gydF4y2Ba |
-toprojectgydF4y2Ba |
转换gydF4y2Ba 您还可以使用gydF4y2Ba codegengydF4y2Ba配置gydF4y2BacfggydF4y2Ba-toprojectgydF4y2BamyProjectTemplate.prjgydF4y2Ba myProjectTemplate.prjgydF4y2Ba 不包含规格的入口点函数或输入类型。所以,你不能从这个项目文件生成代码。您可以打开gydF4y2BamyProjectTemplate.prjgydF4y2Ba 在gydF4y2BaMATLAB编码器gydF4y2Ba应用和使用它作为一个模板来创建完整的项目文件,您可以使用它们来生成代码。gydF4y2Ba运行gydF4y2Ba 看到gydF4y2Bacodegen命令转换为等价的MATLAB编码器项目gydF4y2Ba。gydF4y2Ba |
- vgydF4y2Ba |
启用详细模式显示代码生成状态和目标构建日志消息。gydF4y2Ba |
- - - - - - ?gydF4y2Ba |
显示帮助gydF4y2Ba |
函数gydF4y2Ba
- - - - - -gydF4y2BaMATLAB函数的名称来生成代码gydF4y2Ba
函数名gydF4y2Ba
指定为当前工作中存在的一个函数文件夹或路径。如果MATLAB文件路径包含非7位ASCII字符,如日本汉字gydF4y2BacodegengydF4y2Ba
命令不可能找到该文件。gydF4y2Ba
如果您使用的是LCC编译器,不名一个入口点函数gydF4y2Ba主要gydF4y2Ba
。gydF4y2Ba
例子:gydF4y2Bacodegen myAddFunctiongydF4y2Ba
func_inputsgydF4y2Ba
- - - - - -gydF4y2Ba示例值输入MATLAB函数gydF4y2Ba
表达式gydF4y2Ba|gydF4y2Ba变量gydF4y2Ba|gydF4y2Ba文字值gydF4y2Ba|gydF4y2Bacoder.TypegydF4y2Ba
对象gydF4y2Ba
示例值定义的大小、阶级和前面的MATLAB函数的输入的复杂性。单元阵列中的输入必须的位置对应的位置在MATLAB函数定义输入参数。或者,而不是价值的一个例子,您可以提供一个gydF4y2Bacoder.TypegydF4y2Ba
对象。创建一个gydF4y2Bacoder.TypegydF4y2Ba
对象,使用gydF4y2Bacoder.typeofgydF4y2Ba
。gydF4y2Ba
生成一个函数,输入参数较少比函数定义,省略的参数值的例子,你不希望。gydF4y2Ba
有关更多信息,请参见gydF4y2Ba指定入口点函数输入的属性gydF4y2Ba。gydF4y2Ba
例子:gydF4y2Bacodegen foo args {1}gydF4y2Ba
例子:gydF4y2Bacodegen foo2 args(3、5)的{1,}gydF4y2Ba
例子:gydF4y2Bacodegen foo3 args{1人(3、5)coder.typeof (“hello”)}gydF4y2Ba
文件gydF4y2Ba
- - - - - -gydF4y2Ba自定义的源文件的名称gydF4y2Ba
文件名称gydF4y2Ba|gydF4y2Ba空间分隔的文件名列表gydF4y2Ba
空格分隔的列表定义文件包括在生成的代码。选项的顺序、外部文件和函数规范是可互换的。您可以包括这些类型的文件:gydF4y2Ba
C文件(gydF4y2Ba
。c
)gydF4y2Bac++文件(gydF4y2Ba
. cppgydF4y2Ba
)gydF4y2Ba头文件(gydF4y2Ba
。h
)gydF4y2Ba对象文件(gydF4y2Ba
。o
或gydF4y2Ba.objgydF4y2Ba
)gydF4y2Ba库(gydF4y2Ba
。a
,gydF4y2Ba所以gydF4y2Ba
,gydF4y2Ba. dylibgydF4y2Ba
,或gydF4y2Ba. libgydF4y2Ba
)gydF4y2Ba模板makefile (gydF4y2Ba
.tmfgydF4y2Ba
)gydF4y2Ba请注意gydF4y2Ba
金宝app支持模板的makefile (TMF)将在未来的版本中被删除。相反,使用工具链的方法来构建生成的代码。gydF4y2Ba
如果这些文件路径包含非7位ASCII字符,如日本汉字gydF4y2BacodegengydF4y2Ba
命令可能找不到文件。gydF4y2Ba
例子:gydF4y2Bacodegen foo myLib.libgydF4y2Ba
number_argsgydF4y2Ba
- - - - - -gydF4y2Ba在生成的入口点函数的输出参数数量gydF4y2Ba
整数gydF4y2Ba
的输出参数C / c++入口点函数之前生成的MATLAB函数。代码生成器生成指定数量的输出参数的顺序出现在MATLAB函数定义。gydF4y2Ba
例子:gydF4y2Bacodegen myMLfnWithThreeOuts -nargout 2gydF4y2Ba
项目gydF4y2Ba
- - - - - -gydF4y2Ba项目文件的名字gydF4y2Ba
文件名称gydF4y2Ba
项目文件的创建gydF4y2BaMATLAB编码器gydF4y2Ba应用。代码生成器使用项目文件设置入口点函数,输入类型定义和其他选项。打开应用程序,创建或修改一个项目文件,使用gydF4y2Ba编码器gydF4y2Ba
函数。gydF4y2Ba
例子:gydF4y2Bacodegen foo.prjgydF4y2Ba
限制gydF4y2Ba
你不能为MATLAB脚本生成代码。重写脚本函数来生成代码。gydF4y2Ba
生成代码在当前文件夹是一个私人文件夹或@文件夹不支持,因为这些文件夹在MATLAB具有特殊的意义。金宝app你可以在@文件夹生成代码,调用方法和功能在私人文件夹。gydF4y2Ba
提示gydF4y2Ba
默认情况下,代码生成的文件夹gydF4y2Ba
codegen /gydF4y2Ba
。墨西哥人的功能和可执行文件复制到当前工作目录。gydF4y2Ba目标gydF4y2Ba
/gydF4y2Ba函数gydF4y2Ba
为了简化代码生成过程,你可以写你的代码生成命令在一个单独的脚本。在脚本中定义函数输入类型和代码生成选项。来生成代码,调用脚本。gydF4y2Ba
每一次gydF4y2Ba
codegengydF4y2Ba
产生同样的输出相同的代码或项目,它将文件从先前的构建。如果你想保留前一次构建文件,启动另一个构建之前,将文件复制到不同的位置。gydF4y2Ba使用gydF4y2Ba
编码器gydF4y2Ba
功能打开gydF4y2BaMATLAB编码器gydF4y2Ba应用程序,并创建一个gydF4y2BaMATLAB编码器gydF4y2Ba项目。这个应用程序提供了一个用户界面,便于添加MATLAB文件,定义输入参数,并指定构建参数。gydF4y2Ba你可以叫gydF4y2Ba
codegengydF4y2Ba
通过使用函数的语法。指定gydF4y2BacodegengydF4y2Ba
或字符串标量参数作为特征向量。例如:gydF4y2Bacodegen (gydF4y2Ba“myfunction”gydF4y2Ba,gydF4y2Ba“参数”gydF4y2Ba{2 3},gydF4y2Ba“报告”gydF4y2Ba)gydF4y2Ba
提供一个字符串标量作为输入或指定一个gydF4y2Ba
codegengydF4y2Ba
参数为字符串标量,使用函数的语法。例如:gydF4y2Bacodegen (gydF4y2Ba“myfunction”gydF4y2Ba,gydF4y2Ba“参数”gydF4y2Ba,gydF4y2Ba“就是”gydF4y2Ba,gydF4y2Ba“报告”gydF4y2Ba)codegen (gydF4y2Ba“myfunction”gydF4y2Ba,gydF4y2Ba“参数”gydF4y2Ba,gydF4y2Ba“就是”gydF4y2Ba,gydF4y2Ba“报告”gydF4y2Ba)gydF4y2Ba
提供字符串标量输入命令的形式gydF4y2Ba
codegengydF4y2Ba
可以产生意想不到的结果。看到gydF4y2Ba选择命令语法或函数的语法gydF4y2Ba。gydF4y2Ba执行程序gydF4y2Ba
codegengydF4y2Ba
调用,使用该函数的语法。例如:gydF4y2Ba一个= {gydF4y2Ba“myfunction”gydF4y2Ba,gydF4y2Ba“参数”gydF4y2Ba,{2 3}};codegen ({}):gydF4y2Ba
版本历史gydF4y2Ba
介绍了R2011agydF4y2Ba
另请参阅gydF4y2Ba
编码器gydF4y2Ba
|gydF4y2Bacoder.typeofgydF4y2Ba
|gydF4y2BafimathgydF4y2Ba
(定点设计师)gydF4y2Ba|gydF4y2BanumerictypegydF4y2Ba
(定点设计师)gydF4y2Ba|gydF4y2Ba墨西哥人gydF4y2Ba
|gydF4y2BafigydF4y2Ba
(定点设计师)gydF4y2Ba|gydF4y2Bacoder.EnumTypegydF4y2Ba
|gydF4y2Bacoder.runTestgydF4y2Ba
|gydF4y2BaparforgydF4y2Ba
|gydF4y2Bacoder.FixptConfiggydF4y2Ba
|gydF4y2Bacoder.configgydF4y2Ba
|gydF4y2BapackNGogydF4y2Ba
第一MATLABgydF4y2Ba
海脂肪clic苏联合国collegamento切corrisponde questo第一MATLAB:gydF4y2Ba
Esegui il第一inserendolo所以nella隙缝di第一MATLAB。我浏览器web非supportano金宝app comandi MATLAB。gydF4y2Ba
选择一个网站gydF4y2Ba
选择一个网站翻译内容,看到当地事件和提供。根据你的位置,我们建议您选择:gydF4y2Ba。gydF4y2Ba
你也可以从下面的列表中选择一个网站:gydF4y2Ba
表现最好的网站怎么走吗gydF4y2Ba
选择中国网站(中文或英文)最佳站点的性能。其他MathWorks国家网站不优化的访问你的位置。gydF4y2Ba
美洲gydF4y2Ba
- 美国拉丁gydF4y2Ba(西班牙语)gydF4y2Ba
- 加拿大gydF4y2Ba(英语)gydF4y2Ba
- 美国gydF4y2Ba(英语)gydF4y2Ba
欧洲gydF4y2Ba
- 比利时gydF4y2Ba(英语)gydF4y2Ba
- 丹麦gydF4y2Ba(英语)gydF4y2Ba
- 德国gydF4y2Ba(德语)gydF4y2Ba
- 西班牙gydF4y2Ba(西班牙语)gydF4y2Ba
- 芬兰gydF4y2Ba(英语)gydF4y2Ba
- 法国gydF4y2Ba(法语)gydF4y2Ba
- 爱尔兰gydF4y2Ba(英语)gydF4y2Ba
- 意大利gydF4y2Ba(意大利语)gydF4y2Ba
- 卢森堡gydF4y2Ba(英语)gydF4y2Ba
- 荷兰gydF4y2Ba(英语)gydF4y2Ba
- 挪威gydF4y2Ba(英语)gydF4y2Ba
- 奥地利gydF4y2Ba(德语)gydF4y2Ba
- 葡萄牙gydF4y2Ba(英语)gydF4y2Ba
- 瑞典gydF4y2Ba(英语)gydF4y2Ba
- 瑞士gydF4y2Ba
- 联合王国gydF4y2Ba(英语)gydF4y2Ba
亚太地区gydF4y2Ba
- 澳大利亚gydF4y2Ba(英语)gydF4y2Ba
- 印度gydF4y2Ba(英语)gydF4y2Ba
- 新西兰gydF4y2Ba(英语)gydF4y2Ba
- 中国gydF4y2Ba
- 日本gydF4y2Ba(日本語)gydF4y2Ba
- 한국gydF4y2Ba(한국어)gydF4y2Ba