第21章 コンフィギュレータcfg600px
本章では,コンフィギュレータcfg600pxについて解説しています。
RI600PXが提供している機能を利用したシステム(ロード・モジュール)を構築する場合,RI600PXに提供するデータを保持した情報ファイルが必要となります。
基本的に情報ファイルは,規定された形式のデータ羅列であるため,各種エディタを用いて記述することは可能です。しかし,情報ファイルは,記述性/可読性の面で劣ったものとなっているため,記述に際してはかなりの時間と労力を必要とします。
そこで,RI600PXでは,記述性/可読性の面で優れたシステム・コンフィギュレーション・ファイルから情報ファイルへと変換するユーティリティ・ツール(コンフィギュレータcfg600px)を提供しています。
cfg600pxは,システム・コンフィギュレーション・ファイルを入力ファイルとして読み込んだあと,情報ファイルを出力します。
以下に,cfg600pxが出力する情報ファイルについて示します。
- システム情報ヘッダ・ファイル(kernel_id.h)
システム・コンフィギュレーション・ファイルに記述されたオブジェクト名(タスク名,セマフォ名など)とIDの対応付けを保持した情報ファイルです。アプリケーションからインクルードします。
- サービス・コール定義ファイル(kernel_sysint.h)
サービス・コールをINT命令を用いて呼び出すための宣言が記述されたファイルです。kernel.hからインクルードされます。
- ROM定義ファイル(kernel_rom.h),RAM定義ファイル(kernel_ram.h)
RI600PXの管理データが記述されたファイルです。これらのファイルは,ブート処理ファイルでのみ,インクルードする必要があります。詳細は,「
17.2 ブート処理ファイル(ユーザ・オウン・コーディング部)」を参照してください。
- システム定義ファイル(ri600.inc)
システム定義ファイルは,mkritblpxが出力するテーブル・ファイル(ritable.src)からインクルードされます。
- ベクタ・テーブル・テンプレート・ファイル(vector.tpl)
ベクタ・テーブル・テンプレート・ファイルは,mkritblpxへの入力ファイルとなります。
事前に,環境変数“LIB600”を,“<ri_root>
\lib600”に設定する必要があります。
以下に,cfg600pxをコマンド・ラインから起動する際の起動方法を示します。
ただし,入力例中の“C>”はコマンド・プロンプトを,“△”はスペース・キーの入力を,“[Enter]”はエンター・キーの入力を表しています。
また,“[ ]”で囲まれたオプションは,省略可能なオプションであることを表しています。
C> cfg600px.exe△[-U]△[-v]△[ -V]△ file[Enter]
|
出力ファイルは,カレント・フォルダに生成されます。
- -U
未定義割り込みが発生した時にはシステム・ダウンとなりますが,本オプションを指定すると,発生した割り込みのベクタ番号がシステム・ダウン・ルーチンに渡されるようになる(「
第15章 システム・ダウン」を参照)ため,デバッグに役立ちます。ただし,RI600PXのコード・サイズが約1.5kB増加します。
- -v
コマンドのオプションの説明と詳細なバージョンを表示します。
- - V
cfg600pxが生成するファイルの作成状況を表示します。
-
file
cfg600pxへの入力ファイル名(システム・コンフィギュレーション・ファイル名)を指定します。拡張子を省略した場合は,拡張子“.cfg”を補って解釈します。
備考 <ri_root>は,RI600PXのインストール・フォルダを表しています。
デフォルトでは,“ C:
\Program Files
\Renesas Electronics
\CubeSuite+
\RI600PX
”となります。