如何创建一个可通过Wi-Fi控制Arduino的Android应用程序?

6
我有一块Arduino Mega板。我已经将WiFly模块连接到它上面,并与我的Android手机建立了连接。现在,我想为我的Android制作一个简单的应用程序,在其中按下一个按钮后,Arduino板上的LED会亮起来。
实际上,我已经使用Eclipse制作了一个带有按钮的应用程序,如果我按下它,会弹出一个toast消息,说明按钮已被按下。现在,我该如何将Wi-Fi功能实现到它上面,并使其能够点亮Arduino的LED?
2个回答

3

这取决于Arduino板所期望的输入类型。Arduino文档中是否有关于通过Wi-Fi连接进行通信的说明?我想阅读这些内容可能是一个好的起点。

看起来你可以通过HTTP与Arduino通信,这使得事情变得非常简单。你可以尝试以下快速方法(我没有测试过):

URL url = new URL(arduinoCommandURl);
InputStream is = new InputStreamReader(url.openStream(), "UTF-8"));
is.read();

我已经成功将Wifi连接到Arduino上了。我可以使用手机浏览器打开或关闭LED灯。我只需要在手机浏览器的IP地址末尾添加一个字符串,在Arduino上接收到该字符串时告诉它要做什么。所以这基本上没问题。我只是不明白如何在我的Android应用程序中使用这个概念(或可能是其他适当的概念)。 - Anish
如果所有的信息都通过HTTP发送,则可以从您的应用程序中加载所需的URL。 - slayton
嗯,我有点想通了,但还存在一个问题。我在我的应用程序中按下按钮后,LED灯会亮起来,但是由于我通过HTTP发送信号,所以会打开一个网页。我需要点击返回按钮才能回到我的应用程序。有没有办法可以防止打开网页,而只是通过URL发送信息呢? - Anish
现在稍微松了一口气.. 当我按下按钮时,网页没有打开。命令已经发送,但当我按下另一个按钮时,它没有响应。我认为之前的http命令没有被覆盖。是否有任何方法可以在发送新命令时停止先前的命令? - Anish

1
为了避免重复造轮子,请查看www.pfod.com.au,该网站提供通用的Android应用程序,可通过蓝牙或WiFi控制微型设备,并可选择使用128位安全性。短信控制正在开发中。您在移动设备上看到的内容完全由微控制器代码确定。不需要任何Android编码。
有许多示例项目和免费的pfodDesigner应用程序,可让您设计自己的菜单,然后为您生成Arduino代码,以便在pfodApp上显示菜单。一个pfodApp可以处理您设计的每个菜单。不需要任何Android编码。 pfodApp还可以捕获并绘制以CSV格式发送的数据。同样,图形完全由您微控制器中的代码控制。pfodApp中不需要进行任何更改。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接