1

Android用の拡張ボードとしてUSBOTGボードを設計しています。ボードはFreescaleKL25Z128VLK4に基づいています。デザインの大部分はSparkfunのIOIOに似ていますが、いくつかの拡張機能があります。

  1. Androidフォン(Galaxy Nexus)からKL25ZボードにOTGケーブルを接続することにより、AndroidはUSBホストとして機能し、KL25ZはデバイスB(CDC)として機能します。
  2. OTGケーブルを逆接続することにより、AndroidはAOA / ADK / ADBモードで動作し、KL25ZはVBUSを供給し、Androidに電流を充電します。

現在の設計では、役割のホスト/デバイスの切り替えは、ケーブル接続を交換して手動で行う必要があります。ただし、後者の場合、KL25ZがAndroidに十分な電流を供給できない場合、KL25Zはホストの役割をAndroidに引き継ぐため、5V / 500mAの主電源をオフにでき、AndroidのVBUSで低電力モードで動作します。

とにかく、私は私のボードがホスト/デバイス間の切り替えモードとAndroidでのサポートをサポートすることを望んでいます。

原則として、OTGでA/Bを切り替えるにはHNPプロトコルを開始する必要があります。ただし、Android側での処理方法がわかりません。Android SDKがプログラムでHNPをどのようにサポートしているかわからないということですか?関係するAPIはありますか?ドキュメント、ラボ、オープンプロジェクトはありますか?

4

1 に答える 1

1

現在のところ、HNPプロトコルはAndroidではサポートされていません。これを行う唯一の方法は、ボード上のUSBスタックをリセットし、モードを切り替えるたびに列挙することです。

于 2013-05-14T20:47:31.190 に答える