|     Inicio    |   |         |  |   FOROS      |  |      |      
   Elastix - VoIP B4A (Basic4Android) App inventor 2 PHP - MySQL
  Estación meteorológica B4J (Basic4Java) ADB Shell - Android Arduino
  Raspberry Pi Visual Basic Script (VBS) FireBase (BD autoactualizable) NodeMCU como Arduino
  AutoIt (Programación) Visual Basic Cosas de Windows Webs interesantes
Translate:
Búsqueda en este sitio:


.

Tutorial del Internet de las Cosas y Bluetooth con el ESP32
Juan Antonio Villalpando

Volver al índice del tutorial

____________________________

108B.- Wemos D1 R32 ESP32. Servidor web. Página web. Botón y LED. Bloques.

- Vamos a crear el código con Bloques.

- En el tutorial anterior vimos cómo podemos crear una aplicación para encender/apagar un LED desde una página web. Creamos todo el código textualmente.

- Existen varias web y algunos programas instalables con los que podemos crear el código mediante bloques.

- Por ejemplo:

- Facilino: http://roboticafacil.es/facilino/blockly/Facilino.html

- Arduinoblocks: http://arduinoblocks.com

- EasyCode: http://easycoding.tn/esp32/demos/code/ (Vídeo Tutoriales)

______________________________
- Vamos a ver un ejemplo con este último, EasyCode:

- Entramos en: http://easycoding.tn/esp32/demos/code/

[Esta es la versión para ESP8266: http://easycoding.tn/tuniot/demos/code/]

______________________________
- Características.

- Cuando cambias los bloques automáticamente cambia el código de Arduino.

- Al revés no puedes, es decir No puedes cambiar el código de Arduino para que se actualicen los bloques.

- Puedes guardar el código en .ino.

- Si quieres guardar los bloques para más adelante volverlos a cargar, deber guardarlo en archivo de tipo XML.

- Para recuperar los bloques guardado debes copiar el archivo XML que has guardado.

______________________________
- Ejemplo de código:

Dos_Botones.xml (Botón derecho del ratón. "Guardar enlace como...")

- Cargamos ese archivo mediante: "Copiar de XML"

 

webserver_botones_led.ino

// Juan A. Villalpando.
// KIO4.COM
// Enciende y apaga LED. Botones.

/////////////////////////////////
// Generated with a lot of love//
// with TUNIOT FOR ESP32     //
// Website: Easycoding.tn      //
/////////////////////////////////
#include <WiFi.h>

String  ClientRequest;
String  estado;
WiFiServer server(80);

WiFiClient client;

String myresultat;

String ReadIncomingRequest(){
while(client.available()) {
ClientRequest = (client.readStringUntil('\r'));
 if ((ClientRequest.indexOf("HTTP/1.1")>0)&&(ClientRequest.indexOf("/favicon.ico")<0)){
myresultat = ClientRequest;
}
}
return myresultat;
}

void setup()
{
ClientRequest = "";

estado = "";

Serial.begin(9600);

pinMode(2, OUTPUT);
  Serial.println("");
  Serial.print("Conectando con ");
  Serial.println("Nombre_de_red");
  WiFi.begin("Nombre_de_tu_red_WiFi","Clave_de_red");
  while ((!(WiFi.status() == WL_CONNECTED))){
    delay(300);
    Serial.print(".");

  }
  Serial.println("Conectado");
  Serial.print("Esta es la IP para conectar: ");
  Serial.println((WiFi.localIP()));
  server.begin();

}


void loop()
{

    client = server.available();
    if (!client) { return; }
    while(!client.available()){  delay(1); }
    Serial.print("Nuevo cliente: ");
    Serial.println((client.remoteIP()));
    ClientRequest = (ReadIncomingRequest());
    Serial.println(ClientRequest);
    if (ClientRequest.indexOf("on2") != -1) {
      digitalWrite(2,HIGH);
      estado = "Encendido";

    }
    if (ClientRequest.indexOf("off2") != -1) {
      digitalWrite(2,LOW);
      estado = "Apagado";

    }
    client.println("HTTP/1.1 200 OK");
    client.println("Content-Type: text/html");
    client.println("");
    client.println("<!DOCTYPE HTML>");
    client.println("<html>");
    client.println("<head>");
      client.println("<meta charset=utf-8>");
    client.println("</head>");
    client.println("<body>");
      client.println("<center><font face=\'Arial\'>");
      client.println("<h1 style=""color:#000000"">");
      client.println("Servidor web con ESP32");
      client.println("</h1>");
      client.println("<h2 style=""color:#009900"">");
      client.println("KIO4.COM - Juan A. Villalpando");
      client.println("</h2>");
      client.println("<h3 style=""color:#000000"">");
      client.println("Página web.");
      client.println("</h3>");
      client.println("<br>");
      client.println("<br>");
      client.println("<a href=");
      client.println("on2");
      client.println("><button>");
      client.println("Enciende");
      client.println("</button></a>");
      client.println("<a href=");
      client.println("off2");
      client.println("><button>");
      client.println("Apaga");
      client.println("</button></a>");
      client.println("<br>");
      client.println(estado);
      client.println("</font></center>");
    client.println("</body>");
    client.println("</html>");
    client.stop();
     delay(1);
    Serial.print("Cliente desconectado: ");
    Serial.println((client.remoteIP()));
    client.flush();

}

___________________________________________
- Comentarios.

- Puedes editar el archivo XML online mediante: http://xmlgrid.net/

o con un procesador de texto, pero algunos cambios son complicados de hacer.

- El enlace al ESP32 actualmente está en inglés, pero el ESP8266, lo puedes hacer en español, además los códigos para el ESP32 y ESP8266 son similares, puedes construirlo en español para el ESP8266, solo tienes que cambiar la librería.

http://easycoding.tn/tuniot/demos/code/?lang=es

_______________________________

- Mi correo:
juana1991@yahoo.com
- KIO4.COM - Política de cookies. Textos e imágenes propiedad del autor:
© Juan A. Villalpando
No se permite la copia de información ni imágenes.
Usamos cookies propias y de terceros que entre otras cosas recogen datos sobre sus hábitos de navegación y realizan análisis de uso de nuestro sitio.
Si continúa navegando consideramos que acepta su uso. Acepto    Más información