2015-09-25 2 views
2

Вот мой код HTML для этой страницы. Я использовал JQuery здесь. управления ESP8266 LED Как отправить данные с веб-страницы в Arduino UNO через модуль ESP8266?

<!-- 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> 

Когда я подключить ПК к Wi-Fi в ESP8266, я могу контролировать светодиод, подключенный на него. Но я хочу контролировать это через Интернет. Модуль ESP8266 подключен к модему моего модема, но я не знаю, как писать в методе $.get() на странице HTML, чтобы запрос был отправлен в arduino через Интернет. Я попытался поставить публичный IP-адрес моего модема вместо 192.168.4.1 (который по умолчанию для ESP8266) он не работает.

+1

Вам необходимо настроить свой модем/маршрутизатор для передачи внешнего трафика с порта 80 (или лучше использовать другой порт) на «192.168.4.1: 80' - как вы это сделаете зависит от модема/маршрутизатора и действительно не соответствует теме переполнения стека. Но ищите «переадресацию портов» или подобное в вашем веб-интерфейсе администратора модема/маршрутизатора. – CupawnTae

+0

Спасибо! это сработало. – user3035457

+0

добро пожаловать. Полагаю, возможно, это может быть полезно для других и может быть рассмотрено по теме, поэтому я разместил его в качестве ответа. Я позволю другим решить, хотят ли они закрыть вопрос как не по теме, но по крайней мере он работает на вас :) – CupawnTae

ответ

0

Вам необходимо настроить модем/маршрутизатор для передачи внешнего трафика с порта 80 (или лучше использовать другой порт) на 192.168.4.1:80 - как вы это сделаете, будет зависеть от модема/маршрутизатора.

Ищите «переадресацию портов» или подобное в вашем веб-интерфейсе администратора модема/маршрутизатора.

0

Я только что использовал код кнопки выше, мне нужно было только подключить esp8266 к реальной сети Wi-Fi (интернет включен) и узнать его IP-адрес (AT + CIFSR). У меня есть веб-сервер на моем ПК, и я могу управлять arduino через esp. (я переключаю приборы)