AKI-H8用のモニターデバッガの作り方
各CPUに対応した設定方法


設定

 次に、対象のCPU用に設定を書き直さなければなりません。設定は、「300hmoni」に
付属している「README.TXT」と、「300hmoni」をダウンロードした場所にある、
AKI-H8用の「フルカスタマイズ方法」にある「(1)RAM領域が少ない場合の
カスタマイズ方法 」を参考にして設定の変更を行います。

「半導体セミナー」→「サンプルプログラム」→「同意」→「H8/300H(Tiny)」 → 「フルカスタマイズ方法」

 設定変更と言っても、「batフォルダ」に入れた「MONITOR.SUB」の内容を変えるだけなので、
そんなに難しくはありません。では、順番に変更していきます。


▼ステップ1 まず、最初の行に次のような文があります。 INPUT ADVANCED,MONITOR LIBRARY ADVANCED,3003  この2行を全て入れ替えます。変更方法については、日立のサイトにある 「フルカスタマイズ方法(1)RAM領域が少ない場合のカスタマイズ方法」 に記載されている通りに変更します。最終的には以下の文と入れ替える事に なります。 INPUT monitor INPUT cmd01,cmd02, cmd04,cmd05,cmd06,cmd07,cmd08,cmd09,cmd10 INPUT cmd11, cmd13,cmd14, cmd16,cmd17, cmd19,cmd20 INPUT cmd21, cmd24,cmd25, cmd27,cmd28, cmd30 INPUT cmd31,cmd32,cmd33,cmd34,cmd35,cmd36,cmd37,cmd38 INPUT dmy03,dmy12,dmy15,dmy18,dmy23,dmy26,dmy29,dmy39 INPUT mod01,mod02,mod03,mod04,mod05,mod06,mod07,mod08,mod09,mod10 INPUT mod11,mod12,mod13,mod14,mod15,mod16,mod17,mod18,mod19,mod20 INPUT mod21,mod22,mod23,mod24,mod25,mod26,mod27,mod28,mod29,mod30 INPUT mod31,mod32,mod33,mod34,mod35, mod37,mod38,mod39 INPUT advanced INPUT cpu01,cpu02,cpu03,cpu04
▼ステップ2  次に「DEFINE $BRR(19)」という行がありますが、これはモニターに データを送る時のシリアル通信のスピードを設定する所です。 19という数字の部分がそうです。この部分にはビットレートの数字を 16進数で変換した値を入れる必要があります。 以下に、搭載クリスタルが16MHzと25MHz時の表を掲載します。
ビットレート16MHz25MHz
960051 (33)80 (50)
1920025 (19)40 (28)
3840012 (C)19 (13)
※()内の数字は16進数変換された数字です。 詳しくは、H8/3052のハードウェアマニュアルには、 410ページ(13.2.8 ビットレートレジスタ)に記載されています。 上記の表に当てはまらない場合はこちらを参照してください。 今回は最速の38400bpsに設定するので、「13」を記入します。
ビットレート25MHz
3840019 (13)
※AKI-H8/3052は25MHzなので、「13」です。 DEFINE $BRR(13)
▼ステップ3  次の行はSPを設定する部分です。「DEFINE $STACK(0FFFF00)」 今回は内臓RAMを使用するので、特に変更はしません。 ただし決まり事として、ここの値も16進数です。先頭のアドレスがアルファベットの場合は 0を追加しないといけないそうです。 本当ならH'FFFF00    ↓ 0FFFF00
▼ステップ4  次の2行は変更しないでそのまま次の行へ行ってください。 PRINT MONITOR.MAP OUTPUT MONITOR.ABS ↑変更なし。
▼ステップ5  いよいよ、最後の行がやってきました。この行が終われば設定は完了です。 VECTOR(0),ROM(100),RAM(20FE84),USER(200000),SCI(0FFFFB0) VECTOR(0) : CPUの先頭アドレス ROM(100) : プログラムの先頭アドレス RAM(20FE84) : ユーザベクトル領域を除いたRAM領域 USER(200000) : ユーザベクトル領域 SCI(0FFFFB0) : シリアルポートを決める部分 上記の設定を次のように変更します。 ※AKI-H8/3052の設定(内臓RAM領域が8KBのため) RAM(0FFDF10) : この部分に各種設定が書き込まれます。内臓RAMの先頭アドレスを設定。 USER(0FFE000) : ユーザーのプログラムを実行する先頭アドレスを設定します。 SCI(0FFFFB8) : SCI1の方を使うことになるので、チャンネル1に設定。 ※AKI-H8/3048の設定(内臓RAM領域が4KBのため) RAM(0FFEF10) : この部分に各種設定が書き込まれます。内臓RAMの先頭アドレスを設定。 USER(0FFF000) : ユーザーのプログラムを実行する先頭アドレスを設定します。 SCI(0FFFFB8) : SCI1の方を使うことになるので、チャンネル1に設定。 ※SCI0で通信したい場合は、SCI(0FFFFB0)に設定。 これで、全ての設定は終了です。お疲れさまでした。 [ダウンロード編へ][作成編へ]
秋月のコンパイラを使用している場合の追加修正
 本当ならば終わりなんですが、困った事にこのままモニターを作っても、 チェックサムエラーが出てしまい、プログラムを実行できません。 この修正は一箇所だけなので、最初に作られる方はこのままお付き合いください。 修正するのは、「300hmoniフォルダ」内の「ADVCMDフォルダ」の中にある「CMD24.SRC」です。 この100行目辺りに「BNE ERR11 ; Check Sum Error」という部分があります。 NOT.B R6H ; Test Check Sum BNE ERR11 ; Check Sum Error この「BNE」を「BRN」に変更してください。こうすることで、チェックサムエラーが出なくなります。 これで、設定は本当に終了です。m(_ _)m

[TOP] [ダウンロード編へ] [作成編へ]
SEO [PR] 爆速!無料ブログ 無料ホームページ開設 無料ライブ放送