如图所示:
如果被调用的函数既没有输入参数,也没有返回值,也是可以的~~
lct_spec = legacy_code('initialize');
lct_spec.Options.language = 'C';
lct_spec.SFunctionName = 'sfun_LegacyCode';
lct_spec.SourceFiles = {'LegacyCode.c'};
lct_spec.HeaderFiles = {'LegacyCode.h'};
lct_spec.OutputFcnSpec = 'void myLegacyCodeTestFcn(void)';
lct_spec.Options.language = 'C';
lct_spec.SFunctionName = 'sfun_LegacyCode';
lct_spec.SourceFiles = {'LegacyCode.c'};
lct_spec.HeaderFiles = {'LegacyCode.h'};
lct_spec.OutputFcnSpec = 'void myLegacyCodeTestFcn(void)';
legacy_code('sfcn_cmex_generate', lct_spec);
%legacy_code('compile', lct_spec);
%legacy_code('compile', lct_spec);
legacy_code('generate_for_sim',lct_spec);
%legacy_code('rtwmakecfg_generate', lct_spec);
%legacy_code('rtwmakecfg_generate', lct_spec);
legacy_code('slblock_generate', lct_spec, 'myModel');
%legacy_code('slblock_generate', lct_spec);
%legacy_code('slblock_generate', lct_spec);
此时的调用过程比较灵活,可以选择下图所示的任意一种: