主要内容

このページの翻訳は最新ではありません。ここをクリックして,英語の最新版を参照してください。

AUTOSARコード置換ライブラリによるコード生成

モデルがAUTOSARコード生成用に構成されている場合は,AUTOSAR 4.0コード置換ライブラリを使用して,AUTOSAR規格により詳細に準拠する関数を生成できます。

AUTOSARコード生成のコード置換ライブラリ

AUTOSAR 4.0コード置換ライブラリにより,コードジェネレーターをカスタマイズしてAUTOSAR規格により詳細に準拠するCコードを生成できます。次の場合にコード置換ライブラリの使用を検討します。

  • ライブラリで提供されているサービスルーチンを使用する。

  • サービスルーチンの置換コードがある。

  • AUTOSARのファイル命名規則(任意の指定内容を処理するためのルーチン)に従う置換コードが1つのヘッダーファイルに含まれている(Mfl.hMfx.hなど)。

  • AUTOSARライブラリをコンパイルして生成されたコードとリンクするビルドハーネス設定がある。AUTOSAR用のコードをビルドする方法の詳細については,コード生成を参照してください。

メモ

MATLAB®および仿金宝app真软件®のルックアップテーブルのインデックスはAUTOSAR地图のインデックスとは異なります。MATLABは行(u1)および列(u2)の線形代数アプローチを採用しています。AUTOSAR(およびASAM)はx軸(u2)およびy軸(u1)の直交座標アプローチを採用しています。ここで,u1およびu2は模金宝app型2次元ルックアップテーブルブロックへの入力引数です。この違いにより,コード置換ソフトウェアはAUTOSAR地图ルーチンの入力引数を転置します。

コード置換とコード置換ライブラリの詳細については,コード置換とは(嵌入式编码)およびコード置換ライブラリ(嵌入式编码)を参照してください。

サポートされているAUTOSARライブラリルーチンの検索

AUTOSARコード置換ライブラリでサポートされているAUTOSARライブラリルーチンを参照するには,コード置換ビューアー(嵌入式编码)を使用します。ビューアーを開くには,コマンドプロンプトで”crviewer(“AUTOSAR 4.0”)“と入力します。

詳細については,コード置換ライブラリの選択(嵌入式编码)を参照してください。

AUTOSAR 4.0コード置換ライブラリを使用するようにコードジェネレーターを構成

モデルにAUTOSARコード置換ライブラリを使用するようにコードジェネレーターを構成するには,[コンフィギュレーションパラメーター]ダイアログボックスを開きます。[コード生成)[インターフェイス][コード置換ライブラリ](AUTOSAR 4.0)を選択します。

コード置換とコード置換ライブラリの詳細については,コード置換とは(嵌入式编码)およびコード置換ライブラリ(嵌入式编码)を参照してください。

コード置換ライブラリのチェック

コード置換では,入力,ブレークポイント,桌子,出力のそれぞれの型の組み合わせについてAUTOSAR仕様と互換性があることが必要です。浮動小数点(IFL)の置換は单一型のみをサポートしますが,固定小数点(IFX)の置換はuint8, uint16, int8, int16および関連付けられている固定小数点型をサポートします。これらのルーチンのブロックを使用する場合,型の組み合わせ要件は変化し,必要に応じて適用されます。

IFX / IFL関数の置換のAUTOSARコード置換ライブラリ例

コード置換ビューアーには,ルックアップテーブルのCコードに生成できるAUTOSAR浮動小数点内挿(IFL)ライブラリルーチンおよび固定小数点内挿(IFX)ライブラリルーチンがリストされます。ルックアップテーブルのCコードをIFLライブラリルーチンまたはIFXライブラリルーチンに置き換えるために,AUTOSAR BlocksetはAUTOSARコード生成用に事前構成されたルックアップテーブルブロックを提供します。モデルに曲线または地图などのブロックを挿入してから,ブロックダイアログボックスを開き,設計に必要な固有の内挿ルーチンを生成するブロックを設定します。詳細については,AUTOSAR測定およびキャリブレーション用のルックアップテーブルの設定を参照してください。

この例では,AUTOSARのルックアップテーブルブロックに対して生成されるコードを,AUTOSARのIFLライブラリルーチンと互換性のある関数で置換する方法を説明します。IFXライブラリルーチンでコードを置換する場合は,ルックアップテーブルブロックのダイアログボックスを編集して,ターゲットのルーチンライブラリを変更できます。

  1. AUTOSARルックアップテーブルブロックPrelookup使用Prelookup曲线地图使用Prelookup曲线,または地图のいずれかを使用して,金宝app仿真软件モデルを作成します。たとえば,使用Prelookup曲线に接続されているPrelookupブロックがあります。

    あるいは,表示されたブロックを含むAUTOSARモデル例mAutosarLutObjs.slxを開くこともできます。このモデルファイルを作業フォルダーにコピーするには,次のMATLABコマンドを入力します。

    拷贝文件(fullfile (matlabroot”,帮助/工具箱/ autosar /例子/ mAutosarLutObjs.slx”),“。”)
  2. 各ルックアップテーブルブロックを開いて,AUTOSAR 4.0コード置換ライブラリ(CRL)からルーチンを生成するように設定します。ブロック設定を変更すると,ブロックダイアログボックスでターゲットのAUTOSARルーチンの名前が更新されます。

    この例にあるブロックの設定の詳細については,ルックアップテーブルオブジェクトとブレークポイントオブジェクトを使用したCOM_AXISルックアップテーブルの設定を参照してください。

  3. 4.0モデルに対してAUTOSAR CRLを使用するようにコードジェネレーターを設定します。[コンフィギュレーションパラメーター]ダイアログボックスで[コード生成)[インターフェイス][コード置換ライブラリ](AUTOSAR 4.0)を選択します。あるいは,コマンドラインまたはプログラムで実行する場合,set_paramを使用してCodeReplacementLibraryパラメーターを“AUTOSAR 4.0”に設定します。

  4. オプションで,コード置換をトリガーしたブロックについてまとめたコード生成レポートを生成するようにモデルを設定できます。[コンフィギュレーションパラメーター]ダイアログボックスの[コード生成)[レポート]ペインで,オプション[コードの置き換えをトリガーするブロックをまとめる]を選択します。あるいは,コマンドラインまたはプログラムで実行する場合,set_paramを使用してGenerateCodeReplacementReportパラメーターを“上”に設定します。

  5. モデルをビルドし,期待どおりにコードが置換されているか,生成されたコードをレビューします。たとえば,ルーチンの接頭辞Iflを求めて,生成されたコードを検索します。

関連する例

詳細