2.プログラムの転送・実行 TOPへ

3.Eclipseを用いたソフトウェア開発


Eclipseとは、汎用の統合開発環境の一つです。
nxtOSEKのインストールおよびプログラムアップロードが正しく行えていれば、nxtOSEKを使用したプログラムの開発、ビルド、アップロードという作業をEclipse CDT上から行えるようになります。

1.Eclipse のダウンロード

ここでは、開発の為の物がすべて含まれていて、インストールも簡単な、「Pleiades All in One 日本語ディストリビューション」を使用します。
これは、Eclipseを日本語化し、すぐに使用できるように開発言語別にパッケージしたものです。

Pleiadesのページから、最新版のC/C++用パッケージをダウンロードします。

Full All in One (JRE あり)のタイプを選択します。

2.環境変数の設定

cygwin\binディレクトリをWindows環境変数のパスに登録します。

コントロールパネル→システムとメンテナンス→システムの詳細設定を開きます。
「環境変数」をクリックします。

「***のユーザ環境変数」の「新規」をクリックします。

変数名に「PATH」変数値に「C:\cygwin\bin」(cygwinをどこにインストールしたかにより変わります)を入力し、OKをクリックします。

「OK」をクリックします。

「OK」をクリックします。

これで環境変数の設定は完了です。

3.Eclipseの起動

ダウンロードしたZIPファイルを解凍します。
解凍したフォルダ\eclipse\eclipse.exeを実行します。

しばらくすると、ワークスペースの設定画面が表示されます。任意の位置にワークスペースを設定してください。
ここでは、C:\cygwin\nxtOSEK\Myprojectに設定しました。ここに作成したプロジェクトが保存されます。

しばらくして、Eclipseが起動します。

4.プロジェクトの作成

早速プロジェクトを作成しましょう。
ここでは、helloworldというプロジェクトを作ります。

「ファイル→新規→Cプロジェクト」を選択します。

  1. 任意のプロジェクト名を入力します。
  2. デフォルト・ロケーションの使用のチェックは入れたままにします。
  3. 「プラットフォームでサポートされる場合のみ、プロジェクト・タイプとツールチェインを表示」のチェックをはずします。
  4. 「プロジェクト・タイプ:」の四角の中の「Makefileプロジェクト」の左の白三角をクリックします。
  5. 「空のプロジェクト」を選択します。
  6. 「ツールチェーン」の四角の中の「Cygwin GCC」を選択します。
  7. 「完了」をクリックします。

プロジェクトが作成されました。
このプロジェクト内に、メイクファイル、ソースファイル、oilファイルを作れば、プログラムをビルド(コンパイル)することが出来ます。

5.ソースファイルのインポート

プロジェクト内に自分でファイルを作らなくても、他のプログラムからインポートすることができます。
サンプルプログラムのhelloworld.cをインポートしてみましょう。

「ファイル→インポート」を選択します。

「インポート・ソースの選択」で、「一般」→「ファイルシステム」を選択、「次へ」をクリック

  1. 「次のディレクトリーから」で、「参照」し、helloworld.cの位置を指定します。(例:C:\cygwin\nxtOSEK\samples_c\helloworld)
  2. 左の四角の中のhelloworldフォルダにチェックを入れ、右の四角の中の、helloworld.c , helloworld.oil , Makefileを選択します。他は不要です。
  3. 「完了」をクリックします。

helloworldプロジェクト内に、3つのファイルがインポートされました。

6.ビルド・アップロード

Eclipse上から、プログラムをビルド(コンパイル)し、NXTに転送してみましょう。

上にあるとんかちのアイコンをクリックします。

下のコンソールタブを選択して、正しくビルドできたか確認しましょう。
「Generating binary image file: helloworld_OSEK.rxe」と表示されていれば成功です。

ビルドが出来たら、NXTにアップロードしてみましょう。
緑の再生マークと工具箱のアイコンの右の黒三角をクリックし、外部ツールの構成を選択します。

左側の囲いの「プログラム」をダブルクリックすると、新規作成できます。
  1. 名前:に、「rxeflash.sh」を設定します。
  2. ロケーション: に、「...cygwin\bin\bash.exe」を設定します。
  3. 作業ディレクトリー:に、「${project_loc}」を設定します。
  4. 引数:に、「./rxeflash.sh」を設定します。

NXTをUSBで接続し、実行してみましょう。コンソールに「helloworld_OSEK.rxe=17728」というような表示がされていれば成功です。
次回から緑の再生マークと工具箱のアイコンをクリックするだけで、アップロードが出来ます。

※補足:黄色い波線の消し方

ソースファイル(.cのファイル)をエディタで開くと、コードの殆どに黄色い波線が引かれてしまいます。
そのままでも支障はありませんが、以下に示すことをすると消すことが出来ます。

  1. プロジェクトを右クリックしてプロパティを選択します。
  2. 「C/C++一般」の白三角をクリックし、「パスおよびシンボル」選択します。
  3. 「インクルード・ディレクトリ」に次のものを追加します。

  4. C:\cygwin\nxtOSEK\lejos_nxj\src\nxtvm\platform\nxt
    C:\cygwin\nxtOSEK\ecrobot\bios
    C:\cygwin\nxtOSEK\ecrobot\c
    C:\cygwin\nxtOSEK\ecrobot\nxtway_gs_balancer
    C:\cygwin\nxtOSEK\toppers_osek\sg
    C:\cygwin\nxtOSEK\toppers_osek\syslib\at91sam7s-gnu\lego_nxt
    C:\cygwin\nxtOSEK\toppers_osek\include
    C:\cygwin\nxtOSEK\toppers_osek\config\at91sam7s-gnu
    C:\cygwin\nxtOSEK\toppers_osek\kernel
    C:\cygwin\nxtOSEK\lejos_nxj\src\nxtvm\javavm
    C:\cygwin\nxtOSEK\ecrobot
    C:\cygwin\nxtOSEK\toppers_osek\config\at91sam7s-gnu\lego_nxt
    C:\cygwin\usr\include

  5. 「OK」をクリック
  6. 何かメッセージが表示されますが、「はい」を選択
  7. プログラムがビルトされ、黄色い波線が消えます。


2.プログラムの転送・実行 TOPへ