Hallo,
Ich bin gerade dabei die Ethernet Libary auszuprobieren und verwende dazu folgenden Code:
//Erstellt einen Webserver mit IP Adresse 192.168.130.12
// Arduino-Webserver
#include <SPI.h>
#include <Ethernet.h>
// Ethernet-Konfiguration
byte mac[] = { 0xDE, 0xAD, 0xBE, 0xE4, 0xF5, 0xED }; //mac-Adresse
byte ip[] = {192,168,130,12}; //IP-Adresse
EthernetServer server(80); // Serverobjekt mit Standardport 80
EthernetClient client;
void setup()
{
Serial.begin(9600);
Ethernet.begin(mac,ip); // Ethernet-Initialisierung
delay(1000);
server.begin(); // Server bereit, wartet auf Anfragen
}
void loop()
{
client = server.available();
if (client)
{
Serial.print("Anfrage erhalten");
server.println("HTTP/1.1 200 OK");
server.println("Content-Type: text/html");
server.println();
server.print("<HTML>");
server.println("Diese Seite verwendet einen Arduino als Webserver.");
server.print("</HTML>");
delay(10);
client.stop();
}
}
Worüber ich mich wundere sind die ersten Zeilen des loop Teils.
Wenn client gleich server.available(); ist und die if Bedingung dann wahr ist wenn client wahr zurückgibt, dann müsste es doch eigendlich ausreichen
if (server.available())
zu schreiben und das client = server.available();
davor einfach weg zu lassen.
Funktionieren tut das bei mir aber nicht.
Weis jemand warum???
Im Voraus schonmal danke für eure Antworten...