自定义模块的代码生成
使用 S-Function 定义自定义模块的代码生成行为
S-Function 是以 MATLAB®、C、C++ 或 Fortran 语言编写的 Simulink® 模块的计算机语言描述。您可以使用与 Simulink 引擎交互的编程接口开发一个 S-Function 来表示外部代码。将此 S-Function 与代码生成器一起使用来生成代码。首先了解 S-Function 和代码生成。
有关生成的代码和外部代码之间对接的更简单替代方法,请参阅外部代码导入。
模块
Generated S-Function | 将模型或子系统表示为生成的 S-Function 代码 |
主题
编写 S-Function
- S-Function 和代码生成
使用 S-Function 扩展 Simulink 对仿真和代码生成的支持。 - 在 Simulink 环境中编译集成的代码
在 Simulink 环境中添加支持文件和控制模型代码生成与编译。 - 编写非内联 S-Function
通过编写 C 或 C++ MEX S-Function,根据 S-Function API 实现算法。 - 编写包装器 S-Function 和 TLC 文件
创建作为现有代码的包装器的 S-Function。 - 编写完全内联的 S-Function
在 TLC 文件中内联您的算法以用于代码生成。
- Write Fully Inlined S-Functions with mdlRTW Routine
Use themdlRTW
callback method in an inlined S-function. - S-Functions for Multirate Multitasking Environments
Explains how to handle rate-grouped tasks in multirate, port-based sample time S-functions. - 将 S-Function 目标用于模型或子系统
使用从模型或子系统中生成的可以动态加载到其他应用程序中的共享库。
代码继承工具
- 使用代码继承工具在生成的代码中导入对外部代码的调用
在 Simulink 环境中导入对工具函数、查找表、筛选器和设备驱动程序的外部代码的调用,以进行仿真和代码生成。 - Legacy Code Tool Examples
Learn how to use the Legacy Code Tool to generate fully inlined C MEX S-functions for legacy or custom code.