ethernet y metodo get (mas dudas)

hola amigo, tratare de ayudarte...

Dependiendo de como tengas instalado el servidor Web Apache en tu sistema debes buscar el archivo de configuracion del servidor el cual se llama: "httpd.conf", en mi caso yo utilizo el programa Easy PHP y se encuentra en la siguiente ruta: "C:\Archivos de programa\EasyPHP-5.3.3.1\apache\conf", reitero que esto es en mi caso, en tu maquina puede ser diferente dependiendo del modo que este instalado el servidor Web Apache, una vez encontrado este archivo debes editarlo con el "Block de Notas" y debes buscar la siguiente configuracion que esta casi al principio del archivo:

# Listen: Allows you to bind Apache to specific IP addresses and/or
# ports, instead of the default. See also the
# directive.
#
# Change this to Listen on specific IP addresses as shown below to
# prevent Apache from glomming onto all bound IP addresses.
#
#Listen 12.34.56.78:80
Listen 80

En esta seccion podremos configurar en que direccion IP y puerto escucha nuestro servidor Apache, Ej:

Con la siguiente configuracion le estamos indicando que solo debe aceptar conexiones entrantes desde nuestro PC en modo local y que escuche por el puerto 8080:

Listen 127.0.0.1:8080

Si queremos que el servidor acepte conexiones entrantes desde cualquier direccion IP y que escuche por el puerto 80 debemos configurarlo de la siguiente manera:

Listen 80

Con lo anterior configuras al servidor para que acepte peticiones desde cualquier IP incluso desde Internet, una vez hecho esto en la parte del codigo de Arduino donde especificas la direccion IP del servidor Web Apache (en este caso tu PC), debes de colocar la IP local de tu maquina:

Puedes averiguar la direccion IP de tu PC con el comando "ipconfig" en la consola de MS-DOS

Ej. en tu codigo Arduino suponiendo que la direccion IP de tu pc es la 192.168.0.2:

byte mac[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED };
byte ip[] = { 192,168,0,15 };
byte server[] = { 192.168,0,2 }; // Direccion IP del servidor Web Apache

Una vez hecho esto en la llamada al metodo GET debe quedarte de la siguiente manera en tu codigo:

client.println("GET http://192.168.0.2/arduino/recibe.php?nombre=minombre HTTP/1.0");

Para que te quede mas claro el formato de la llamada es de la siguiente manera:

"GET http://ip_del_servidor_apache/archivo_que_procesa_los_datos.php?nombre_variable=valor_variable HTTP/1.0"

en el caso que quieras pasar mas de una variable solo debes separarlas con el simbolo "&"

"GET http://ip_del_servidor_apache/archivo_que_procesa_los_datos.php?nombre_variable1=valor_variable1&nombre_variable2=valor_variable2 HTTP/1.0"

recuerda que una peticion HTTP debe terminar con una linea en blanco por lo que a posterior de la instruccion que hace la peticion con GET debes hacer un client.println(); (en tu codigo veo que esta correcto)

por favor cuentame como te fue

Saludos
Luis Fuentes
Santiago de Chile