主要内容

覆盖自定义C/ c++代码金宝app模型

当您记录包含受支持的C/ c++ S-Functions的模型的覆盖率时,金宝appMATLAB函数调用外部C/ c++代码的块,C调用者块与C/ c++代码,或状态流®集成自定义C/ c++代码进行模拟的图表,在C/ c++ S-Functions中记录C/ c++代码的覆盖率,MATLAB函数块,或状态流程图。自定义代码的覆盖率结果可以在与模型其余部分相同的报告中查看。为每一个功能块,MATLAB函数块或状态流程图,报告链接到块中C/ c++代码的详细覆盖率报告。

为自定义C/ c++代码启用代码覆盖MATLAB函数块,C调用者块,Stateflow图表

在Simulink中为自定义C/ c++代码启用代码覆盖金宝app®模型:

  1. 模拟目标窗格中的“配置参数”,选择导入自定义代码

  2. 模拟目标窗格中的“配置参数”,选择启用自定义代码分析

金宝app仿真软件覆盖™记录自定义C/ c++代码的代码覆盖率MATLAB函数块,C调用者块和状态流程图。

s -函数的代码覆盖率

使s -函数与模型覆盖率兼容

如果你使用legacy_code函数,s函数生成器块或墨西哥人函数来创建你的s -函数,适当调整你的方法,使s -函数与模型覆盖率兼容。

有关这三种方法的更多信息,请参见实现C/ c++ S-Functions

功能使用legacy_code函数

  1. 初始化MATLAB®结构,其中包含表示遗留代码工具属性的字段。

    Def = legacy_code(“初始化”

  2. 要启用模型覆盖,请打开该选项def.Options.金宝appsupportCoverage

    def.Options.金宝appsupportCoverageAndDesignVerifier = true;
  3. 使用结构def用通常的方法生成s函数。有关示例,请参见s函数的覆盖范围

使用S-Function Builder

  1. 类的实例s函数生成器用户定义函数库浏览器中的库导入到您的模型。

  2. 双击该块打开S-Function Builder对话框。

  3. 建立信息选项卡上,选择启用覆盖率支持金宝app

功能使用墨西哥人函数。如果你使用墨西哥人函数来编译和链接源文件,请使用slcovmex函数来代替。的slcovmex函数编译源代码,并使其与覆盖率兼容。

的函数具有相同的语法和选项墨西哥人函数。此外,您可以提供一些与模型覆盖相关的选项。有关更多信息,请参见slcovmex

为S-Function生成覆盖率报告

  1. 在Simuli金宝appnk编辑器中,选择模型设置建模选项卡。

  2. 报道窗格中的“配置参数”,选择C / c++ S-functions

当您运行模拟时,覆盖率报告包含模型中C/ c++ S-Function块的覆盖率指标。为每一个功能块,报告链接到块中C/ c++代码的详细覆盖率报告。

相关的例子

更多关于