Main Content

Fondamentaux des S-functions MATLAB

Principes d'implémentation des S-functions

Une S-function est une description d'un bloc Simulink® écrite en langage MATLAB®, C, C++ ou Fortran. Les S-functions C, C++ et Fortran sont compilées sous forme de fichiers MEX avec l'utilitaire mex. Consultez la rubrique Build C MEX Function. Tout comme les autres fichiers MEX, les S-functions sont des sous-routines liées de manière dynamique que le moteur d'exécution MATLAB peut charger et exécuter automatiquement. Si vous disposez de Simulink Coder™, vous pouvez générer du code pour les S-functions MATLAB de niveau 2 si elles sont incorporées par inlining. Pour plus d'informations, consultez la rubrique Inlining S-Functions (Simulink Coder).

Il existe différentes façons d'implémenter des S-functions :

  • La S-function — MATLAB de niveau 2 permet d'accéder à une plus grande partie de l'API S-function et supporte la génération de code.

  • La S-function MEX C â€” permet d'implémenter un algorithme sous forme de S-function MEX C ou d'écrire un wrapper de S-function pour appeler du code C, C++ ou du code Fortran existant.

  • La S-function Builder â€” propose une interface utilisateur graphique permettant de générer de nouvelles S-functions ou d'incorporer du code C ou C++ sans interagir avec l'API S-function.

  • Le Legacy Code Tool â€” propose un ensemble de commandes MATLAB permettant de créer une S-function pour incorporer du code C ou C++ existant.

Rubriques