ArduinoライクなAndroid3.1用FTDIドライバAPI公開
AndroidとUSBシリアル通信させるためのドライバAPIです。
前回のコードからドライバ部分だけ切り離して
Arduinoライクなすっきりとしたインタフェースにしてみました。
2011/11/19 githubにプロジェクト移しました。
https://github.com/ksksue/FTDriver
Source Code - http://dl.dropbox.com/u/3858050/hatena/FTDriver.zip
※現在Android神戸支部さんのSVNリポジトリをつかってメンテさせていただいています。
最新のソースはこちらで手に入れてください。
チェックアウト方法
http://code.google.com/p/android-jp-kobe/source/checkout
ソースツリー
http://code.google.com/p/android-jp-kobe/source/browse/#svn%2Ftrunk%2FFTDriver
更新履歴
http://code.google.com/p/android-jp-kobe/source/list
動作確認環境
- Android : ICONIA A500 (Android 3.1以上、USB Host Portを有すること)
- FTDI Chip : FT232RL (秋月、sparkfunのモジュールなどで動作確認)
- Baudrate :
only 96009600〜230400bps
サンプルコード
- FTSampleTerminal : シンプルなターミナル
- FTSerialCSV : CSVでシリアル通信させたサンプルコード。奈良高専の教育事業Genet(www.genet-nara.jp)で使用されている教育ボードと繋いだ際に使用。
Genetブース@ET2011
その他
- root権限は必要ありません。
APIハイライト
new
mSerial = new FTDriver((UsbManager)getSystemService(Context.USB_SERVICE));
initialize
mSerial.begin(9600);
n byte read
byte[] rbuf = new byte[60];
len = mSerial.read(rbuf);
1 byte write
byte[] wbuf = new byte[1];
len = mSerial.write(wbuf);
n byte write
byte[] wbuf2 = new byte[64];
len = mSerial.write(wbuf2,64);
Close
mSerial.end();
とりあえずこれだけ揃ってれば大抵のことはできると思う。
簡単なテストしかしていないので暫定版として公開しますが、
なにか様子がおかしいようであれば
ここにコメントもしくはTwitter @ksksue にメンションください。
またAndroid x 組込み 興味ある方は気軽にフォローしてください。