最終更新日 平成24年11月30日
まず、Cygwinとrx-elf-gccのインストールが完了している必要があります。
これらが完了している前提でこのページは先に進みます。
こちらのダウンロードページからrxduino-lib(bin)をダウンロードします。今回はC:\に保存します。ダウンロードしたら、tar.gzファイルをコマンドプロンプトから解凍します。
tar xf rxduino-lib.tgz
これで、C:\rxduino-libというディレクトリができました。
RXdunoのアーカイブを解凍すると、次のようなディレクトリが復元されます。
lib --+ 各種のスタティックライブラリ(*.a)が納められています
+- libfatfs.a
RX-ELF-GCC用に移植されたFatFSライブラリです
+- libliquidcrystal.a キャラクタ液晶ライブラリです
+-
libnokialcd.a Arduino用のNokiaLCDライブラリです
+- liboled.a
MARY拡張基板のOLEDライブラリです
+- librxduino.a RXduinoライブラリです
+- libtkdnhal.a
特電HALライブラリです
+- start.o スタートアップコードです
+- fatfs/
RX-ELF-GCC用に移植されたFatFSのソースです
+- liquidcrystal/ キャラクタ液晶ライブラリのソースです
+-
nokialcd/ Arduino用のNokiaLCDライブラリのソースです
+- oled/
MARY拡張基板のOLEDライブラリのソースです
sample --+ 各種のサンプルアプリケーションが納められています
+- adc
RX62Nの内蔵ADCの操作サンプルです
+- AE-GYRO-SMD 秋月電子の圧電振動ジャイロの動作サンプルです
+- common
割り込みベクタなど共通して使われるものが入っています
+- ethercapture イーサネットの通信をキャプチャしてダンプします
+-
fatfs SD/MMCカードの動作サンプルです
+- gpio_hal HAL経由でGPIOを叩くサンプルです
+- gpio_rxduino
RXduino経由でGPIOを叩くサンプルです
+- KXM52 加速度センサKXM52の動作サンプルです
+- liquidcrystal
キャラクタ液晶の動作サンプルです
+- math_and_printf printfや数学関数を使うサンプルです
+- nokialcd
ArduinoのNokiaLCDに長方形をいっぱい描くサンプルです
+- oled MARYのOLED基板に長方形をいっぱい描くサンプルです
+-
rtc RX62Nの内蔵RTCの動作サンプルです
+- serial_hal HAL経由でシリアルポートにアクセスするサンプルです
+-
serial_rxduino RXduino経由でシリアルポートにアクセスするサンプルです
include -+
インクルードファイルが納められています
+- lib 各種ライブラリのインクルードファイルが納められています
+- rxduino
RXduinoのインクルードファイルが納められています
+- tkdnhal HALのインクルードファイルが納められています
core
--+ RXduinoや特電HALのソースコードです
+- rxduino RXduinoのソースコードが納められています
+-
tkdnhal HALのソースコードが納められています
Eclipseをhttp://www.eclipse.org/downloads/からダウンロードします。
赤丸で囲った部分をクリックしてダウンロードします。Eclipseを起動するにはJavaが必要なので、JREを適宜インストールしてください。 |
|
Eclipse.exeを起動したら、ワークスペース(プロジェクトの保存などに使われるディレクトリ)をどこにするかきかれるので、任意に決めます。(マイドキュメントなど) |
|
次に、左上のFile→Otherをクリックします。 |
|
ウィザードが起動したら、MakeFile-をクリックし、選択します |
|
Browseをクリックします。 |
|
rxduino-libを解凍したディレクトリを選択します。この場合はC:\rxduino-libを選択します。 |
|
Finishを押すと、左側のProject Explorerに先ほど追加したディレクトリが出てきます。出てこない場合は、Window→Show View→Project Explorerを選択すると出てきます。 |
この状態で、userapp.cppに何も変更を加えずに、「Project」→「Build All」を実行して、コンパイルしてみます。このとき、エラーが出ないことを確認してください。
もし、コンパイルの際に、
Error: Program "make" is not found in PATH
といわれてしまうようであれば、Cygwinのパスが通っていないので、Cygwinの項を参考にパスを通してください。
エラーが出なければ、これでコンパイルのためのすべての準備が整いました。
作成されたuserapp.elfまたはuserapp.motファイルをRXマイコンボードに書き込みます。
書き込み手順は、RXduinoの書き込み環境の準備を参照してください
#include <stdio.h> #include <rxduino.h> //最初に #include <rxduino.h>と宣言して、 //ライブラリのインクルードを宣言してください。 void setup() //起動時に最初にsetup()関数の中身が1回だけ呼び出されます。 { Serial.begin(9600); //Serial.begin(9600)は、シリアルポート(SCI0)を初期化します。 Serial.println("Start RXduino!"); //Serial.println()関数は、文字列や数字など様々なものをシリアルに出力します pinMode(13,OUTPUT); //pinMode関数は、GPIOの端子の入出力方向を指定します。第一引数は端子の番号。 //第二引数はINPUTまたはOUTPUTと指定します。pinMode関数の詳細はこちらをご覧下さい。 } void loop() //loop()関数の中身は、プログラムの実行中に、無限に繰り返し実行されます。 { delay(500); //delay()関数を使うと、指定した時間(ミリ秒)だけウェイトさせることができます。 //LEDの点滅の速度を調整する場合などに用います。詳しくはこちらをご覧下さい。 digitalWrite(13,LOW); //GPIOに値をセットします。第一引数は端子の番号。 //第二引数はLOWまたはHIGHを指定します。詳しくはこちらをご覧下さい。 delay(500); digitalWrite(13,HIGH); for(int i=0;i<256;i++) { analogWrite(4,i); //PWMを使ってアナログ出力ポートから値を出力。ピン番号は4,5,6,7が選択できます。 //現在この機能はRaXino限定機能です。 analogWrite(5,255-i); analogWrite(6,i); analogWrite(7,255-i); delay(1); } for (int i=0;i<256;i++) { analogWrite(4,255-i); analogWrite(5,i); analogWrite(6,255-i); analogWrite(7,i); delay(1); }
コンパイルするときに前節までの手順でインストールしたrx-elf-gccを指定する必要があります。具体的にはmakefileの最初の5行の書き換えをします。
もし、rx-elf-gccを別のフォルダに用意した場合CCPATHを変更してください。
デフォルトの状態では
CCPATH = /cygdrive/c/cygwin/usr/local/tkdn-20110720/rx-elf/bin/
となっています。C:\は/cygdrive/c/と表記してください。またバックスラッシュ「\」は避けてください。フォルダ名に2バイト文字、スペースが含まれていると、動作しないことがあります。