setState
説明
setState(
は、コードとキャリブレーション ファイル (a2l) の生成用に指定されたブロック状態を設定します。この関数を使用して、指定されたブロック状態をストレージ クラスおよびストレージ クラス プロパティの設定にマッピングします。これらの設定は、C コードを生成するためにコード ジェネレーターによって使用されます。または、状態に対するキャリブレーション アクセスを設定します。myCodeMappingObj
,block
,Name,Value
)
例
ブロック状態のストレージ クラスの設定
モデル ConfigurationRapidPrototypingInterface
に対するモデル コード マッピングで、Unit Delay ブロック Delay
の状態 X
のストレージ クラスを ExportedGlobal
に設定します。
openExample("ConfigurationRapidPrototypingInterface"); cm = coder.mapping.api.get("ConfigurationRapidPrototypingInterface"); setState(cm,"ConfigurationRapidPrototypingInterface/Delay",StorageClass="ExportedGlobal");
モデル内のブロック状態のストレージ クラスを Model default
に設定
モデル ConfigurationRapidPrototypingInterface
に対するモデル コード マッピングで、モデル全体のブロック状態のストレージ クラスを Model default
に設定します。
openExample("ConfigurationRapidPrototypingInterface"); cm = coder.mapping.api.get("ConfigurationRapidPrototypingInterface"); blockHandles = find(cm,"States"); setState(cm,blockHandles,StorageClass="Model default");
ブロック状態のコード識別子の設定
モデル ConfigurationRapidPrototypingInterface
に対するモデル コード マッピングで、Unit Delay ブロック Delay
の状態 X
のコード識別子を dstate_X
に設定します。
openExample("ConfigurationRapidPrototypingInterface"); cm = coder.mapping.api.get("ConfigurationRapidPrototypingInterface"); blockHandles = find(cm,"States"); setState(cm,blockHandles,StorageClass="Model default"); setState(cm,blockHandles,Identifier="dstate_X");
Unit Delay ブロックの状態に対するキャリブレーション プロパティの設定
モデル ConfigurationRapidPrototypingInterface
に対するモデル コード マッピングから、Unit Delay ブロック Delay
の状態 X
に対して構成されたキャリブレーション プロパティを設定します。
openExample("ConfigurationRapidPrototypingInterface"); cm = coder.mapping.api.get("ConfigurationRapidPrototypingInterface"); state = find(cm,"State"); setState(cm,state,Export=true); setState(cm,state,CalibrationAccess="Calibration"); setState(cm,state,CompuMethod="CM_state"); setState(cm,state,DisplayIdentifier="state_X"); setState(cm,state,Format="%4.2");
入力引数
myCodeMappingObj
— コード マッピング オブジェクト
CodeMapping
オブジェクト
関数 coder.mapping.api.get
の呼び出しによって返されるコード マッピング オブジェクト (モデル コード マッピング)。
例: myCM
block
— ブロックのパスまたはハンドル
文字ベクトル | string スカラー | ブロック ハンドル | 文字ベクトルの cell 配列 | string スカラーの cell 配列 | ブロック ハンドルの cell 配列
設定する状態を含むブロックのパスまたはハンドル。複数のブロック状態を指定するには、cell 配列を使用します。
例: blockHandle
データ型: char
| string
| block_handle
| cell
名前と値の引数
オプションの引数のペアを Name1=Value1,...,NameN=ValueN
として指定します。ここで、Name
は引数名、Value
は対応する値です。名前と値の引数は他の引数の後に配置しなければなりませんが、ペアの順序は重要ではありません。
R2021a より前では、コンマを使用して各名前と値を区切り、Name
を引用符で囲みます。
例: StorageClass="ExportedGlobal"
StorageClass
— ストレージ クラスの名前
Auto
| Dictionary default
| ExportedGlobal
| ImportedExtern
| ImportedExternPointer
| Model default
指定されたブロック状態用に設定するストレージ クラス。事前定義済みのストレージ クラスまたはモデルに関連付けられた Embedded Coder ディクショナリで定義されているストレージ クラスの名前。C コード生成のためのブロックの状態の構成を参照してください。
Identifier
— 変数名
文字ベクトル | string スカラー
生成されたコード内でブロック状態を表す変数の名前。
データ型: char
| string
Export
— キャリブレーション ファイル (a2l) でのブロック状態の生成を有効または無効にする
true
(既定値) | false
キャリブレーション ファイル (a2l) でブロック状態を生成するには、このプロパティを有効にします。
BitMask
— ブロック状態の値から単一ビットを抽出する
16 進数値
キャリブレーション中にブロック状態から単一ビットを抽出する 16 進数形式のマスク値。このプロパティは整数にのみ適用されます。
データ型: hexadecimal
CalibrationAccess
— ブロック状態のキャリブレーションを有効または無効にする
NoCalibration
(既定値) | Calibration
ブロック状態のキャリブレーションを有効にするには、Calibration
を選択します。ブロック状態の値を表示し、キャリブレーションを無効にするには、NoCalibration
を選択します。
CompuMethod
— 変換メソッドの名前
文字ベクトル | string スカラー
読みやすくするために ECU 内部値を物理値に変換するメソッド名。
データ型: char
| string
DisplayIdentifier
— ブロック状態の表示名
文字ベクトル | string スカラー
キャリブレーション ツールでの測定目的に応じたブロック状態のオプションの表示名。Simulink モデルのブロックの状態名とは異なります。
データ型: char
| string
Format
— ブロック状態の値の表示形式
%[length].[layout]
キャリブレーション ツールの測定に指定される特殊な表示形式。この形式の指定は状態の CompuMethod
で指定される表示形式よりも優先されます。
バージョン履歴
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)