主要内容

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

在软件架构中调度组件初始化

您可以在软件架构模型中使用初始化函数来调度和自定义每个引用组件的组件初始化,以进行仿真和代码生成。初始化函数是函数的特殊化,在模型初始化期间执行。当您对软件架构进行仿真时,所有组件都会在仿真的模型初始化阶段被初始化。默认情况下,软件架构中的每个引用组件都有一个初始化函数。您可以在函数编辑器初始化选项卡上可视化并调度组件初始化的顺序。

要实现组件初始化函数的行为,请在引用的模型中添加一个 Initialize Function 模块。从 Initialize Function 模块生成的代码是 model_initialize 函数的一部分,该函数在模型执行开始时调用一次。有关定义初始化例程的更多信息,请参阅Common Uses of the Initialize Function Block

本主题描述了如何:

  • 使用函数编辑器计划组件初始化。

  • 使用类图可视化初始化函数。

  • 生成初始化函数的组件代码。

有关编写、使用构造型添加属性以及导入和导出函数的详细信息,请参阅软件架构的函数编写与扩展

使用函数编辑器调度组件初始化

要打开函数编辑器,在建模选项卡上的工具栏中,点击函数编辑器

函数编辑器初始化选项卡中,您可以查看初始化函数并调度每个引用组件的初始化顺序。

  • 当您打开函数编辑器时,模型会自动更新,表中会显示从模型填充的所有函数。

  • 如果软件架构模型发生变化,更新模型按钮将变为黄色,提示您需要更新函数表。

  • 要更改初始化函数的顺序,请使用向上和向下箭头或拖动函数进行排序。

Functions Editor with the Initialize tab open.

使用类图视图可视化初始化函数

类图是软件架构模型结构的图形表示。每个架构组件都以类框表示,并列出了方法和属性。根架构也表示为一个类框,其中列出了所有方法、构造型和属性。对于根架构和每个引用组件,在相应类框的方法部分中列出了一个初始化函数。

要打开架构视图库,请导航至建模 > 架构视图。要打开类图视图,请点击 > 类图

Class diagram view with initialize functions listed in class boxes of reference components.

有关详细信息,请参阅软件架构的类图视图

生成初始化函数的代码

您可以从软件架构生成初始化函数的代码。要生成代码,从 App 选项卡中选择 Embedded Coder。然后选择编译

每个组件在 model_initialize 函数中都有一个初始化函数调用。函数调用的顺序遵循函数编辑器中指定的顺序。

Model initialize function from the generated code of the throttle example.

通过编程配置初始化函数

要通过编程配置和自定义初始化函数:

  • 使用 decreaseOrderincreaseOrder 函数分别降低或提高组件初始化的顺序。要按顺序查看初始化函数,请使用此命令。

    initializeFunctions = {model.Architecture.Initialization.Name}'

  • 使用 systemcomposer.exportModel 函数输出一个 initializeFunctions 字段,该字段包含一个表,其中包含函数的顺序和组件等信息。

  • 使用 systemcomposer.importModel 函数导入包含函数的模型,其中 importStruct 参量可以包含包含函数信息的 initializeFunctions 字段。

  • 使用 slbuild 函数生成软件架构组件的代码。

另请参阅

工具

对象

函数

主题