从零开始simulink自定义代码生成----自定义目标系统配置(4)

从零开始simulink自定义代码生成----自定义目标系统配置(4)

自定义目标系统配置文件之文件处理TLC文件

simulink支持自定义目标系统设置,需要以下几个文件:
1.xx.tlc 系统目标文件 主文件xx名称可自定义
2.xx_callback_handler.m RTW工具箱回调函数
3.xx_make_rtw_hook.m tlc文件调用,该文件后缀为_make_rtw_hook
4.xx_file_process.tlc 文件处理TLC文件
5.xx_srmain.tlc 用来控制主函数文件的生成

今天介绍xx_file_process.tlc文件。这个文件主要是用来控制,自动代码生成过程中,针对不同的情况,在各阶段生成什么样的代码。
该文件在callback_handler.m文件中配置,在Configuration Parameter中的也可以查看。

文件处理TLC文件的使用

回调函数文件中配置如下:
slConfigUISetVal(hDlg, hSrc, ‘ERTCustomFileTemplate’, ‘s12x_file_process.tlc’);%配置用户自定义的模板文件
slConfigUISetEnabled(hDlg, hSrc, ‘ERTCustomFileTemplate’, 0);%设置为不可改变
Configuration Parameter中配置在这里插入图片描述

主要代码

%selectfile NULL_FILE
%%没有选择文件,这个也不用改,应该是格式要求 NULL_FILE表示无输出
%%  Uncomment this TLC line to execute the example
%%   ||   ||
%%   ||   ||
%%   \/   \/

%if !IsModelReferenceTarget()
  %assign ERTCustomFileTest = TLC_TRUE 
  %%assign表示赋值

  %assign CompiledModel.GenerateSampleERTMain = TLC_FALSE
  
  %if EXISTS("ERTCustomFileTest") && ERTCustomFileTest == TLC_TRUE 
   %%这个条件一定满足 EXISTS表示存在
  
    %% Need to set the template compliance flag before you can use the API
    %<LibSetCodeTemplateComplianceLevel(1)>
    %%设置模板遵循的等级  不用改
    %%如果模型是单速率和单任务模式,那么就调用s12x_srmain.tlc文件中s12xSingleTaskingMain 
     %%函数来生成主函数文件 ert_main.c ,否则用else%if LibIsSingleRateModel() || LibIsSingleTasking()
       %include "s12x_srmain.tlc"
       %<s12xSingleTaskingMain()>   
    %else
       %include "s12x_mrmain.tlc"
       %<s12xFcnMultiTaskingMain()>
    %endif
  %endif
%endif 
%<TgtLibS12XCCP()> 
%%调用这个函数 该函数在s12xlib.tlc文件中定义
%<TgtLibS12XCreateS12XMcuHeader()> 
%%调用这个函数 该函数在s12xlib.tlc文件中定义

上面的代码是官方给的s12单片机的tlc文件,一般都是用的单任务模式,通过在此文件中调用xx_srmain.tlc文件来生成主函数代码。关于TLC语言可以参考Simulink仿真及代码生成这本书,里面有讲一部分。

总结

该文件中通过调用函数及tlc文件来生成用户自定义的文件和代码。
TLC语言和内嵌的函数需要看的懂和会用,不然看的很费劲。该文件调用了生成主函数代码的tlc文件。
下一次详细介绍xx_srmain.tlc,及主函数文件生成的tlc文件。

欢迎正在学习自定义代码生成的童鞋一起交流~~WX/QQ:953509472

关联文章:
从零开始simulink自定义代码生成----自定义目标系统配置(1)

从零开始simulink自定义代码生成----自定义目标系统配置(2)

从零开始simulink自定义代码生成----自定义目标系统配置(3)

从零开始simulink自定义代码生成----自定义目标系统配置(5)

  • 6
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

赞哥哥s

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值