Tomar valores de HTTP y usarlos en una variable

Buenos días, estoy intentando tomar valores de una web para realizar una acción en Arduino uno pero no logro conseguirlo. agradecería ayuda sobre como leer mediante un /get, interpretar valores y almacenarlos en una variable.

#include <SPI.h>
#include <LiquidCrystal_I2C.h>
#include <Ethernet.h>

// Configuracion del Ethernet Shield
byte mac[] = {0xDE, 0xAD, 0xBE, 0xEF, 0xFF, 0xEE}; // Direccion MAC
byte ip[] = { 192,168,1,100 }; // Direccion IP del Arduino
byte server[] = { 192,168,1,113 }; // Direccion IP del servidor
EthernetClient client; 

//Crear el objeto lcd  dirección  0x3F y 16 columnas x 2 filas
LiquidCrystal_I2C lcd(0x27,16,2);  //

int pinIN = 8;  // Crea Variable pinIN y la asocia al pin digital 8    
int valorIN = 0;  // Crea Variables con un valor inicial asociado
int contenido = 0; 
String readString;
void setup()
{
  pinMode(pinIN, INPUT); // Define el Puerto 8 como Entrada
  Ethernet.begin(mac, ip); // Inicializamos el Ethernet Shield
  delay(1000); // Esperamos 1 segundo de cortesia
  lcd.init();
  lcd.backlight();
  lcd.setCursor(0,0);  // Seteamos la ubicacion del texto 1, linea 0 que sera escrita sobre el LCD             
  lcd.print("CONTADOR DE AVES ");  //
  lcd.setCursor(2,1);            
  lcd.print("CANTIDAD: "); 
  Serial.begin(9600);
}

void loop()
{
   valorIN=digitalRead(pinIN);  // Realiza la lectura Digital del pin 8
  if(valorIN!=1)  // Si la lectura es 1 incremente el valor de contenido
  {
    contenido++; 
    while(digitalRead(pinIN)!=1) {
        delay(100);     // Realiza un Delay para estabilizar
      }
    lcd.setCursor(12,1);  // Ubicamos el cursor en la posicion 12 sobre la linea 1
    lcd.print(contenido);  // Imprimimos el valor del contenido sobre dicha ubicacion
    Serial.print(contenido);
    //Display in Serial Monitor
  Serial.print(contenido); //Return temperature to Monitor
  Serial.println(" Dato");
  // Proceso de envio de muestras al servidor
  Serial.println("Conectando...");
  if (client.connect(server, 80)>0) {  // Conexion con el servidor
    client.print("GET /iot/iot.php?valor="); // Enviamos los datos por GET
    client.print(contenido);
    client.println(" HTTP/1.0");
    client.println("User-Agent: Arduino 1.0");
    client.println();
    Serial.println("Conectado");
    Serial.println("Segundo Request ->");


  } else {
    Serial.println("Fallo en la conexion");
  }
  
  }
  client.stop();
  client.flush();            
}

Este es uno de los mejores tutoriales usando el módulo Ethernet que tu estas usando.

Tiene todo tipo de ejemplos. Míralos con detenimiento y tendras tu respuesta.

1 Like

Muchas gracias por su respuesta, actualmente puedo escribir usando el codigo demostrado aquí, solo que no logro entender o encontrar un tutorial en español sobre como extraer valores de un http request y usarlos en una variable..

Mi proyecto es un contador, solo necesito poder reiniciar el contador de la web y no logro conseguirlos.

Tengo una web en .php que recibe los GET y ejecuta un query en mysql para introducir los valores del contador.

Solo necesito ayuda con la operación contraria.

This topic was automatically closed 120 days after the last reply. New replies are no longer allowed.