Android(9)タブレットからFT312にUartで送信


 AndroidタブレットからFT312にUartで送信しました。受信は、パソコンのTeraTermです。
 Androidタブレットのプログラムは、次のものを参考にました。
 ・プログラム全体とスイッチ処理の一部は、「Android ADK プログラミング&電子工作バイブル」 ソシム社 Chap3.8 を参考
 ・スイッチ処理の一部は、FTDI社サンプルプログラム「UARTLoopback」を参考

●概略構成と振る舞い

 次の図は、概略構成と実験の状況とタブレットの操作面です。

 




 タブレットとFT312間の通信をUSBモニタでモニタしています。





 タブレットの操作面です。
 上の3つのボタンの制御は、FTDI社のサンプルプログラム「UARTLoopback」を参考に作成しました。何故か、異常停止します。折を見て調べる予定です。

 朱○の2つのボタンの制御は、「Android ADK プログラミング&電子工作バイブル」 ソシム社 Chap3.8 を参考に作成しました。これは、正常に動作します。上から4個目のボタンは、FT312をConfigします。上から6個目のボタンは、0と1を交互に出力するトグルボタンです。







●動作概要

  タブレットの上から6個目のボタンを繰り返し押下しました。
  パソコンのTeraTermに 1と0が交互受信しました。





 USBモニタで、タブレットとFT312間の通信をモニタした画面です。Configに続いて、1と0が交互に有ります。







●タブレットプログラム


 主要なプログラムを下に置きます。

 ・AndroidManifest.xml
 ・Ft31xUart.java  取り扱いが容易と考えファイル名を「Ft31xUart.txt」にしています。
 ・main.xml
 ・accessory_filter.xml


■USBAccessoryAPIについて

 USBAccessoryAPIは、「プラットフォームAPI」と「アドオンライブラリ」の2種あります。私は、次の本でしりました。
 伊藤著「Android×Arduinoでつくるクラウド連携デバイス」 2.3.2章

 この本から、次の事が判りました。
 ・Android ADK プログラミング&電子工作バイブル :アドオンライブラリ
 ・FTDI社サンプルプログラム「UARTLoopback」      :プラットフォームAPI
 と云う事は、単純に合成出来ない事と、SDKバージョンに注意が必要です。

 「Android ADK プログラミング&電子工作バイブル」 ソシム社 Chap3.8 を参考にプログラムを作成する時、次の様な設定をしてしまいました。これで、非常に悩みました。
 注意点:最少必須SDKもターゲットSDKも次でコンパイルも全て、API10に設定しなければならないのです。

 これで、プログラムコードが勝手に修正されてしまし、訳が判らなくなったのです。
 具体的には、
 import com.android.future.usb.UsbAccessory; ⇒ import android.hardware.usb.UsbAccessory;
 import com.android.future.usb.UsbManager;  ⇒ import android.hardware.usb.UsbManager;

 import android.R が勝手に挿入されてします。
 import android.Rは、削除してもすぐに挿入されて、イタチごっこです。

 対策は、新規にプロジェクト作り直した事です。
 その時の注意点は、SDKバージョンをAPI10 Android2.3.3にする事です。







 沢山ボヤキを云いたいが、一つに絞ると「はやく安定したコンパイラを提供してくれ!
 


ホームへ戻る