这是我的页面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的默认设置),它不起作用。
答案 0 :(得分:0)
您需要配置调制解调器/路由器以将外部流量从端口80(或更好地使用其他端口)传递到192.168.4.1:80
- 您如何执行此操作取决于调制解调器/路由器。
寻找&#34;端口转发&#34;或类似的调制解调器/路由器的管理Web界面。
答案 1 :(得分:0)
我刚刚使用上面的按钮代码,我只需要将esp8266连接到实际的wifi网络(启用互联网)并知道其IP地址(AT + CIFSR)。我的PC上有一个网络服务器,我可以通过esp控制arduino。 (我正在切换电器)