SHARE
TWEET

Untitled

valmorjovito Apr 10th, 2019 48 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. #include <ESP8266WiFi.h>
  2. //#include "ESP8266WebServer.h"
  3.  
  4.  
  5. const char* ssid = "#####"; // Nome da Rede
  6. const char* password = "#####";//Password da rede
  7.  
  8. //DEFINIÇÃO DE IP FIXO PARA O NODEMCU
  9. IPAddress ip(192,168,0,175); //COLOQUE UMA FAIXA DE IP DISPONÍVEL DO SEU ROTEADOR. EX: 192.168.1.110 **** ISSO VARIA, NO MEU CASO É: 192.168.0.175
  10. IPAddress gateway(192,168,0,1); //GATEWAY DE CONEXÃO (ALTERE PARA O GATEWAY DO SEU ROTEADOR)
  11. IPAddress subnet(255,255,255,0); //MASCARA DE REDE
  12. WiFiServer server(80);//Porta 80
  13.  
  14. int saida1=D5;
  15. int saida2=D6;
  16. int value1 = LOW;
  17. int value2 = LOW;
  18.  
  19.  
  20. void setup() {
  21.  
  22.   pinMode(saida1,OUTPUT);// Define o D5 como saída
  23.   //digitalWrite(ledPin1,LOW);//O LED começa desligado
  24.   pinMode(saida2,OUTPUT);//Define o D6 como saída
  25.   //digitalWrite(ledPin1,LOW);//O LED começa desligado
  26.  
  27.   Serial.begin(115200);
  28.   Serial.println();
  29.   Serial.print("tentando conexão ");
  30.   Serial.println( ssid );
  31.  
  32. WiFi.begin(ssid, password); //PASSA OS PARÂMETROS PARA A FUNÇÃO QUE VAI FAZER A CONEXÃO COM A REDE SEM FIO
  33. WiFi.config(ip, gateway, subnet); //PASSA OS PARÂMETROS PARA A FUNÇÃO QUE VAI SETAR O IP FIXO NO NODEMCU
  34.  
  35.  
  36.  
  37.   Serial.println();
  38.   Serial.println("Conectando");
  39.  
  40.   while( WiFi.status() != WL_CONNECTED ){//Enquanto a ligação não for efectuada com sucesso apresenta a mensagem, tentando conectar
  41.       delay(500);
  42.       Serial.println("tentando conectar…");        
  43.   }
  44.  
  45.   Serial.println();
  46.   Serial.println("Conectado com sucesso!");//Se a ligação é efectuada com sucesso
  47.   Serial.print("Endereço IP : ");
  48.   Serial.println(WiFi.localIP() );
  49.  
  50.   server.begin();// Comunicação com o servidor
  51.   Serial.println("Servidor iniciado");
  52.   Serial.print("Use esse IP para se conectar ao servidor ");
  53.   Serial.print("http://");
  54.   Serial.print(WiFi.localIP());//Abrindo o Brower com este IP acedemos á pagina HTML de controlo dos LED´s, sendo que este IP só está disponível na rede à qual o ESP8266 se encontra ligado
  55.   Serial.println("/");
  56. }
  57. void loop() {
  58.    
  59.   WiFiClient client = server.available();// Verificação se o cliente está conectado
  60.   if (!client) { return; }
  61.  
  62.   // Espera até o cliente enviar dados
  63.   Serial.println("Hello New client");//Apresenta esta mensagem quando o cliente se liga ao servidor
  64.   while(!client.available()){
  65.     delay(1); }
  66. // Ler a primeira linha do pedido
  67. String  request = client.readStringUntil('\r');
  68.   Serial.println(request);
  69.  
  70. // Operação do pedido
  71.   if (request.indexOf("/LED1=ON") != -1)  {
  72.     digitalWrite(saida1, HIGH);// Se o pedido no LedPin1 for LED=ON, acende o LED
  73.     value1 = HIGH; }
  74.  
  75.   else if (request.indexOf("/LED1=OFF") != -1)  {
  76.     digitalWrite(saida1, LOW);// Se o pedido no LedPin1 for LED=OFF, apaga o LED
  77.     value1 = LOW; }
  78.  
  79.   if (request.indexOf("/LED2=ON") != -1)  {
  80.     digitalWrite(saida2, HIGH);// Se o pedido no LedPin2 for LED=ON, acende o LED
  81.     value2 = HIGH; }
  82.  
  83.   else if (request.indexOf("/LED2=OFF") != -1)  {
  84.     digitalWrite(saida2, LOW);// Se o pedido no LedPin2 for LED=OFF, apaga o LED
  85.     value2 = LOW;}
  86.  
  87.  
  88.  
  89.  // Inicialização da página HTML
  90. // Retorno do resposta
  91.   client.println("HTTP/1.1 200 OK");
  92.   client.println("Content-Type: text/html");
  93.   client.println(""); //não esqueça esse aqui
  94.   client.println("<!DOCTYPE HTML>");         //inicio html
  95.   client.println("<html>");
  96.   client.println("<head>");
  97.  // client.println("<meta name=\"viewport\" content=\"width=device-width, user-scalable=no\"/>");
  98.   client.println("<title>Acionamento remoto</title>");   // da o titulo da aba
  99.   client.println("<style type=text/css>"); // estilo css
  100.  // client.println("<body style=height:100%; width:100%;>");
  101.   //client.println("body{"); // inicio do corpo da imagem de fundo não esquecer do {
  102.  
  103.   //client.println("background: url(https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcRE4_yFuDoeyA1kIWW7p6b9tMIJo21aIX8c1TFKyfYsLLFgJ4aC");// define a imagem de plano de fundo
  104.  //client.println("no-repeat"); // não repete a imagem de fundo
  105.  // client.println("700px 100px}"); // define a posição da imagem de fundo  não esquecer do }
  106.   client.println("</style>"); // fim do estilo da imagem de fundo
  107.  
  108.   client.println("</head>");//final do head
  109.   client.println("<body style=background-color:#ADD8E6>"); //DEFINE A COR DE FUNDO DA PÁGINA
  110.   client.println("<body>");//inicio do body
  111.   client.println("<h1>Monitoramento Remoto</h1>");
  112.  
  113.  
  114.   client.print("Estado da saida 1: ");
  115.   if(value1 == HIGH) {// Se está ligado apresenta “on”
  116.     client.print("ligado");
  117.   } else {
  118.     client.print("desligado");// Se está desligado apresenta “Off”
  119.   }
  120.   client.println("<br><br>");
  121.   client.println("<a href=\"/LED1=ON\"\"><button>ligar </button></a>");// Ligar o LED1 corresponde Turn On
  122.   client.println("<a href=\"/LED1=OFF\"\"><button>desligar </button></a><br />"); // Desligar o LED1 corresponde Turn Off
  123.   client.println("<br><br>");
  124.  
  125.    client.print("Estado da saida 2: ");
  126.   if(value2 == HIGH) {// Se está ligado apresenta “on”
  127.     client.print("ligado");
  128.   } else {
  129.     client.print("desligado");// Se está desligado apresenta “Off”
  130.   }
  131.   client.println("<br><br>");
  132.   client.println("<a href=\"/LED2=ON\"\"><button>ligar </button></a>");// Ligar o LED2 corresponde Turn On
  133.   client.println("<a href=\"/LED2=OFF\"\"><button>desligar </button></a><br />"); // Desligar o LED2 corresponde Turn Off
  134.  
  135.   client.println("<br><br>");
  136.  
  137.   client.println("<meta http-equiv=refresh content=5;URL='//192.168.0.175/'>");// atualiza a pagina a cada 5s
  138.   client.println("</body>");//fim do body
  139.   client.println("</html>");//fim do html
  140.  
  141.  
  142.   delay(1);
  143.   Serial.println("Cliente desconectado");
  144.   Serial.println("");
  145.  
  146.  
  147.  
  148.  
  149.  
  150.  
  151. }
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
 
Top