このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。
Embedded Coder クイック スタートを使用した C++ コードの生成
組み込みコード生成に使用する CppClassWorkflowKeyIgnition
モデルを Embedded Coder® クイック スタート ツールを使用して準備します。クイック スタート ツールでは、目標とアプリケーションに基づいて基本のコード生成設定を選択します。
チュートリアルのこのステップでは、CppClassWorkflowKeyIgnition
モデルのコードを生成し、生成されたファイルを検査します。CppClassWorkflowKeyIgnition
モデルは、車両の点火システムを表しています。
クイック スタート ツールを使用した C++ コードの生成
モデル
CppClassWorkflowKeyIgnition
を開きます。openExample('CppClassWorkflowKeyIgnition.slx')
MATLAB 検索パス上の書き込み可能な場所にモデルのコピーを保存します。
[C++ コード] タブがまだ開いていない場合、[アプリ] タブのアプリ ギャラリーの [コード生成] で [Embedded Coder] をクリックします。
[C++ コード] タブで、[設定] をクリックし、[C/C++ コード生成設定] を選択します。
[コンフィギュレーション パラメーター] ダイアログ ボックスが開きます。
[コンフィギュレーション パラメーター] ダイアログ ボックスで、[コード生成] ペインを開き、[ターゲットの選択] の [言語] パラメーターが
[C++]
に設定されていることを確認します。[OK] をクリックしてダイアログ ボックスを閉じます。[C++ コード] タブで [クイック スタート] をクリックします。
各ステップで [次へ] をクリックしてクイック スタート ツールを進めます。
各ステップで、生成するコードに関して質問されます。このチュートリアルでは、既定値を使用します。ツールでは、モデルに対して選択項目が検証され、コードの生成に必要なパラメーターの変更が示されます。
[コード生成] ステップで、提案された変更を適用し、[次へ] をクリックして
CppClassWorkflowKeyIgnition
からコードを生成します。[終了] をクリックし、[C++ コード] タブに戻ります。
生成された C++ コードの検査
コード ジェネレーターにより、CppClassWorkflowKeyIgnition
モデルがアプリケーション コードからアクセスできる C++ クラスに変換されます。モデルのデータ要素はクラス メンバーとして表示されます。Simulink® 関数はクラス メソッドとして表示されます。
CppClassWorkflowKeyIgnition
モデルには、レートベース モデリングとエクスポート関数モデリングの要素が組み込まれます。レートベース モデリングについては、アプリケーション コードから呼び出すエントリポイントのクラス メソッドとして、初期化メソッド、実行メソッド、終了メソッドに加え、オプションでリセット メソッドが含まれます。外部コードやインターフェイスの要件と統合するには、生成されたクラス インターフェイスをカスタマイズできます。
このチュートリアルでは、クイック スタート ツールを使用して生成されたコードでクラスの要素に既定の設定を使用しています。C++ クラスの既定の名前は、モデルの名前の CppClassWorkflowKeyIgnition
です。
モデルに対して生成された C++ クラスの情報を検査するには次のようにします。
Simulink エディター ウィンドウの右側にある、コード ビュー ペインで、検索バーを見つけます。
検索バーにモデルのクラス名
CppClassWorkflowKeyIgnition
を入力して、生成されたコードからクラス名の各インスタンスを検索し、強調表示された検索の提案をクリックします。検索バーの下の右側にある矢印を使用して、各インスタンスをステップ実行します。これには、
CppClassWorkflowKeyIgnition.h
のクラスの定義とert_main.cpp
のクラスのインスタンス化が含まれます。また、左上隅のファイル メニューから各ファイルの検索結果を確認することもできます。
データと関数のコード マッピングを確認します。
Simulink エディター ウィンドウで、[コード インターフェイス] をクリックし、[コード マッピング] を選択してコード マッピング エディターを開きます。
[データ] タブをクリックして、クラス メンバーの可視性とアクセス メソッドを確認します。
Simulink のデータ要素は、モデリング要素のカテゴリにグループ化されます。
Inports: モデルのルートレベルのデータ入力端子。
Outports: モデルのルートレベルのデータ出力端子。
Model parameter arguments: インスタンス (非静的) クラス データ メンバーとして表示されるワークスペース変数。
Model parameters: 静的クラス データ メンバーとして生成されるモデル クラスのインスタンスで共有されるワークスペース変数。
Signals, states, and internal data: ブロックの出力信号、ブロックの離散状態、データ ストア、ゼロクロッシング信号など、モデル内部のデータ要素。
[関数] タブをクリックして、クラス メソッドを確認します。
生成されるクラス メソッドはエントリポイント メソッドであり、プログラムの制御が切り替わるコード内の場所です。
クラス メソッドの既定の名前は、初期化メソッドは
initialize
、実行 (ステップ) メソッドはstep0
、終了メソッドはterminate
です。検索手順を繰り返して、生成されたコードでクラス メソッド
initialize
、step0
、およびterminate
を見つけます。
次に、カスタマイズしたコード インターフェイスをコード生成用に構成し、生成されたコードを確認します。