H8 300h Tiny (36109) のブートモード

ブートモードにて、H8のブートローダ使用し、書き込み/消去プログラムをRAMへダウンロードする際に、

ブートローダがフラッシュメモリ書き換え用ワークエリアに書き込み/消去プログラムを転送すると思います。

その際、書き込み/消去プログラムはフラッシュメモリ書き換え用ワークエリアを越えてユーザーエリアに重なってもいいものですか?

(たとえば書き込み消去プログラムが1KB以上であった場合)

また、書き込み消去プログラムで使用するRAM(書き込み消去プログラムが使用する変数等)は フラッシュメモリ書き換え用ワークエリアやユーザエリア以外の内臓RAMを使用する事はできるのでしょうか?

ご存知の方、経験のある方いましたら教えていただけますか?

  • minさん

    こんにちは、

    以下の様なFAQがあります。

    japan.renesas.com/.../MPUMCU_H8TINY_030_J.jsp

    よろしければご参照願います。

    ワークエリア以外にはブートプログラムの関数が格納されている様です。

  • SA様回答ありがとうございます。

    書き込み消去プログラムは1KB以内に納めなければならないようですね…

    この書き込み消去プログラムにUART制御を追加して、外部からの書き換えを行いたかったのですが、

    製品として出ているROMライタ(H8に対応している)もブートモードを使って行っているんでしょうかね?

  • minさん

    こんにちは。

    H8/36109はライタモードがありますので、ブートモードは使っていないと思います。

    H8の製品によってはライタモードに対応していないこともあります。

    正確に知りたい場合はライタメーカーに確認する必要がありますね。

  • SA様 回答有難うございました。

    ライタモードですか、

    メーカーに確認したほうがいいかもしれませんね、

    参考になりました。

    有難うございます。

  • ちょっと気になったのですが。

    H8/36109Fの場合、以下のマニュアルの「7.3.1 ブートモード」を見ると、書き込み制御

    プログラムを格納できるエリアはH'FFF780~H'FFFEEF番地のようです。

    documentation.renesas.com/.../r01uh0294jj_h8_tiny.pdf

    >製品として出ているROMライタ(H8に対応している)もブートモードを使って行っているんでしょうかね?

    ここで言うROMライタはオンボードタイプの事だと思いますので、ルネサスのツール始めほかのライタメーカの製品

    もブートモードを使用しているはずです。

    無償評価版ではない製品版のFDTを購入すると書き込み制御プログラムのサンプルも同梱されていたかと思います。

    昔は実際に作成した方がWebに掲載していたりしてましたね。

    H8/3694Fですが、こんなのを見つけました。

    www.eonet.ne.jp/.../iFw3694.htm

  • morimoto様

    ずいぶん日が経ってしまいました。

    申し訳ありません。

    ご回答有難うございます。

    ネットでH8について調べてましたら自分の記事を見つけてmorimoto様の回答に気が付きました。

    あれから色々と調べ

    ブートモードを使用し、書き換えできることや、

    H'FFF780~H'FFFEEFの領域にプログラムを置き実行できることを確認しました。

    参考記事有難うございます。