Main Content

最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

C Caller ブロックを使用した C 関数の呼び出し

この例では、C Caller ブロックを使用して手書きの C 関数を呼び出す方法を示します。

この例では、4 つのカスタム C 関数が my_func.h で定義され、my_func.c に実装されています。

ヘッダー ファイルとソース ファイルは [モデル コンフィギュレーション パラメーター]、[シミュレーション ターゲット] で指定されています。次に、C 関数を C Caller ブロックで呼び出すことができます。たとえば、ブロック 'add' では信号と定数がまとめて追加され、ブロック 'timesK' では信号がパラメーター K で乗算されます。C Caller ブロックは C 構造体と列挙型をサポートします。コマンド "Simulink.importExternalCTypes" を使用して、これらの型を Simulink に一致する Simulink.Bus オブジェクトまたは Simulink.IntEnumType としてインポートします。

モデル コンフィギュレーションでのカスタム C コードのセットアップ

'#include "my_func.h"' を [コンフィギュレーション パラメーター]、[シミュレーション ターゲット]、[ヘッダー ファイル] フィールドに追加します。

'include' を [コンフィギュレーション パラメーター]、[シミュレーション ターゲット]、[インクルード ディレクトリ] フィールドに追加します。

'src/my_func.c' を [コンフィギュレーション パラメーター]、[シミュレーション ターゲット]、[ソース ファイル] フィールドに追加します。