| 
 Linux 
  設定 
Windows 
 | 
    H8設定(linux)C言語とアセンブラを使うためにH8 を Linux で使うために設定を行います. 目次C言語環境構築クロスコンパイラー開発環境はクロスコンパイラーを使うことになります.Linuxでのクロスコンパイラーの環境構築の方法は,いろいろあるようです.ここでは,インストールが簡単なrpmパッケージを使うことにします.rpmパッケージは,みついわゆきおさんのLinuxによるマイコンプログラミングのページの「GCC for SuperH,H8/300,AVR」から,H8/300H用バイナリパッケージ(Linux version)をダウンロードします. 
 rpmパッケージなので,インストールは簡単で,rootになり, # rpm -ivh h8-binutils-2.13-1.i386.rpm # rpm -ivh h8-gcc-3.2-1.i386.rpm # rpm -ivh h8-newlib-1.10.0-1.i386.rpm とします.インストールが完了したならば, # h8300-hms-gcc -v とタイプし,バージョンが表示されることを確認しましょう.私の場合は, 
Using built-in specs.
Configured with: ./configure --prefix=/usr/local 
     --target=h8300-hms --with-newlib
Thread model: single
gcc version 3.4.3
    と表示されました. 書き込みツールモトローラS2フォーマット(*.mot)ができあがったならば,それをH8に転送する必要があります.そのためのソフトウェアーをインストールします.これも,みついわゆきおさんのLinuxによるマイコンプログラミングのページの「Open SH/H8 writer」に公開されていますので,使わせてもらっています.私は,C言語のソースファイル 
 をダウンロードして,コンパイルしました.出来上がった実行ファイルは,パスの通った適当なディレクトリーに入れておけば良いでしょう.私は /usr/local/bin にコピーしました. # gcc -o h8write h8write.c # cp h8write /usr/local/bin テストコンパイルハードウェアーとソフトウェアーのテストをしてみましょう.Strawberry LinuxさんのgccによるH8マイコン開発に示されているLEDの点灯が簡単で良いです.そこにある, h8led-0.1-20020706.tar.gzをダウンロードしましょう.ダウンロードしたら,それを解凍し,ソースのあるディレクトリーに移ります. $ tar zxvf h8led-0.1-20020706.tar.gz $ cd h8led このままmakeしたのではなにもしませんので,とりあえず,ファイルを消します. $ rm h8led.exe h8led.mot led.o その後,makeします. $ make
    そうするとモトローラSフォーマット(*.mot)のファイルが出来上がります.ここでは,h8led.motというファイルができあがるはずです.これをH8に転送すれば,実行できます. パソコンとH8の接続以下の回路図のとおりにブレッドボード上に部品を組み立てます.パソコンとの接続は,D-subコネクターを使いシリアルポートと接続します. 転送モトローラSフォーマット(*.mot)のファイルをH8に転送する方法を示します.転送する前に,H8とパソコンの接続し,準備をします. 
 h8writeコマンドを使って,ファイルをH8に転送します.このコマンドの使い方は,h8write -helpで見ることができますが,通常は $ h8write -ターゲットCPU motファイル デバイス とします.ターゲットCPUはH8のシリーズ名,motファイルはコンパイルしてできあがったファイル(*.mot),デバイスはシリアルポートを示します.シリアルポートのCOM1が/dev/ttyS0,COM2が/dev/ttyS1となり,使っているポートを指定しなくてはなりません. 先ほど作成したh8led.motを転送します. $ h8write -3664 h8led.mot /dev/ttyS0 結構,長い時間がかかりますので,気長に待ちましょう. もし次のようなエラーがでるようでしたら,それはシリアルポートの権限が無いためです.権限を変更するか,スーパーユーザー(root)で実行してください. FATAL:Can not open the line to the H8/OS 実行方法転送が成功すれば,実行は簡単です. 
 プログラム転送のためのDSUBのコネクターもじゃまなので,電源OFFの時に外してしまっても良いです. プログラムがちゃんと動作すると,1秒間隔でLEDが点滅します. 参考このページを作成するに当たり,以下のwebを参考にしました.  |