RL78/G1C WDTコード生成

CS+ for CA,CXコード生成にてWDT有効にして、コード生成するとソースコード出力されます。

オーバーフロー時間はユーザ・オプション・バイト(C0H)のWDCS2-0として設定され、E1で

ダウンロードするとその値も確認できます。期待通りに動きます。

 

生成されたソースコードを確認するとWDCS2-0設定は、ソースコードとして出力されませんが、

どの様な仕掛けでコード化されるのでしょうか?

 

疑問に思ったきっかけは、生成したWDTソースコードを、コード生成を使っていない

他プロジェクトにソース追加したとき、思った通りオーバーフロー時間にならなかったためです。

ソースコードでWDCS2-0設定していないのでソースコードを持っていってもダメなのは理解

できます。どこを確認すればWDCS2-0設定が確認できるでしょうか?

  • > 生成されたソースコードを確認するとWDCS2-0設定は、ソースコードとして出力されませんが、
    > どの様な仕掛けでコード化されるのでしょうか?

    CS+ for CA,CX のプロジェクト・ツリー「CA78K0R(ビルドツール)」のプロパティ → 「リンク・オプション」タブの「デバイス」の中にある「ユーザ・オプション・バイトを設定する」の設定を「はい(-gb)」にすると「ユーザ・オプション・バイト値」が設定でき、ここで設定された値はリンク時のリンカへのコマンドラインオプションとして使用されます。
  • チョコです。
    WDTの設定,クロック周波数,オンチップデバッグ等の設定はオプションバイトとして,アドレス0x00C0~0X00C3に直接埋め込まれます。これらは,プログラムでは,ないのでソースコードには表れません。
    HEXオブジェクトファイルの該当するアドレス0x00C0または,エミュレータ等でプログラムをメモリにダウンロードした場合にはメモリのアドレス0x00C0のビット3~1を確認してください。各アドレスの構成はマニュアルの「ユーザ・オプション・バイトのフォーマット」を参照してください。

  • fujita nozomu さん

    ご教示ありがとうございます。設定値確認できました。
  • チョコ さん

    ご教示ありがとうございます。ダウンロードした値確認できました。