setFunction
説明
setFunction(
は、指定されたモデル関数のコード マッピング情報を設定します。この関数を使用して、モデル関数の関数カスタマイズ テンプレート、メモリ セクション、または関数名を設定します。シングルタスクの周期関数および Simulink® 関数については、この関数を使用して引数名、型修飾子、引数の順序などの引数仕様を設定できます。 myCodeMappingObj
,function
,Name,Value
)
例
モデル初期化関数の関数名の設定
モデル myConfigModel
に対するモデル コード マッピングで、生成された C 初期化関数の名前を myInitFunction
として設定します。
cm = coder.mapping.api.get('myConfigModel'); setFunction(cm,'Initialize','FunctionName','myInitFunction');
周期的なシングルタスク関数のメモリ セクションの設定
モデル myInitFunction
に対するモデル コード マッピングで、周期的なシングルタスク関数のメモリ セクションを None
として設定します。
cm = coder.mapping.api.get('myInitFunction'); setFunction(cm,'Periodic','MemorySection','None');
サンプル時間 D2 の周期的なマルチタスク関数に対する関数カスタマイズ テンプレートの設定
モデル myInitFunction
に対するモデル コード マッピングで、サンプル時間 D2 の周期的なマルチタスク関数に対して関数カスタマイズ テンプレートを FastFcn
として設定します。
cm = coder.mapping.api.get('myInitFunction'); setFunction(cm,'Periodic:D2','FunctionCustomizationTemplate','FastFcn');
Simulink 関数の引数仕様の設定
モデル myInitFunction
に対するモデル コード マッピングで、Simulink 関数 mySLFunc
の引数仕様を y=(u1, const *u2)
として設定します。
cm = coder.mapping.api.get('myInitFunction'); setFunction(cm,'mySLFunc','Arguments','y=(u1, const *u2)');
入力引数
myCodeMappingObj
— コード マッピング オブジェクト
CodeMapping
オブジェクト
関数 coder.mapping.api.get
の呼び出しによって返されるコード マッピング オブジェクト (モデル コード マッピング)。
例: myCM
function
— モデル関数
Initialize
| Terminate
| Periodic:slIdentifier
| Partition:slIdentifier
| PeriodicUpdate:slIdentifier
| PartitionUpdate:slIdentifier
| Reset:slIdentifier
| ExportedFunction:slIdentifier
| SimulinkFunction:slIdentifier
コード マッピング プロパティ値を返す対象となるモデル関数です。次の表に示されているいずれかの値を指定します。モデル コンフィギュレーション パラメーター [1 つの出力/更新関数] がオフの場合、分割更新関数、周期的なマルチタスク関数、または周期的なシングルタスク関数を指定できます。
モデル関数のタイプ | 値 |
---|---|
エクスポート関数 | ExportedFunction: 。ここで、 はモデル内の関数呼び出し Inport ブロックの名前です。 |
初期化関数 | Initialize |
分割関数 | Partition: 。ここで、 はモデル内のブロックから明示的に作成され、Simulink スケジュール エディターに表示される分割 (P1 など)、または [同時実行] ダイアログのタスク名です。 |
分割更新関数 | PartitionUpdate: 。これはモデル内のブロックから明示的に作成され、Simulink スケジュール エディターに表示される分割 (P1 など)、または [同時実行] ダイアログのタスク名です。 |
周期的なマルチタスク関数 | Periodic: 。ここで、 はマルチタスク モデルの周期レートまたは連続レートに対するサンプル時間の周期に対応する注釈 (D1 など) です。 |
周期的なマルチタスク更新関数 | PeriodicUpdate: 。ここで、 はマルチタスク モデルの周期レートまたは連続レートに対するサンプル時間の周期に対応する注釈 (D1 など) です。 |
周期的なシングルタスク関数 | Periodic |
周期的なシングルタスク更新関数 | PeriodicUpdate |
リセット関数 | Reset: 。ここで はモデル内のリセット関数の名前です。 |
Simulink 関数 | SimulinkFunction: 。ここで はモデル内の Simulink 関数の名前です。 |
終了関数 | Terminate |
モデル分割の詳細については、分割の作成を参照してください。
例: 'Periodic:D1'
名前と値の引数
例: 'FunctionCustomizationTemplate' 'exFastFunction'
コンマ区切りされた Name,Value
の引数ペアを指定します。ここで、Name
は引数名、Value
は対応する値です。Name
は引用符で囲まなければなりません。Name1,Value1,…,NameN,ValueN
のように、複数の名前と値のペアの引数を指定できます。名前と値のペアの引数の順序は重要ではありません。
FunctionCustomizationTemplate
— 関数カスタマイズ テンプレートの名前
文字ベクトル | string スカラー
モデルに関連付けられた Embedded Coder ディクショナリで定義されている関数カスタマイズ テンプレートの名前。文字ベクトルまたは string スカラーとして指定します。関数のあるカテゴリの既定の関数カスタマイズ テンプレートを Default
に設定した場合、そのカテゴリの関数のメモリ セクションを指定することができます。
データ型: char
| string
MemorySection
— メモリ セクションの名前
文字ベクトル | string スカラー
モデルに関連付けられた Embedded Coder ディクショナリで定義されているメモリ セクションの名前。文字ベクトルまたは string スカラーとして指定します。
データ型: char
| string
FunctionName
— 関数の名前
文字ベクトル | string スカラー
生成された C コードのエントリポイント関数の名前。文字ベクトルまたは string スカラーとして指定します。
データ型: char
| string
Arguments
— 引数仕様
文字ベクトル | string スカラー
生成された C コードのエントリポイント関数の引数仕様。文字ベクトルまたは string スカラーとして指定します。仕様は、引数名、型修飾子、および引数の順序を示す関数プロトタイプです (例: y=(u1, const *u2)
)。
データ型: char
| string
TimerService
— タイマー サービス インターフェイスの名前
Dictionary default
(既定値) | 文字ベクトル | string スカラー
Embedded Coder ディクショナリで定義されているタイマー サービス インターフェイスの名前を含む string または文字ベクトル。ディクショナリの既定値を使用するには、'Dictionary default'
を指定します。
このプロパティは、エクスポートされた関数にのみ適用できます。
タイマー サービス インターフェイスを構成するには、サービス インターフェイス構成を定義する Embedded Coder ディクショナリをモデルに接続しなければなりません。詳細については、Configure Timer Service Interfacesを参照してください。
データ型: char
| string
バージョン履歴
R2020b で導入
MATLAB コマンド
次の MATLAB コマンドに対応するリンクがクリックされました。
コマンドを MATLAB コマンド ウィンドウに入力して実行してください。Web ブラウザーは MATLAB コマンドをサポートしていません。
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)