6)mspgccでのコンパイル |
|
1.準備 トラ技2007.1月号P.134にあるSourceForgeのdownload areaからmspgcc-win32の20060502版をダウンロードしてください。ファイルはmspgcc-20060502.exe です。トラ技CD-ROMをお持ちの方はmspgcc-20060502.exeですのでダウンロード不要です。 gdb(デバッグ)を使用されない方のみ最新バージョンmspgcc-20061126.exeも使用可能です。以下参照 20061126版のgdb5.1.1にはバグがあり、dataセクションがないとシンボルファイルを読み込めないことがわかりました。対応策はグローバル変数に値を入れることですが他にもバグがありそうです。gdbを使用する方は20060502版をダウンロードするのがよいと思われます。gdbを使用しない方は20061126版でも良いかもしれません。なお20061126版のgdbはバージョンダウンしています。 gdbバージョンによるgdb初期化ファイル名が異なりますので注意してくだい。 20060502版(gdb6.0) .gdbinit 20061126版(gdb.5.1.1) gdb.ini スタートメニューにはmspgccができます。 3.コンパイル ここでは、makefile test.c sub.c hardware.h gdb.ini .gdbinitを同じフォルダに入れておいてください。一式(Zipファイル) DOS窓を開き、ソースのあるフォルダに移動します。 別のGCCをインストールしているPCでは別のGCCのmake.exeが優先される可能性があります。その場合、DOS窓にてpath=c:\mspgcc\bin;%path%とします。または環境変数の変更方法を知っている人はmspgccのパスを先頭にもってきてください。 次のようなバッチファイルを作ってデスクトップに置いておくと、パスも設定されたDOS窓が開き便利です。(WindowsXPにて確認) f:\progにはソース一式が既にあるとします。 f: cd f:\prog path=c:\mspgcc\bin;%path% c:\windows\system32\cmd.exe ではDOS窓からコンパイルリンクします。 make これでコンパイル、リンクがおこなわれtest.elfという書き込むファイルができあがります。 変更のあったものをコンパイルリンク: make 前回のコンパイルリンク生成ファイルを削除する: make clean すべてコンパイルリンク: make all msp430-jtagによる書き込み: make download-jtag 4.書き込み方法その1(msp430-jtag) ボードとパラレルポートのJTAG書き込み器を接続し、一番最初だけスタートメニューのmspgccのGIVEIOのInstall Giveio Serviceをおこなってください。これはWindowsXP/2000/NTにてパラレルポートを制御するドライバーとなります。Win98やWinMeでは不要(※1) 準備ができたらDOS窓で以下をおこないます。 msp430-jtag test.elf 消去と書き込みが自動でおこなわれます。 5.書き込み方法その2(msp430-gdb msp430-proxy) ボードとパラレルポートのJTAG書き込み器を接続し(先に上記※1を実行しておく)、gdbを開始する前に、スタートメニューのmspgccのmsp430-gdbproxy (parallel)をおこなってください。するとDOS窓が開きmsp430-gdbproxyが起動します。gdbproxyはTCP/IPポート3333でwait状態でgdbが起動するのを待っています。 DOS窓でgdbを起動します。 msp430-gdb test.elf 以下はgdbの画面です。 (gdb) monitor erase 消去 (gdb) load test.elf 書き込み (gdb) cont プログラム実行 Ctrl+Cで中断できます。 contでプログラムを実行して再度loadしたい場合は次のようにリセットします。 (gdb) monitor reset ターゲットボードをリセット (gdb) quit gdbを終了 他にもデバッグコマンドがありますが、調査中につき後日記載します。 6.書き込み方法その3(MSPFET) GUIによる書き込みができます。 トラ技1月号CD-ROMに詳しく説明がありますので省略します。 |