Last Update : 2006/Nov/16
RoboShell
開発環境の構築
オープン(ソース)ツール
ツールの入手
ツールのインストール
ディレクトリの設定
プロジェクト
ツールの設定
ビルド
デバッグ
<<戻る

    ロボットの処理の大部分は、マイクロコントローラ(MCU)のソフトウェアにより行われています。今回利用するARMは組み込み型コンピュータとしてゲームボーイアドバンスや任天堂DS、携帯電話などで広く使われています。ロボットの処理は多岐にわたり、ソフトウェアとしての規模も個人で開発するにはかなり大きいものとなります。使いやすい開発環境を構築することは、パフォーマンスの高いロボットを製作する上で重要なポイントです。


  • オープン(ソース)ツール

    オープン(ソース)ツールをなるべく用いるようにします。この対語としてプロプライエタリツールなる言葉もあります。これはツールベンダーの権利関係の下に提供されるツールを指します。今回はなるべくお金をかけずに開発することが前提ですので、オープン(ソース)ツールになります。(ソース)の意味は必ずしもソース提供がなされる訳ではないことを示しています。また、安価に入手できる最新のツールを利用して、ツールに対しての学習も行いたいと思っています。


  • ツールの入手

    基本的にはインターネットで入手できるツールを利用します。既に今回のCPUボードの提供先である Optimize でも Insight を中心にした開発、デバッグ方法の説明がありますが、同じではつまらないので違う路線でやってみます。

    • Eclipse

      元々はJavaの開発環境として開発されましたが、プラグイン・モジュールでの容易な拡張性のため広く様々な開発に使われるようになりました。最近では本稿のズバリのテーマである組み込み関係でも利用されるに至っています。

    • Eclipse plugin Zylin-CDT

      C/C++ 開発用の Eclipse のプラグイン・モジュールになります。ARMの開発は組込み用途のC/C++で行われるため、こちらのプラグイン・モジュールが必要になります。

      • embedded-CDT
      • zylinCDT-YYYYMMDD

        URLはリリース毎に変わるので、あえて載せません。

    • GNU ToolChainCode Sourcery

      ARM 用の GNU C Compiler です。GNU 系のツールチェーンの場合は、Cygwinが前提になっていることが多いのですが、このパッケージはインストールするとすぐに使えます。この CodeSourcery のパッケージの出来が非常に良いので、インストールの手間は以前に比べてかなり軽減されました。

    • Opitimize 製試作基板 EZ-ARM mini 用ツール

      これらのツールは mini EZ-USB で接続するためのソフトウェアです。ソースは公開されていませんが、ダウンロードして利用することが出来ます。サンプルスケルトンに同梱しています。サンプルプログラムは LPC-2138 ベースのプログラムを作成する時に参考になりますので、目を通されると良いでしょう。

      • jtag_stab.exe
      • jtag_flash.exe


  • ツールのインストール

    • Eclipse

      c:\eclipse
      に展開します。

    • Zylin-CDT

      Zylin-CDT も同様に展開します。 展開された plugins フォルダをc:\eclipse にコピーします。

    • GNU ToolChain

      インストーラでそのまま、インストールします。デフォルトで良いでしょう。


      ダブルクリックで起動します。







    • jtag_flash.exe, jtag_stub.exe

      c:\EZ-ARM\bin\を作成してコピーします。


  • ディレクトリの設定

    ツールやソースの管理を行いやすくするために、ディレクトリの設定を行います。 今回は

    c:\EZ-ARM\

    ディレクトリを作成しました。
    各プログラムはここでプロジェクト(ディレクトリ)を作成して、eclipse で実装していきます。

    EZ-ARM 下に下記のディレクトリを作成します。

    • _common

      共通で使うファイルを格納するためのディレクトリです。現在の中身はこんな感じです。ダウンロードして、このディレクトリに展開します。

    • bin

      先の jtag_stub.exe, jtag_flash.exe と共に パスを設定して、eclipse を起動するためのファイル eclipse.cmd を入れておきます。


  • プロジェクト

    プログラムの開発はプロジェクト単位で行われます。

    • Eclipse の起動

      Eclipse の起動はeclipse.cmd をダブルクリックして実行します。
      今回の設定では各種のプロジェクトファイルは c:\EZ-ARM に置きますので、そのディレクトリを指定します。

    • バイナリパーサの設定


      今回、取扱うバイナリをチェックします。


    • ツールの設定

      • eclipse.cmd

        開発環境が複数、入っている場合にはパスの設定が必要になります。eclipse.cmdにより、今回インストールしたツールのパスを設定して、eclipse を起動します。

      • Eclipse

        eclipse の中で、ビルド、フラッシュプログラミング、デバッグが行えるようになります。


    • ビルド

      • オプション設定

          ビルドは make のオプションが前提となります。makefile に記述しているオプションの設定を行います。
        1. プロジェクトフォルダ上で右クリックしてメニューを出します。


        2. makefile に記述しているオプションを入力します。


        3. makefile に記述しているオプションだけ繰り返します。

      • 実際のビルド

        1. BuildMakeTarget を選択します。


        2. オプションを選択して実行します。



    • デバッグ

      • 設定

        Eclipse のデバッグ設定はプロジェクト毎に行う必要があります。設定は

        Run -> Debug...で行います。


        • Main

          プロジェクト名とアプリケーション名を設定します。

        • Debugger

          • GDB Debugger : デバッガの種類
          • C:\Program Files\CodeSourcery\Sourcery G++\bin\arm-none-eabi-gdb.exe : デバッガのインストール先
        • Commands

          図のように設定します。今回の設定は Blackfin空挺団実験を参考にさせていただきました。

        • Source

          図のように設定します。

        • Common

          図のように設定します。

      • 操作
        1. ターゲットのリセット


        2. jtag_stub の実行


        3. ブレークポイントの設定

          現在、用いている Zylin-CDT では main() でブレークポイントが自動で貼られません。その場合は予め、main() の先頭付近でブレークポイントを貼っておく必要があります。

        4. デバッグ開始
          1. デバッグボタンを押します。


          2. 接続確認

            接続確認後デバッグを開始します。


頁の先頭
織田裕一へメール


Copyright (C) 1998 - 2006 TeamKNOx