ホーム > ユーザーサポート > FAQ カバレッジマスターwinAMS
【質問】
ルネサスエレクトロニクス(旧NECエレクトロニクス)の純正クロスコンパイラを使用していますが、CasePlayer2での解析時に「CasePlayer2-E-SYN : 名前( *** )が宣言されていません.」のエラーが出ます。この宣言は、i/oポートの名称のようです。どのように対処すれば良いですか?
【回答】
旧NEC系のマイコン、V850シリーズや78K0シリーズ向けの純正開発環境、PM+やCubeSuite等で純正コンパイラを使用している場合、そのソースコードをCasePlayer2で解析すると下のような未定義エラーが多数発生します。
CasePlayer2-E-SYN : 名前( TOE0 )が宣言されていません.
CasePlayer2-E-SYN : 名前( TS0 )が宣言されていません.
CasePlayer2-E-SYN : 名前( TT0 )が宣言されていません.
CasePlayer2-E-SYN : 名前( TOE0 )が宣言されていません.
:
:
これは、純正コンパイラでは、マイコンのi/oポートやレジスタの定義を、ヘッダファイル(*.h)ではなく、旧NEC独自の「デバイスファイル」でコンパイラに与える仕組みとなっているためです。これらのコンパイラが暗黙の定義として持つレジスタ名をCasePlayerが解析した際に、この名称がソースコードやヘッダファイルに定義されていないため、エラーとなります。
これを回避するためには、CasePlayer2での解析の際に、デバイスファイルで定義されている内容をヘッダファイルを作成して与える必要があります。
ガイオでは、ユーザーが使用している「デバイスファイル」から、その内容を定義したヘッダファイルを作成するサポートを行っています。ユーザーサポート宛に、「デバイスファイル」をお送り頂ければ、弊社でヘッダファイルを作成し返送させて頂きます。ご希望の場合は、弊社サポート専用窓口宛にお問い合わせ下さい。
このヘッダファイルを入手後、CasePlayer2の「設定」タブの「プリプロセッサ」の設定にて、「プレインクルード」に指定して下さい。ソースコードに#include記述を追加する必要はありません。プレインクルードに設定したヘッダファイルは、全てのソースの解析時に最初に読み込まれ、解析に使用されます。
【補足情報】
「デバイスファイル」で定義されているi/oポートのシンボルを、カバレッジマスターの入力/出力変数に指定する場合には、「定義名リスト」の機能を使用して、これらのi/oポート名を再登録して使用する必要があります。詳細は、以下のFAQをご覧ください。