matlab生成底层驱动封装库时tlc文件调用的回调函数

function MC9S12XEP100_callback_handler(hDlg, hSrc)
这个回调函数的作用就是设置生成代码的时候解算器的设置,还有调用file_process.tlc文件

% 设置并锁定以下参数

slConfigUISetVal(hDlg, hSrc, ‘SolverType’, ‘Fixed-step’);
//这里设置的是求解器的类型,为定步长
slConfigUISetEnabled(hDlg, hSrc, ‘SolverType’, 0);
//这个函数就是为了设置是否锁定simulink配置界面里面的修改的界面,这个第四个参数是0,表示锁定了,不能在simulink的配置界面里面设置了;为1表示没有锁定
在这里插入图片描述

slConfigUISetVal(hDlg, hSrc, ‘Solver’, ‘FixedStepDiscrete’);
slConfigUISetEnabled(hDlg, hSrc, ‘Solver’, 0);

slConfigUISetVal(hDlg, hSrc, ‘FixedStep’, ‘0.001’);
// 求解器的时间是1ms,是根据板子来设置的,如果你想设置调用函数的周期是1ms那么就设置成0.001,如果想设置成10ms那么这里的步长就设置成0.01,一般情况我们用的普通的simulink这个步长仅仅只用在仿真里面起作用,是因为我们直接把函数放在为我们想让他运行的周期里面,这里不行是因为它,这种封装好的底层驱动直接就是调用这里面的周期作为底层的任务调度周期
slConfigUISetEnabled(hDlg, hSrc, ‘FixedStep’, 0);

slConfigUISetVal(hDlg, hSrc, ‘InlineParams’, ‘on’);
slConfigUISetEnabled(hDlg, hSrc, ‘InlineParams’, 0);

slConfigUISetVal(hDlg, hSrc, ‘ProdHWDeviceType’, ‘Freescale->HC(S)12’);
slConfigUISetEnabled(hDlg, hSrc, ‘ProdHWDeviceType’, 0);

slConfigUISetVal(hDlg, hSrc, ‘ERTCustomFileTemplate’, ‘MC9S12XEP100_file_process.tlc’);
//这个是设置文件的模板格式,生产一个调用主函数的文件
slConfigUISetEnabled(hDlg, hSrc, ‘ERTCustomFileTemplate’, 0);
在这里插入图片描述

slConfigUISetVal(hDlg, hSrc, ‘GenerateSampleERTMain’, ‘off’);
slConfigUISetEnabled(hDlg, hSrc, ‘GenerateSampleERTMain’, 0);

slConfigUISetVal(hDlg, hSrc, ‘GenerateMakefile’, ‘off’);
slConfigUISetEnabled(hDlg, hSrc, ‘GenerateMakefile’, 0);

slConfigUISetVal(hDlg, hSrc, ‘ZeroExternalMemoryAtStartup’,‘off’);
slConfigUISetVal(hDlg, hSrc, ‘ZeroInternalMemoryAtStartup’,‘off’);

slConfigUISetVal(hDlg, hSrc, ‘NoFixptDivByZeroProtection’, ‘on’);
slConfigUISetVal(hDlg, hSrc, ‘EfficientFloat2IntCast’, ‘on’);

slConfigUISetVal(hDlg, hSrc, ‘MultiInstanceERTCode’, ‘off’);
slConfigUISetEnabled(hDlg, hSrc, ‘MultiInstanceERTCode’, 0);

slConfigUISetVal(hDlg, hSrc, ‘MatFileLogging’, ‘off’);

slConfigUISetVal(hDlg, hSrc, ‘GRTInterface’, ‘off’);
slConfigUISetEnabled(hDlg, hSrc, ‘GRTInterface’, 0);

slConfigUISetVal(hDlg, hSrc, ‘SupportNonInlinedSFcns’, ‘off’);
%slConfigUISetEnabled(hDlg, hSrc, ‘SupportNonInlinedSFcns’, 0);

slConfigUISetVal(hDlg, hSrc, ‘UtilityFuncGeneration’, ‘Auto’);
%slConfigUISetEnabled(hDlg, hSrc, ‘UtilityFuncGeneration’, 0);

slConfigUISetVal(hDlg, hSrc, ‘IncludeMdlTerminateFcn’, ‘off’);
slConfigUISetEnabled(hDlg, hSrc, ‘IncludeMdlTerminateFcn’, 0);

slConfigUISetVal(hDlg, hSrc, ‘InitFltsAndDblsToZero’,‘off’);

slConfigUISetVal(hDlg, hSrc, ‘PurelyIntegerCode’,‘off’);

slConfigUISetVal(hDlg, hSrc, ‘SupportNonFinite’,‘off’);

slConfigUISetVal(hDlg, hSrc, ‘ERTFirstTimeCompliant’,‘on’);

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值