如何编写Arduino草图和Android应用程序以通过标准USB电缆相互通信?


Answers:


6

Android设备通常没有USB主机:它们希望连接到某些更智能的设备,例如您的计算机。Arduino也是如此。因此,Arduino制造了Mega ADK(即附件开发套件)。

Mega ADK和Due作为USB主机,可以直接连接到您的Android手机。如果您已经有了开发板,则另一种选择是获得USB主机屏蔽以添加USB主机功能。

您的草图将告诉电话它是哪种附件应用程序,并且您的电话将从商店中下载适当的应用程序。

有一本关于将Arduino连接到Android的书。


从微型USB到USB-A主机都有转换器。
apnorton 2014年

@anorton是的:这些是​​OTG电缆...请参阅我的帖子。
匿名企鹅2014年

这个答案的前提在它发布之前已经过时了-大多数现代的android设备旨在支持USB主机,尽管在某些情况下,这种设计的某些古怪之处使它不堪一击。
克里斯·斯特拉顿

3

您从未提到您的平板电脑模型...或Arduino模型

有些平板电脑设计用于USB闪存驱动器和打印机。这就是所谓的OTG(随时随地。

你需要:

  • 支持OTG的平板电脑
  • 适用于平板电脑USB插槽且兼容的OTG适配器
  • Arduino Uno Communicator应用程序
  • Arduino Uno(或克隆)[注意:它说它可以与编程为USB到串行转换器的Atmega16U2或Atmega8U2一起使用,因此我认为它比Uno覆盖的板数更多。)

另一个选择是研究蓝牙(注意:我只是选择了一个随机链接,但有数百个类似的BT适配器)


请注意,标准的Android USB主机模式支持具有任何操作系统功能的闪存驱动器(尽管一些供应商提供的功能)-而是,它向应用程序代码公开了相当原始的USB主机API。
克里斯·斯特拉顿

2

USB协议要求一端为“主机”,另一端为“外围设备”,如果电缆两端的设备均为“外围设备”,则该协议不起作用。las,大多数Arduino和许多早期的Android设备都是“外围设备”,因此无法使用标准USB电缆连接此类设备。

一些现代的Android设备支持“ OTG”,因此从理论上讲,可以将Android电缆的末端作为“主机”。有没有人得到这个工作?

另一种方法是使电缆的Arduino端成为“主机”,而使电缆的Android端成为“外围设备”。那就是

(Amarino (a)和Cellbots (a) (b)采取了另一种完全不同的方法)。


1

处理是开始进行设备间通信的好地方。

接口和语言与Arduino非常相似,并且有许多示例可以帮助您入门。

http://playground.arduino.cc/接口/处理


2
可以在Android上运行吗?
匿名企鹅2014年

@AnnonomusPerson是的,正在为Android处理
Faux_Clef

@Faux_Clef Hmm不知道这一点。我仍然不知道它是否最适合Android,您发布的链接似乎不太稳定...我知道处理具有USB支持,但我不知道您是否可以在Android上做到这一点...
匿名企鹅

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.