/* Created by Salvatore Fancello Visit: http://progettiarduino.com for more arduino projects Arduino Uno with Ethernet Shield Webserver */ #include #include int led1 = 2; //relay1 int led2 = 3; //relay2 int led3 = 4; //relay3 int led4 = 5; //relay4 byte mac[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED }; // mac address byte ip[] = { 192, 168, 1, 89 }; // configurate il vostro IP a vostra scelta("192.168.1.89") byte gateway[] = { 192, 168, 1, 1 }; // internet access router byte subnet[] = { 255, 255, 255, 0 }; //subnet mask EthernetServer server(80); //server port String readString; void setup() { // Apro la comunicazione seriale: Serial.begin(9600); while (!Serial) { ; // wait for serial port to connect. Needed for Leonardo only } //Imposto i pin come OUTPUT pinMode(led1, OUTPUT); pinMode(led2, OUTPUT); pinMode(led3, OUTPUT); pinMode(led4, OUTPUT); // Inizio la comunicazione Ethernet con il server: Ethernet.begin(mac, ip, gateway, subnet); server.begin(); Serial.print("server is at "); Serial.println(Ethernet.localIP()); } void loop() { // Creo una connessione al client EthernetClient client = server.available(); if (client) { while (client.connected()) { if (client.available()) { char c = client.read(); //Leggo i caratteri da HTTP if (readString.length() < 100) { //Inserisco i caratteri nella stringa readString += c; //Serial.print(c); } //Se la richiesta HTTP è andata a buon fine if (c == '\n') { Serial.println(readString); //scrivi sul monitor seriale per debugging client.println("HTTP/1.1 200 OK"); //Invio nuova pagina client.println("Content-Type: text/html"); client.println(); client.println(""); client.println(""); client.println(""); client.println(""); client.println(""); client.println("Controllo Dispositivi da Remoto"); client.println(""); client.println(""); client.println("

Controllo Dispositivi da Remoto

"); client.println("
"); client.println("
"); client.println("

Arduino UNO con Ethernet Shield

"); client.println("
"); client.println("Accendi LED 1"); //Modifica a tuo piacimento:"Accendi LED 1" client.println("Spegni LED 1
"); //Modifica a tuo piacimento:"Spegni LED 1" client.println("
"); client.println("
"); client.println("Accendi LED 2"); //Modifica a tuo piacimento:"Accendi LED 2" client.println("Spegni LED 2
"); //Modifica a tuo piacimento:"Spegni LED 2" client.println("
"); client.println("
"); client.println("Accendi LED 3"); //Modifica a tuo piacimento:"Accendi LED 3" client.println("Spegni LED 3
"); //Modifica a tuo piacimento:"Spegni LED 3" client.println("
"); client.println("
"); client.println("Accendi LED 4"); //Modifica a tuo piacimento:"Accendi LED 4" client.println("Spegni LED 4
"); //Modifica a tuo piacimento:"Spegni LED 4" client.println("
"); client.println("

Creato da Salvatore Fancello. Visita http://progettiarduino.com per altri progetti!

"); //Sostieni il blog visita: http://www.progettiarduino.com/sostieni-il-blog.html client.println("
"); client.println(""); client.println(""); delay(1); client.stop(); //Controlli su Arduino: Se è stato premuto il pulsante sul webserver if (readString.indexOf("?button1on") >0){ digitalWrite(led1, HIGH); } if (readString.indexOf("?button1off") >0){ digitalWrite(led1, LOW); } if (readString.indexOf("?button2on") >0){ digitalWrite(led2, HIGH); } if (readString.indexOf("?button2off") >0){ digitalWrite(led2, LOW); } if (readString.indexOf("?button3on") >0){ digitalWrite(led3, HIGH); } if (readString.indexOf("?button3off") >0){ digitalWrite(led3, LOW); } if (readString.indexOf("?button4on") >0){ digitalWrite(led4, HIGH); } if (readString.indexOf("?button4off") >0){ digitalWrite(led4, LOW); } //Cancella la stringa una volta letta readString=""; } } } } }