Paso 3: Código
Aquí está el código para el servo en movimiento basado en lo que está escrito a la dirección ip.
#include
#include #include #include #include
#define WIFI_AP "Tu red WiFi"
#define WIFI_PASSWORD "Contraseña"
#define WIFI_AUTH LWIFI_WPA / / elegir LWIFI_OPEN, LWIFI_WPA o LWIFI_WEP según su configuración de WiFi AP / / si esto no funciona, probar con LWIFI_WEP. Si su red no tiene una contraseña, utilice LWIFI_OPEN.
serverPort int = 80;
Server(serverPort) de LWiFiServer;
int LED = 13;
Servo camservo;
void setup()
{
camservo.Attach(3);
pinMode (LED, salida);
LWiFi.begin();
Serial.Begin(115200); Mantenga reintentando hasta conectado al AP
Serial.println ("conexión a AP");
mientras que (0 == LWiFi.connect (WIFI_AP, LWiFiLoginInfo (WIFI_AUTH, WIFI_PASSWORD))) {}
digitalWrite (LED, alta);
Delay(300);
digitalWrite (LED, baja);
}
Server.Begin();
}
loopCount int = 0;
void loop()
{
String str = "";
String url = "";
int i;
Delay(250);
loopCount ++;
Cliente LWiFiClient = server.available();
Si (cliente)
{
Boolean currentLineIsBlank = true;
mientras (client.connected())
{
Si (client.available())
{
char c = client.read();
Serial.Print(c);
Si (c! = '\n')
Str += c;
Si (c == '\n')
{
Serial.println(STR);
Si (str.startsWith ("GET"))
{
URL = str.substring (4, str.lastIndexOf(""));
Serial.Print("URL:");
Serial.Print(URL);
Serial.println(":");
}
Str = "";
}
Si (c == '\n' & & currentLineIsBlank)
{
Serial.println ("enviar respuesta");
Client.println ("HTTP/1.1 200 OK");
Client.println ("tipo de contenido: texto/html");
Client.println ("conexión: cerrar");
Client.println();
Si (url! = String("favicon.ico"))
{
Client.println("");
i = digitalRead(LED);
url.toLowerCase();
if(URL == String("/Lookleft"))
{
para (pos = 90; pos < = 180; pos += 1)
{
camservo.Write(POS);
Delay(10);
}
digitalWrite (LED, alta);
}
otro if(url == String("/lookright"))
{
digitalWrite (LED, baja);
para (pos = 90; pos > = 00; pos-= 1)
{
camservo.Write(POS);
Delay(10);
}
}
Client.println();
rotura;
}
}
Si (c == '\n')
{
currentLineIsBlank = true;
}
else if (c! = '\r')
{
currentLineIsBlank = false;
}
}
}
Delay(30);
Client.STOP(); } }