主要内容

模型参考的代码生成限制

模型引用的代码生成限制会影响您如何正确地为代码生成设置模型引用层次结构。

除了这些限制之外,用于代码生成的模型引用层次结构必须满足:

存储类别限制

如果你有嵌入式编码器®,对于引用模型中的分组存储类存在一些限制。详细信息请参见存储类别限制

数据记录限制

  • 到工作空间块和范围块在以下情况下被忽略金宝app仿真软件编码器为引用的模型生成代码。结果代码就像这些块不存在一样。在某些情况下,模型与范围block和mat文件日志启用后,代码生成器会在模型的DWork结构中产生一个额外的PWork。

  • 为引用模型生成的代码不能将数据记录到mat文件。如果为引用模型启用数据日志记录,金宝app仿真软件编码器在代码生成之前禁用该选项,并在生成之后重新启用该选项。

  • 如果您记录包含引用模型的模型的状态,输出中状态的顺序是由块排序顺序决定的,并且在模拟输出和生成的代码mat文件日志输出之间可能不匹配。

状态初始化限制

当顶级模型使用模型配置参数时初始状态要指定初始条件,金宝app仿真软件编码器在代码生成期间不初始化引用模型的离散状态。

模型重用的限制

如果用于代码生成的引用模型至少具有以下特征之一,那么模型必须指定模型配置参数每个顶级模型允许的实例总数作为一个.模型的其他实例可以存在于层次结构中。如果不设置为一个,或层次结构中存在模型的多个实例,则会发生错误。其特点是:

  • 该模型引用另一个已设置为单个实例的模型。

  • 该模型包含一个内部信号或状态,该信号或状态具有多实例模型不支持的存储类。金宝app必须将存储类设置为汽车模型的默认内部信号和状态。内部数据的默认存储类必须是多实例存储类。

  • 该模型至少使用这些状态流中的一个®结构:

    • Machine-parented数据

    • Machine-parented事件

    • 导出的状态流图形函数

  • 该模型包含一个s函数,即:

    • 内联,但您还没有设置该选项SS_OPTION_WORKS_WITH_CODE_REUSE

    • 不内联

  • 该模型包含一个函数调用子系统,它:

    • Simu金宝applink引擎强制为一个函数

    • 是用宽信号呼叫的吗

S-Functions局限性

  • 引用的模型不能使用非内联s函数金宝app仿真软件编码器

  • 金宝app仿真软件编码器s函数目标不支持模型引用。金宝app

有关其他信息,请参见参考模型中的s函数

子系统的局限性

如果为原子子系统生成代码作为可重用函数,则将子系统连接到引用模型的输入或输出可能会阻止代码重用,如中所述从子系统生成可重入代码

目标的限制

金宝app仿真软件编码器s函数目标不支持模型引用。金宝app

条件模型的局限性

当模型包含触发器或启用端口时,您不能生成独立端口金宝app仿真软件编码器代码。

相关的话题