Simulink自定义目标系统文件配置(3)——make_rtw_hook.m文件

前言

自定义目标系统文件由五大文件组成:

  • xx.tlc 系统目标文件
  • xx_callback_handler.m RTW工具箱回调函数
  • xx_make_rtw_hook.m tlc文件调用
  • xx_file_process.tlc 文件处理TLC文件
  • xx_srmain.tlc 控制主函数文件的生成

xx_make_rtw_hook.m钩子函数

在编译的过程中,我们需要编译生成代码的时候执行某些操作,那么我们就可以利用钩子方法将特定于目标的操作添加到编译过程里面。

整个编译的钩子函数的执行流程如下图:
钩子函数执行流程根据这个流程,我们可以分别在entry、before_tlc、…exit执行需要的操作。

函数的使用

创建该文件时一定要跟系统目标文件的xx相同,比如我系统目标文件叫zzz.tlc,那么我们的函数文件名叫zzz_make_rtw_hook。

函数原型:

function STF_make_rtw_hook(hookMethod, modelName, rtwRoot, templateMakefile,buildOpts, buildArgs, buildInfo)

参数:

hookMethod:指定调用STF_make_rtw_hook函数编译过程阶段的字符向量。函数内部用switch调度给相关代码。

可以使用"entry"钩子初始化编译过程,在生成代码之前更改或者验证设置。"entry"钩子的用途之一是重新运行最初在目标选择时间运行的自动配置脚本,从而对执行脚本前后的模型参数进行比较,以实现验证目的。

像我的话,我是在exit阶段将生成的.c和.h文件迁入到我的工程里面。

因为钩子函数的实现比较复杂,然后对于刚入门的xdm来说最好的方式就是在源代码的基础上修改啦,具体可以参考ert.tlc文件的钩子函数:ert_make_rtw_hook

具体路径:安装目录\toolbox\coder\embeddedcoder

おすすめ

転載: blog.csdn.net/dbqwcl/article/details/126958882