プログラム インターフェイスを使用して、Simulink モデルのコード マッピングの関数の既定の設定を取得および構成します。
コマンドが [コード マッピング] エディターとモデル ディクショナリにどのように反映されるかを対話的に確認するには、[関数の既定の設定] タブが選択された状態で [コード マッピング] エディターが開いていて、[関数カスタマイズ テンプレート] セクションが選択された状態でモデル ディクショナリが開いていることを確認してください。[コード マッピング] エディターを開く方法については、コード マッピング エディター – C を開くを参照してください。モデル ディクショナリを開く方法については、Embedded Coder ディクショナリ を開くを参照してください。
モデル CoderMapAPI
を開きます。
このモデルのコード マッピング オブジェクトを取得します。
すべてのモデル関数に対して FunctionName
を空の文字列として指定します。これにより、生成されたコード内の関数の名前が、関数の既定の設定に指定した値によって決定されます。
関数 InitializeTerminate
および Execution
の既定のカスタマイズ テンプレートを取得します。
exeFCNsTemplate =
'FCN_Template__2'
initTermFCNsTemplate =
'FCN_Template__1'
モデルからコードを生成します。
モデルのエントリポイント関数は、モデルの生成されたヘッダー ファイルで宣言されます。ヘッダー ファイル名を格納します。
model_h_file =
"ECoderMapAPI_ert_rtw/ECoderMapAPI.h"
FCN_Template__1
の [関数の命名規則] は Template_1
で始まり、FCN_Template__2 の [関数の命名規則] は Template_2
で始まります。以下に、生成されたヘッダー ファイルのエントリポイント関数宣言セクションを示します。
/* Model entry point functions */
extern void Template_1_FCN_ECoderMapAPI_initialize(void);
extern void Template_2_FCN_ECoderMapAPI_step(void);
extern void Template_1_FCN_ECoderMapAPI_terminate(void);
関数名は、その関数に指定された [関数カスタマイズ テンプレート] の値に従って生成されます。
ヘッダー ファイルを開くために、MATLAB コマンド ウィンドウに次のコマンドを入力します。
2 つの関数カテゴリのテンプレート間で切り替えます。
モデルからコードを再度生成します。
エントリポイント関数名が、更新された [関数カスタマイズ テンプレート] に従って更新されます。
/* Model entry point functions */
extern void Template_2_FCN_ECoderMapAPI_initialize(void);
extern void Template_1_FCN_ECoderMapAPI_step(void);
extern void Template_2_FCN_ECoderMapAPI_terminate(void);