主要内容

本页采用了机器翻译。点击此处可查看最新英文版本。

使用配置参考来选择代码生成目标

此示例显示如何使用配置参考来为模型参考层次结构选择代码生成目标,而无需修改单个模型。

打开示例模型

打开示例模型 ConfigSetCodegenTargetTop

open_system('ConfigSetCodegenTargetTop');

要打开模型 ConfigSetCodegenTargetTop 的活动配置集,请在建模选项卡上点击模型配置参数按钮。

由于模型正在使用引用配置,因此“配置引用”对话框将打开并显示引用配置集的只读视图。对话框顶部的信息表明该模型正在使用位于数据字典 ConfigSetRefData.sldd 中的配置集 Reference。在这个示例中,Reference 是另一个配置引用,Configuration_ERT

在模型编辑器中,右键点击 Model 模块、Amplifier,然后选择作为顶层模型打开。这将打开引用的模型 ConfigSetCodegenTargetRef

open_system('ConfigSetCodegenTargetTop/Amplifier');

打开此模型的活动配置集。引用配置的名称和位置与 ConfigSetCodegenTargetTop 中的相同。

打开引用的配置集

如果您需要更改和应用配置集中的参数值,请点击任一配置参考对话框顶部的模型配置参数图标,在配置参数对话框中打开 Configuration_ERT 进行编辑。

为 ERT 目标生成代码

引用的配置集是为 ERT 代码生成自定义的。要生成代码,请按 Ctrl+B

slbuild('ConfigSetCodegenTargetTop');
### Searching for referenced models in model 'ConfigSetCodegenTargetTop'.
### Total of 2 models to build.
### Starting serial code generation build.
### Starting build procedure for: ConfigSetCodegenTargetRef
### Successful completion of code generation for: ConfigSetCodegenTargetRef
### Starting build procedure for: ConfigSetCodegenTargetTop
### Successful completion of code generation for: ConfigSetCodegenTargetTop

Build Summary

Model reference code generation targets:

Model                      Build Reason                                         Status           Build Duration
===============================================================================================================
ConfigSetCodegenTargetRef  Target (ConfigSetCodegenTargetRef.c) did not exist.  Code generated.  0h 0m 10.041s 

Top model targets:

Model                      Build Reason                                         Status           Build Duration
===============================================================================================================
ConfigSetCodegenTargetTop  Information cache folder or artifacts were missing.  Code generated.  0h 0m 10.674s 

2 of 2 models built (0 models already up to date)
Build duration: 0h 0m 22.175s

代码生成完成后将显示代码生成报告。

切换目标并为 AUTOSAR 目标生成代码

对于此模型,还有另一个配置集,Configuration_AUTOSAR,它是为 AUTOSAR 代码生成自定义的。在配置引用对话框的顶部,最右边的下拉列表中,选择 Configuration_AUTOSAR。slexConfigSetREfExample 及其引用的模型 slexConfigSetMdlRef 现在都使用配置集 Configuration_AUTOSAR

由于您编辑了配置参考,数据字典中有未保存的更改。配置存储在模型外部,因此模型没有未保存的更改。

如果您已经下载了 AUTOSAR 包,那么您现在可以为 AUTOSAR 目标生成代码。在模型编辑器窗口中,按 Ctrl+B