借助 MicroC 概要文件,您可以指定应该在编译时初始化元素。
编译时初始化具有下列优点:
- 能够将数据分配到 ROM
- 节省应用程序启动时的 CPU 周期
- 能够将数据分配到特定内存段
借助编译时初始化功能,您可以指定应该对下列任何元素进行编译时初始化:
- 关系
- 流端口
- 来自 MicroC 执行框架 (MXF) 的数据
- 对象特性
在对象特性方面,借助 MicroC 概要文件,您可以对出现在多个类实例中的特性指定不同的编译时初始化值。
通过执行下列操作来指定应该对模型元素进行编译时初始化:
- 设置多个属性的值
- 在包的“特征”窗口的“初始值”选项卡上提供值
指定关系、流端口和框架数据的编译时初始化
C_CG::Configuration::AllCategoriesInitializingMode
属性提供了下列值来设置所要使用的初始化类型:
- CompileTime - 生成的代码对关系、流端口、框架数据以及用户定义的所有特性进行编译时初始化。
- RunTime - 生成的代码对关系、流端口、框架数据以及用户定义的所有特性进行运行时初始化。
- ByCategory - 在生成的代码中,是进行编译时初始化还是运行时初始化取决于您为下列属性选择的值:
- C_CG::Configuration:AttributeInitializingMode
- C_CG::Configuration::DirectFlowPortsInitializingMode
- C_CG::Configuration::FrameworkInitializingMode
- C_CG::Configuration::RelationInitializingMode
:
注: 对于流端口和关系,将只为直接流端口和直接关系生成编译时初始化代码(这意味着,必须将
C_CG::Configuration::DirectFlowPorts 和
C_CG::Configuration::DirectRelations 属性设置为 True)。
指定特性的编译时初始化
要让生成的代码对特性进行编译时初始化,请使用下列其中一种方法:
- 将 C_CG::Configuration::AllCategoriesInitializingMode 属性的值设置为 CompileTime。
- 将 C_CG::Configuration::AllCategoriesInitializingMode
属性的值设置为 ByCategory,并将 C_CG::Configuration:AttributeInitializingMode
属性的值设置为 CompileTime。
指定特性的初始编译时值
借助 MicroC 概要文件,可以为出现在多个对象中的同一特性定义不同的编译时初始化值。
对于包含特性的包,请使用该包的“特征”窗口的初始值选项卡。
此选项卡列示了该包中包含的所有对象的所有特性。对于每个特性,请输入相应的初始化值。
如果对象包含部件,那么“初始值”选项卡将以分层方式显示部件及其特性。
注: 系统在您进行任何更改前显示的特性值是在类级别定义的初始值。