要么为您的Android手机构建串行电缆,例如G1的此电缆http://www.instructables.com/id/Android-G1-Serial-To-Arduino/。
要么为您的Arduino添加蓝牙模块,
或者使用Arduino的以太网盾并通过TCP / IP连接。
使用哪种取决于您的项目和预算。我不知道除G1之外的其他手机是否存在串行电缆选项。蓝牙模块的优点是对于Arduino和手机都是无线的,而使用以太网盾,您可以通过在防火墙上使用端口转发来使Arduino全球可访问。
自从Amarino成立以来,我一直在使用它,而且从未遇到过任何问题。然而,由于我只使用了一个项目,因此我没有其他项目的经验。
这是我最喜欢的两个开源设备。不加入iPhone的行列,真是太好了。当有人采取主动去超越时,我真的感到很高兴,因为这表明你考虑了长远。大多数人都不会这样做。
你的选择似乎只能通过串行接口或蓝牙连接两者(我猜你可能需要一个蓝牙模块或类似的东西)。互联网上有很多关于如何设置Arduino与这两种方式连接的资源。
你也可以在Arduino上设置一些基本的服务器,并通过控制台、手机上的特定界面或者基于Web的界面与之交互。似乎有相当多的机器人设计是由Android/Arduino控制的,你可以看看这些。
如果没有更多关于连接后你打算做什么的想法,很难给出更具体的建议。不过,如果你对Android手机进行了Root,就可以在上面安装一个精简版的Debian系统,然后使用apt-get命令安装各种软件包。考虑到这一点,将Arduino连接到计算机和连接到Android手机之间几乎没有什么区别。
[编辑]: 如果没有其他办法,你可以制作一个基于Arduino的这样一个项目:Android Controlled Statue。
我之前听说过有人尝试通过USB实现这个功能,但他们指出问题在于Android不完全支持USB主机。如果这是唯一的问题,似乎很容易就能移植USB主机驱动程序!?!也许我把它简化了。
我喜欢Nikolaus的回答。 我认为连接的最佳方式是在Arduino中编写TCP/IP服务器(可以在互联网上轻松找到示例),并使用以太网盾(约10美元)或Wifi盾(约10美元)。两种解决方案的TCP/IP服务器使用相同的代码,唯一的区别是INIT。
移动性:如果您需要让Arduino移动,请购买Wifi盾。
静态:如果您处于静态状态,并且只想从Android手机控制,请使用ETH盾(成本较低)。
Adrian