如何通过ESP8266模块将数据从网页发送到Arduino UNO?

时间:2015-09-25 12:36:32

标签: jquery arduino-uno esp8266

这是我的页面HTML代码。我在这里使用过JQuery。                           ESP8266 LED控制              

<!-- in the <button> tags below the ID attribute is the value sent to the arduino -->

<button id="11" class="led">Toggle Pin 11</button> <!-- button for pin 11 -->
<button id="12" class="led">Toggle Pin 12</button> <!-- button for pin 12 -->
<button id="13" class="led">Toggle Pin 13</button> <!-- button for pin 13 -->

<script src="jquery.min.js"></script>
<script type="text/javascript">
    $(document).ready(function(){
        $(".led").click(function(){
            var p = $(this).attr('id'); // get id value (i.e. pin13, pin12, or pin11)
            // send HTTP GET request to the IP address with the parameter "pin" and value "p", then execute the function
            alert("Sending Get Request");
            $.get("http://192.168.4.1:80/", {pin:p}); // execute get request
        });
    });
</script>
</body>
</html>

当我将电脑连接到ESP8266的wifi时,我可以控制连接的LED。但我想通过互联网来控制它。 ESP8266模块连接到我的调制解调器的wifi,但我不知道如何在HTML页面的$.get()方法中编写,以便通过web将请求发送到arduino。我试图把我的调制解调器的公共IP地址而不是192.168.4.1(这是ESP8266的默认设置),它不起作用。

2 个答案:

答案 0 :(得分:0)

您需要配置调制解调器/路由器以将外部流量从端口80(或更好地使用其他端口)传递到192.168.4.1:80 - 您如何执行此操作取决于调制解调器/路由器。

寻找&#34;端口转发&#34;或类似的调制解调器/路由器的管理Web界面。

答案 1 :(得分:0)

我刚刚使用上面的按钮代码,我只需要将esp8266连接到实际的wifi网络(启用互联网)并知道其IP地址(AT + CIFSR)。我的PC上有一个网络服务器,我可以通过esp控制arduino。 (我正在切换电器)