TOPPERS/ASP on AKI-H8-3069
秋月電子通商のH8-3069ボードでTOPPERS/ASPのサンプルを動かす手順です。
名古屋なら大須の
タケイムセンでも購入可能(値段は高め)。
- 2つの動かし方
- デバッグ
- RAMに書いて動かす。
- まず始めにROMにモニタプログラムを書き込み、シリアルポート経由でプログラムをRAMに転送する。
- 電源を切るとROMのモニタプログラムは消えないが、RAMのプログラムは消える。
- リリース
- ROM(CPU内蔵フラッシュメモリ)に書いて動かす。
- 電源を切ってもプログラムは消えない。
- 開発環境の準備
- Cygwin
「all」でインストールが無難。
- TOPPERS/ASP秋月H8-3069パッケージを入手
「TOPPERS/ASPカーネル簡易パッケージのダウンロード」のページにある
「AKI-H8/3069F(秋月電子通商)簡易パッケージ asp_akih8_3069f_gcc-20090513.tar.gz」をダウンロードする。
- クロスビルドツール
上記asp_akih8_3069f_gccパッケージの /asp/target/akih8_3069f_gcc/target_user.txt
に解説がありますが、ビルド済みのものをここに置いています。
展開したら中のbinにPathを通してください。
(例)/usr/local/CrossTools/に展開するなら
$ unzip CrossTools.zip -d /usr/local
$ export PATH=/usr/local/CrossTools/bin:${PATH}
- 書き込みツール
ボード付属のCD-ROMにある「h8write.exe」
または ルネサスのサイトにある「【無償評価版】フラッシュ開発ツールキット」を入手する。
- シリアルターミナル
TeraTerm等のPCアプリをPCにインストール
- シリアル(ストレート)ケーブル または USBシリアル変換ケーブルを用意し、PCとボードを接続する。
PCのシリアルポートのポート番号を調べる。
- モニタプログラムをROMに書き込む(CPU Xtal=20MHzの場合)
- モニタプログラムを入手
「TOPPERSプロジェクト/JSPカーネル」のページの下の方にある「H8 用簡易モニタ」をダウンロード。
- ビルド
「H8 用簡易モニタ」h8mon-1.12.tar.gzを展開する。
cugwinなら
$ tar zxvf h8mon-1.12.tar.gz
ビルド済みのmotファイル(20MHz用)が入っている。
h8mon-1.12/h8mon/mon3069/mon3069.mot
- 書き込み(「h8write.exe」を使う場合)
シリアルケーブルでPCとボードのCN1コネクタを接続。
H8ボードのDIPスイッチを書き込みモードに設定。
H8ボードに電源投入してリセット
「h8write.exe」と「mon3069.mot」を同じフォルダに置く。
PCのwindowsのコマンドプロンプトウィンドウを起動して以下を行う。
h8write -3069 -f20 mon3069.mot com?(←シリアルのポート番号)
「success」の表示が出るのを待つ。
- モニタプログラムをROMに書き込む(CPU Xtal=25MHzの場合)
- ビルド
展開した中の
h8mon-1.12/h8mon/mon3069/Makefile
51行目のCC=/usr/local/bin/h8300-hms-gcc を CC=h8300-hms-gcc に変更、
h8mon-1.12/h8mon/mon3069/3069.h
47行目の#define CLOCK_RATE 20000000 を #define CLOCK_RATE 25000000 に変更してmakeする。
成功するとmon3069.motが上書きされる。
- 書き込み(「h8write.exe」を使う場合)
コマンドの-fパラメータがボードのクロック数なので値が異なる。
h8write -3069 -f25 mon3069.mot com?(←シリアルのポート番号)
- TOPPERS/ASPのサンプルをRAMに転送する(デバッグ)(CPU Xtal=20MHzの場合)
- ビルド
cugwinの任意のフォルダで以下を行う。
(1) パッケージを展開。
$ tar -zxvf asp_akih8_3069f_gcc-20090513.tar.gz
(2) asp/doc/user.txt の「3.クイックスタートガイド」に従い、まずコンフィグレータを構築する。
$ cd asp/cfg
$ ./configure
$ make
$ cd ..
(3) ディレクトリを作成し、移動。
$ mkdir OBJ
$ cd OBJ
(4) サンプルをビルド。
$ ../configure -T akih8_3069f_gcc
$ make depend
$ make
(5) エラーが無ければ成功、ファイルを確認。
$ ls.asp.*
asp.exe asp.srec asp.syms
- H8ボードに転送
シリアルターミナルの通信速度を38400に設定。
H8ボードのDIPスイッチを動作モード5に設定する。
ボードに電源を入れ、モニタを起動。
画面にモニタの起動メッセージが表示されたら、「ld」リターン。
ファイル転送からOBJに出来たasp.srecを選択。
転送完了を待つ。
- 起動
シリアルターミナルから「go」、リターン。
ASPサンプルプログラムが起動すれば成功です。
- TOPPERS/ASPのサンプルをRAMに転送する(デバッグ)(CPU Xtal=25MHzの場合)
- ビルド
パッケージを展開した中の
asp/target/akih8_3069f_gcc/akih8_3069f.h
55行目の#define CPU_CLOCK 20000000 を #define CPU_CLOCK 25000000 に変更する。
あとは20MHzの場合と同じ。
- TOPPERS/ASPのサンプルをROMに書き込む(リリース)(CPU Xtal=20MHzの場合)
- TOPPERS/ASPのサンプルをROMに書き込む(リリース)(CPU Xtal=25MHzの場合)