Arduino Ethernet Shield

Tutorial Arduino – Programmazione web server

USARE ARDUINO COME SERVER DI UNA PAGINA WEB

Ciao a tutti,

in questo tutorial proseguiamo la serie sulla programmazione arduino, nello specifico parliamo di come trasformare una scheda arduino in un web server per la visualizzazione di una semplice pagina internet.

Di seguito trovate il video tutorial sulla programmazione del server:

Si tratta di un primissimo episodio a cui seguiranno alcuni altri sempre dedicati allo sviluppo di web server su arduino perché l’argomento è particolarmente interessante soprattutto se rivolgiamo il nostro pensiero alla domotica.

Di seguito vi allego un immagine, per chi non l’avesse mai visto, dello shield ethernet che utilizziamo per trasformare la scheda arduino in un server web.

Scheda ethernet per arduino da noi utilizzata per creare il web server
Scheda ethernet per arduino da noi utilizzata per creare il web server

Per chi di voi volesse approfondire il concetto di web server potete visitare il seguente link

Nei prossimi episodi vedremo come sia possibile espandere l’utilizzo della semplice funzionalità vista in questo tutorial per visualizzare i valori letti dai sensori collegati al server arduino e addirittura come sia possibile attraverso la pagina web controllare la scheda e ciò che c’è collegato, come ad esempio accendere e spegnere un led.

Concludiamo l’articolo allegato il codice sorgente:


#include
#include

byte mac[] = {
0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED
};
IPAddress ip(192, 168, 0, 177);

EthernetServer server(80);

void setup()
{
Serial.begin(9600);
while(!Serial) {}
Ethernet.begin(mac, ip);
server.begin();
Serial.print("server ip: ");
Serial.println(Ethernet.localIP());

}

void loop()
{
EthernetClient client = server.available();
if(client) {
Serial.println("nuovo client");
boolean currentLineIsBlank = true;
while(client.connected()) {
if(client.available()) {
char c = client.read();
Serial.write(c);
if(c == '\n' && currentLineIsBlank) {
client.println("HTTP/1.1 200 OK");
client.println("Content-Type: text/html");
client.println("Connection: close");
client.println();
client.println("");
client.println("");
client.print("Questa e' una pagina web ospitata da arduino!");
client.println("");
break;
}
if(c == '\n') {
currentLineIsBlank = true;
} else if(c != '\r') {
currentLineIsBlank = false;
}
}
}
delay(1);
client.stop();
Serial.println("Client disconnected");
}
}

Ti piaciono i miei tutorial e progetti? Aiutami a realizzarne altri. Supporta Zamein's projects su Patreon!

Leave a comment

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *