2011-08-03 58 views
14

显然,Android 2.3.4和3.1现在可以访问USB配件。Android USB主机到串行连接?

我有一个Ardupilot兆(基于Arduino)板USB电缆连接到我的笔记本电脑,我可以连接到它使用COM7和115,200波特率的简单串行通信程序。这允许我进入命令行界面,并且我可以发出命令并获取日志。

是否可以编写一个Android应用程序,通过USB通信到我的Ardupilot Mega板?

我见过很多类似的线程,但其中大部分都是预USB主机。

+1

我发现https://github.com/ksksue/FTDriver及其继承人https://github.com/ksksue/PhysicaloidLibrary这是专门为arduinos构建的。 – Bergi

+3

还有https://github.com/felHR85/UsbSerial – Bergi

+0

@Bergi,github.com/felHR85/UsbSerial ..这个例子非常好,谢谢,我试过同样的例子,我没有在EditText中得到正确的值,董事会通过USB发送什么,你能告诉我理由吗? – kgsharathkumar

回答

0

也许吧。查看Android Open Accessories announcement on the Android Developers Blog。 Arduino Mega ADK兼容。不知道Ardupilot巨型。

从他们的网页:

而Android 3.1平台(也向后移植到Android 2.3.4)推出 Android开放配件支持,允许外部USB硬件( 的Android USB附件)给具有互动Android设备支持 特殊“附件”模式。当Android供电的受电设备处于附件模式时,所连接的附件将作为USB主机(为总线供电 并枚举设备),并且由Android驱动的设备将作为USB设备的 。 Android USB配件专门设计用于连接到支持Android设备的 ,并遵循简单的协议 (Android配件协议),该协议允许他们检测支持配件模式的支持Android的设备 。附件必须 也提供500mA的5V充电电源。许多以前发布的 Android设备仅支持USB设备,并且 无法启动与外部USB设备的连接。 Android Open 附件支持克服了此限制,并允许您通过允许附件启动连接来构建 附件,这些附件可以与各种支持Android的设备 进行交互。

注:配件模式最终取决于设备的硬件 ,并非所有设备都支持配件模式。支持 配件模式的设备可以使用您的 相应应用的Android清单中的“uses-feature”元素进行过滤。有关更多信息,请参阅USB配件开发指南 。

下面的分销商的目前生产Android的名单 打开附件兼容的开发板:

Arduino的商店提供的Arduino巨型ADK(在欧盟国家或 非欧盟国家),其是基于ATmega2560并支持ADK 固件。 DIY无人机提供了一个面向RC(无线电遥控)和无人机(无人飞行器) 爱好者的面向Arduino的兼容主板 。 Microchip提供基于PIC的USB微控制器板。 现代设备提供了一个Arduino兼容板,支持 ADK固件。 RT Corp提供基于Android ADK板设计的基于 的Arduino兼容板。 Seeed Studio提供支持ADK固件的支持Arduino的 板。SparkFun的 IOIO板现在已经支持ADK固件测试版。

+0

是的,但它把android设备变成一个usb accesory,而且Arduino板需要播放主机,需要一个适配器等等。我确信有一个简单的方法可以让串行通讯在usb主机模式下运行。 –

0

您可以查看Slick USB 2 Serial Library中描述的库。

它使普通的USB到串口适配器能够与不需要root的USB主机模式的Android设备一起工作。

+1

发布的链接已损坏。 – Rachael

14

usb-serial-for-android是我的开源库,正是为了这个需求而写的。它支持使用Android的USB主机支持的FTDI和CDC-ACM USB串行设备;没有根或ADK必要。它可以谈论大多数Arduinos。

该项目还处于初期阶段,但基本支持对于多个项目已经运行得很好。还有一个discussion list你可以得到帮助。

+0

是否有任何适用于CDC/ACM设备的源代码示例? – Machado

+2

不幸的是,LGPL许可证使其对大多数项目而言无法使用。 –

-1

http://slickdevlabs.com/

我目前使用的库在自己的应用程序,但我认为你可以只是华而不实的在市场上的应用脱身。有两个免费的应用程序,其中一个是免费应用程序的“专业版”。在Google Play中搜索slick usb。

它确实使用HOST模式,您可以根据需要更改波特率。

+0

不幸的是,链接已经死亡 –