H8のフラッシュメモリに書き込みをするため、h8comm
というプログラム
を用意しました。マニュアルはh8comm
manual
を参照して下さい。
h8comm
の配布ファイルの中にromsmpl.bin
というサ
ンプルプログラムがあります。これはI/OポートBを点滅させ、シリアルポートか
ら"Hello,
world"というメッセージを送信しつづけます。動作確認に使うのにちょ
うどよいと思います。
このプログラムをROMに書き込むには、h8comm
に次のオプションを
与えます。
h8comm -d romsmpl.bin
標準出力から"Hello, world"が次々と出てきたら成功です。
次は、romsmpl.bin
のようなバイナリイメージをCのソースから作
る方法です。
まず、COFFのファイルを作成します。GCC
を次のオプションをつけ
て実行します。オプションのうちのいくつかは見慣れたものですが、見慣れない
オプションもあると思います。
h8300-hms-gcc -O -mh -mrelax -T /usr/local/lib/h8comm/h8ram.x -nostartfiles /usr/local/lib/h8comm/h8crt0.o sample.c -o sample
-T オプションはリンカスクリプトファイルを指定するオプションです。
ここでは、h8ram.x
というブートモード用のリンカスクリプトを指
定しています。ROMに書き込むときにはh8rom.x
を指定します。
-nostartfilesはデフォルトのスタートアップルーチンを使用しないと
いう指定です。そして、代わりにh8crt0.o
という自前のスタート
アップルーチンをリンクしています。
次に、objcopy
でCOFFファイルを生のバイナリファイルに変換します。
h8300-hms-objcopy -O binary -R .stack sample sample.bin
こうして、h8comm
に渡すことができるバイナリファイル
sample.bin
を作ることができます。
kp9m-iwt@asahi-net.or.jp