CQ出版社のトップページへ
組み込みシステム開発評価キットのサポートページへ

組み込みシステム開発評価キット

ソフトウェア開発ツールのインストール
〜Cygwin版 M32R用クロスCコンパイラ/デバッガのセットアップと使い方〜

 本評価キットにはLinux版の開発ツールも収録していますが、ここではCgywin版のセットアップと使い方について説明します。

●M32Rクロスツールのインストール
 本評価キット添付の評価キットCD-ROMの下記ディレクトリのファイル、
\M32R\RENESAS\Tools\cross\Cygwin\m32r-linux.20060110-cygwin-3.4.tar.bz2
を、Cygwinをインストールした /usr/local にコピーして、次のコマンドなどでインストール(解凍)してください。
$ tar jxf m32r-linux.20060110-cygwin-3.4.tar.bz2[リターン]
 また、評価キットCD-ROMの下記ディレクトリのファイルCygwin版SDIserver(sdiserver-cygwin.exe)、
\M32R\RENESAS\Tools\sdiserver\Cygwin\sdiserver-cygwin.exe
を、先ほどと同様に /usr/local にコピーしてください。

●gccによるプログラムのコンパイル
 Cygwinのシェルを起動し、次のコマンドを実行して、M32R用のgcc(m32r-linux-gcc)にリンクを張ってください。

$ ln -s m32r-linux.20060110-3.4 m32r-linux-3.4[リターン]
以上でM32R用クロスCコンパイラのセットアップは完了です。
 評価キットCD-ROMの下記ディレクトリ
\M32R\PROGRAM
に収録した各サンプルプログラムには Makefile も収録しているので、これを /usr/local などのHDD上にコピーして、そのディレクトリの中で、
$ make[リターン]
とするだけでも、サンプルプログラムがコンパイルされます。

●SDIserverの起動
 次にデバッグ方法について説明します。M32R用のgdbは、ホストPCのLPTポートと本評価ボードを接続することで、JTAGデバッグを実現できます。このとき、gdbとM32RのJTAG信号の間のプロトコルを変換するソフトウェアとして、SDIserverが必要になります。
 Cygwinのシェルを起動して、カレントディレクトリを/usr/localに移動してください。そして次のコマンドを入力してください。

$ ioperm -i -v[リターン]
Installing ioperm.sys...
OpenSCManager       ok
CreateService       failed
ioperm.sys is already installed.
OpenService         ok
StartService        failed
ioperm.sys is already running.

$ ./sdiserver-cygwin.exe[リターン]
sdiserver 2.12
Copyright (c) 2003,2004 Renesas Technology Co. All rights reserved.
Waiting for connection to port 3232


 注意:

●gdbの起動
 もう一つCygwinのシェルを起動して、次のパスを設定してください。

$ export PATH=/usr/local/m32r-linux.20060110-3.4/bin:$PATH[リターン]
 それからgdbを起動してください。
$ m32r-linux-gdb[リターン]
GNU gdb 6.4.50.20060110-cvs
Copyright (C) 2006 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This GDB was configured as "--host=i686-pc-cygwin --target=m32r-linux".
(gdb)
 次にtargetコマンドを使ってgdbをターゲットと接続します。
(gdb) target m32rsdi[リターン]
Remote m32rsdi connected to M32R/VDEC2_CQ
 すると、sdiserverを起動したシェルのコンソールに、
Got connection from 127.0.0.1
Reset target
と表示されれば、gdbがターゲットと正常に接続されています。
 ただし、ハードウェアのサンプル設計データとしてAVP_M32RやAVP_Simpleなどのように、M32Rソフト・コア内蔵のSDRAMコントローラを使った場合は、このままではSDRAMコントローラが初期化されていないため、作成したプログラムをダウンロードすることができません。

 そこで各サンプルプログラムには .gdbinit を収録しているので、ダウンロードするプログラムのディレクトリをカレントディレクトリとしてからgdbを起動すると、gdbのスクリプトが自動的に実行され、その中でSDRAMコントローラが初期化されます。
$ cd sample[リターン]
$ m32r-linux-gdb[リターン]
GNU gdb 6.4.50.20060110-cvs
Copyright (C) 2006 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This GDB was configured as "--host=i686-pc-cygwin --target=m32r-linux".
[Loading section .eit_vector at 0x8000000 (228 bytes)]
.done.
[Loading section .boot at 0x8002000 (72 bytes)]
.done.
[Loading section .text at 0x8002048 (1996 bytes)]
.done.
[Loading section .rodata at 0x8002814 (40 bytes)]
.done.
[Starting /usr/local/inttest/inttest at 0x8002000]
Transfer rate: 92975 bits/sec.
0x08002004 in boot ()
(gdb) c[リターン]
上の例は、BLANCAのCOM2に対して、メッセージを表示するサンプルプログラムです。あらかじめ、COM2とターミナルを、115200bps/データ8ビット/ストップビット1ビット/パリティなしの設定で接続しておいてください。プログラムが正常に実行されれば、ターミナルに次のようなメッセージが表示されます。
Hello world
 gdbの操作方法については、gdbの参考書を参照してください。


Copyright CQ Publishing Co.,Ltd. 1999-2008
blanca@cqpub.co.jp