代码生成器包括各种将遗留代码或自定义代码与生成代码集成的方法。遗留代码是现有手写代码或与代码生成器生成的代码集成的环境代码。自定义代码是遗留代码或您在代码生成器构建过程中包含的其他用户指定的代码行。总的来说,遗留代码和自定义代码被调用外部代码.
通过将现有外部代码导入到代码生成器生成的代码中,将生成的代码导出到现有外部代码库中,或者同时执行这两项操作,可以集成外部代码。例如,可以通过调用外部函数、使用旧代码工具导入代码,或者通过在模型中包含自定义代码块,将外部代码放置在生成代码中的特定位置。导入外部代码时,生成的代码与生成的计划代码交互。
您可以将生成的代码导出为插件函数,以便在外部开发环境中使用。当您导出生成的代码时,您打算在应用程序运行时环境中手动地将该代码与调度机制连接起来。
有关根据应用程序要求选择方法的指导,请参阅选择一个外部代码集成工作流.
什么是外部代码集成。
对于应用程序集成点,描述外部代码的特征,确定代码生成集成需求,并选择工作流。
显示外部代码与遗留代码工具集成场景的示例。
使用不受信任的自定义代码会带来风险。
从生成的代码中调用外部算法代码,这是独立于硬件的和可重用的。
将C/C++代码放入为模型生成的代码中。
从生成的代码调用外部设备驱动程序。
配置代码生成器以替换函数和操作符,以便与外部代码或运行时环境需求保持一致。
生成独立的可执行程序,不需要外部实时执行或操作系统。
使用Linux的目标支持包运行可执行程序金宝app®微软®窗户®,或风河®VxWorks®操作系统。
在Sim金宝appulink环境中添加支持文件和控制模型代码生成和构建。金宝app
将从模型组件生成的C/C++源代码与Simulink外部开发的代码集成金宝app®环境
从模型组件构建共享库,并将库导出到应用程序,以进行系统仿真、软件重用或知识产权保护。需要嵌入式编码器许可证。
当您将生成的代码导出到外部代码时,交换信号、状态和参数数据。
生成与外部代码的数据接口、外观和组织相匹配的代码。
确定在外部构建过程中调用生成代码所需的文件和接口。
生成的代码通过数据接口与调用环境交换信号、状态和参数数据。
控制生成的代码如何与调用环境交换数据。
定制模型的数据接口,以支持生成的代码与您自己的代码的集成,并提高代码的可跟踪性和可读性。
配置Simulink函数和函数调用程序块的入口点函数接口金宝app
为Simulink function和function Caller块定制入口点函数名和步骤函数参数。金宝app
了解生成的C入口点函数、配置选项以及如何与它们交互。
使用c++类
代码接口打包,提供C++类接口到从Simulink模型生成的代码。金宝app
根据接口控制文档中的规范配置模型的代码生成设置。
从接口控制文档导入规范,并根据规范配置模型的代码生成设置。
在外部C/C++代码和Simulink模型或生成的代码之间交换数据金宝app
在Simulink模型中配置信号、状态和参数,以匹配现有C代码的数据接口。金宝app
生成可以与现有外部代码一起编译的代码。代码体交换结构化和枚举数据。
生成从外部代码导入参数数据的代码。
生成代码,导入外部代码用宏设置其维度长度的数组参数(#定义
).
生成通过手写代码定义的结构指针访问参数数据的代码。
配置代码生成器如何应用标识符(符号)、注释、代码样式、代码格式和组织。
通过替换和重命名默认值,符合组织的编码标准金宝appSimulink编码器™数据类型别名,例如真实的
,生成的代码使用它来定义数据。