Main Content

部署 C++ 生成代码

在本教程的此步骤中,您将了解部署生成的代码的机制。

示例主程序

为了便于部署生成的代码,代码生成器会生成一个示例 main 程序,您可以使用它来开始学习。示例 main 程序位于文件 ert_main.cpp 中。要使用为您的应用程序生成的 C++ 类和模型入口函数,您可以复制在 ert_main.cpp 中定义的不完整函数,然后通过插入自定义调度代码来完成这些函数。

浏览为模型 CppClassWorkflowKeyIgnition 生成的示例 main 程序。

  1. 如果尚未打开,请打开您的 CppClassWorkflowKeyIgnition 模型的副本。

  2. 在 App 库中,点击 Embedded Coder

  3. 重新生成代码。

  4. 在代码视图中,选择文件 ert_main.cpp

  5. 搜索字段中点击并选择函数 rt_OneStep

  6. 浏览不完整的包装函数 rt_OneStep。此函数调用模型执行入口函数 step0。您的应用程序代码可以调用 rt_OneStep 以在每个执行周期中运行模型算法。

  7. 搜索字段中点击并选择函数 main

  8. 浏览不完整的示例 main 函数。此函数概述应用程序代码可以调用 rt_OneStep 和其他模型入口函数的顺序和上下文。

生成的代码文件概述

代码生成器会在您的 MATLAB® 当前文件夹中为生成的代码文件创建两个文件夹:

  • slprj

  • CppClassWorkflowKeyIgnition_ert_rtw

slprj/ert/_sharedutils 文件夹包含在多个模型之间共享的生成文件。此文件夹包含 rtwtypes.h 文件,该文件定义生成的代码默认使用的标准数据类型。

CppClassWorkflowKeyIgnition_ert_rtw 文件夹包含特定于模型的生成代码文件,包括两个主要文件 CppClassWorkflowKeyIgnition.cppCppClassWorkflowKeyIgnition.h

转移生成的代码文件

Embedded Coder® 提供了一个 packNGo 实用工具,用于将模型的静态和生成的代码文件转移到另一个开发环境。该实用工具将这些文件打包在一个压缩文件中,您可以使用标准 zip 实用工具转移该压缩文件并进行解包。您可以从图形界面和编程界面应用该 packNGo 实用工具。

有关详细信息,请参阅转移或共享生成的代码

共享和存档代码生成报告

快速向导工具会对模型进行配置,以生成 HTML 格式的代码生成报告。除模型和代码信息摘要外,该报告还包括:

  • 子系统报告

  • 代码接口报告

  • 可追溯性报告

  • 静态代码度量报告

  • 代码替换报告

  • 代码生成器假设

  • 生成的代码文件

  • (可选)模型 Web 视图

您可以在 Simulink® 环境之外使用此报告,因此它适用于共享或存档。您可以从工具中打开报告,或在 C++ 代码选项卡上,点击打开报告

代码生成报告文件的默认位置位于编译文件夹 model_target_rtw/html/html 子文件夹中。target 是在代码生成窗格中指定的系统目标文件的名称。顶层 HTML 报告文件的默认名称是 index.html

View of the Code Generation Report for CppClassWorkflowKeyIgnition

相关主题