0
我正在設計一個USB OTG板作爲Android的擴展板。該電路板基於飛思卡爾KL25Z128VLK4。設計的大部分與Sparkfun的IOIO類似,但有一些擴展。如何在Android中切換USB模式?
- 通過從Android手機(Galaxy Nexus的)連接OTG電纜KL25Z 板,機器人充當USB主機和KL25Z充當設備B(CDC)。
- 通過反向連接OTG電纜,Android工作在AOA/ADK/ADB模式, 和KL25Z爲VBUS提供電源併爲Android充電。
在當前的設計中,交換角色主機/設備必須通過交換電纜連接手動完成。然而,後一種情況下,如果KL25Z無法提供足夠的Android電流,KL25Z會將主機角色移交給Android,因此可以關閉5V/500mA的主電源,並且可以使用Android的VBUS以低功耗模式工作。
無論如何,我希望我的主板支持HOST/Device之間的切換模式,以及Android中的支持。
原則上,應該啓動HNP協議來切換OTG中的A/B。但是,我不知道如何在Android端處理它。我的意思是我不知道Android SDK如何以編程方式支持HNP?涉及的任何API?任何文件,實驗室和開放項目?
你的意思是,手動切換我的主板和Android設備之間的電纜? – 2013-07-12 02:32:14
您不需要切換電纜。您可以將USB OTG ID引腳綁定到gpio。所以當你想讓手機主機將ID引腳接地並重置KL25Z上的usb堆棧時。這需要修改一些電纜。 – Jason 2013-08-04 05:55:00