« SH2用JTAG ICE Version1.1リリース | トップページ | 明るい蛍光灯 »

2006.07.03

SH2のJTAGデバッグをEclipseと連携させてみた

SH2のJTAGデバッガと、Eclipseを連携させてみました。

SHがコンパイルできるEclipseの環境をゼロから構築するのもたいへんなので、Interface誌の8月号に収録されている、もなみソフトウェアさんのPizzafactoryを使いました。詳しくはわかりませんが、PizzafactoryはEclipseをカスタマイズしたものなのでしょう。記事のとおりにインストールし、記事にかかれているとおりにコンパイルすれば、なんとかMOTファイルまで作れることはわかりました。

で、EclipseとJTAGデバッガを連携させるとはいっても、Eclipseは初めて触るものだし、使い方とかは全くわからないので、Blackfin空挺団さんの「組込みプログラミングにEclipseを使う」のページを参考にしました。

詳しくはよくわからないものの、Zylin CDTというモジュールをインストールすればよいのだろうと思い、CDT(zylincdt-20060407.zip)をダウンロードして、展開し、pluginというフォルダが入っているので、その中身をC:\Program Files\MonamiSoftware\PizzaFactory3\pluginsの下にそのままコピーしました。
乱暴な方法かもしれませんが、インストールはこれでいいのかな?
PizzaFactoryを何度か再起動すると、CDTが認識されているようでした。

sh-elf-gdbも必要なようなのですがどうやら付録のPizzafactoryの中には入っていないようなので、Interface7月号の「山際さんGDB」をインストールし、Pizzafactoryの設定でCygwinのフォルダ中にある山際さんGDBを指定。

Pizzajtag1

それから、commandタブを開いて、target remote localhost:2159と指定。

Pizzajtag2

ソースファイルのsample1.cをコンパイルすると、testapp.motができあがります。
でも、このファイルはキーコードが埋め込まれていないので、JTAGデバッガが利用できません。
キーコードは割り込みベクタを定義する領域に書き込むのですが、どのファイルをいじればよいのかよくわからないので、できあがったMOTファイルを修正することにします。

MOTファイルの3行目、
S113001000000400000004000000040000000400CC

S1130020C91F0606000004000000040000000400CC
と書き換えます。こうして無理やりキーコードを埋め込みます。

(どうやら、C:\Program Files\MonamiSoftware\PizzaFactory3\plugins\jp.pizzafactory.toppers.kernels.jsp_1.4.202\jsp\config\sh2の中にあるstart.Sを開き、70行目を
.long 0xC91F0707 /* 8:システム予約 */
と書き換え、Project->CleanとProject->Build Allを2回をやれば、スタートアップコードがうまく書き換わるようだ。)

それから、FDTを使ってRS232C経由でMOTファイルをダウンロードします。

これでJTAG ICEを立ち上げ、PizzafactoryでDebugを起動します。
するとGDBプロトコル経由でJTAG ICEにつながります。

Pizzajtag3

つながって、ぐちゃぐちゃやっていると、ソースコードのウィンドウが開いて、デバッグができるようにはなったのですが、ここからが難しい。
思ったようにステップ実行させたり、ブレークポイントを仕掛ける方法がわかりません。
きちんとEclipseの使い方をしらべなければいけませんね。


|

« SH2用JTAG ICE Version1.1リリース | トップページ | 明るい蛍光灯 »

コメント

コメントを書く



(ウェブ上には掲載しません)




« SH2用JTAG ICE Version1.1リリース | トップページ | 明るい蛍光灯 »