GR-SAKURA ではじめる ADK
GR-SAKURA は「がじぇっとるねさす」という、ルネサスと若松通商のコラボで産まれたArduino ピン互換のマイコンボードです。MCU はRX63N (R5F563NBDDFP)を使用しています。
最大の特徴は、、、基板が桜色です。
プログラムの作成は、Arduino と同じ文法で書ける Web コンパイラ(無償)を使用します。
Arduino の標準ライブラリも Web コンパイラに移植されているため、Arduino と同じように使える、より高機能なマイコンボードになっています。(まだまだ発展途中ですが、、、)
ADK に必要なUSB ホスト機能もMCU に内蔵しているため、ADK ボードとして使用できます。
プログラムの転送は、USB Mass Strage(USB メモリと同じ)としてマウントし、通常のファイル操作で書き込めばOK です。
* * *
1. ハードウェアの準備
GR-SAKURA には、現在「GR-SAKURA」と「GR-SAKURA FULL」の2種類のボードがありますが、ボード自体に違いはなく、コネクタが実装されているかどうかの違いです。
USB Host のコネクタはGR-SAKURA FULL には付属していますが、はんだづけは自分で行います。
GR-SAKURA(無印) の場合は、コネクタは自分で調達します。秋月のこれが適合します。
(下の図の用に、裏面に取り付けます。ひねくれ者はこんな感じで付けます。)
USB ホスト機能を使用するには、ハンダによるジャンパの接続が必要です。
(ジャンパ設定の一覧:http://www.renesasrulz.com/message/18411)
(GR-SAKURA用 ADK ライブラリ開発者のAkagawa さんの資料 (@OSC Kyoto 2012) より)
ADK はUSB ホストとして動作するため、外部電源も必要です。
GR-SAKURA には5V のレギュレータはないため、外部電源の電圧がそのままUSB に出力されます。必ず、5V安定化出力の AC アダプターを使用して下さい。(1A 以上のアダプタを推奨)
* * *
2. ADK ライブラリの導入
ADK を使用するための ライブラリはこちらからDL します。
(この記事を書いた時点での最新版は v1.1 (2013/1/5)です。最新情報はRenesas Rulz へ)
Web コンパイラで新規のプロジェクトを作成し、ライブラリのファイルを取り込みます。
ダウンロードしたZip ファイルを解凍せずに、「zip ファイルインポート」という機能を使うと簡単です。
ADK プロジェククトの作り方
1) 新規のプロジェクトを作成
2) ライブラリのアップロード(zip ファイルインポート)
zip ファイルインポート(Project_Root で右クリックしてメニューを出す)
3) サンプル(HelloADK.txt) を開く
AndroidAccessory > examples > HelloADK.txt を開きます。
ファイルの中身を全て選択し、コピーします。
4) gr_sketch.cpp を編集
もとからある スケッチファイル(gr_sketch.cpp) を開き、すべてを選択、先ほどコピーしたHelloADK.txt の内容をペースト。
Web コンパイラーのテンプレート(1) で選択したもの)が V1.01の場合、
21 行目のコメントアウトを外します(行頭の// 削除)。
(この手順はV1.02 以降は不要です。)
5) ビルド & ダウンロード
・上部メニューの [ビルド] を押して、コンパイルを実行します。
・コンパイルに成功すると、左側に sketch.bin というファイルが作成されます。
・sketch.bin をダウンロード(右クリックしてメニューを実行)して、GR-SAKURA に転送します。
プログラムの作成〜転送はこちらの動画が参考になります。(@carcon999 さん作)
* * *
3. Android 端末の接続とアプリのダウンロード
GR-SAKURA にAC アダプタを接続し、USB ホストコネクタ経由で Android 端末を接続します。
Android 端末がADK に対応したものであれば、次のようなダイアログが出ます。
このダイアログは、アプリ配布先のURL になります。GR-SAKURA のプログラムに設定してあります。ダイアログにしたがって、Google Play から HelloADK をダウンロードしてください。
4. HelloADK アプリの実行
アプリがインストールされた状態で、ADK ボードの接続を行なうと、
アプリを起動するダイアログが表示されます。
HelloADK の機能は
On/Off スイッチ(上): GR-SAKURA のLED0 のOn/Off
On/Off スイッチ(下): GR-SAKURA のSW1(青いボタン)に反応
スライダー: GR-SAKURA のLED1 の明るさを調整(PWM 出力)
となっています。
HelloADK が動作しているところはこちら (YuuichiAkagawa さん作)
このアプリは Android とADK ボードの通信がうまくいっているかを確認するのが主な目的です。
ソースコードはこちらで公開されています。
さあ、これで GR-SAKURA でADK をはじめることが出来ました!