salve, ho questo listato, che se NON includo i 3 punti chiamati evidenziati in rosso,
mi funziona la pagina web, se includo i 3 punti posso solo comandare il led/luce solo da pulsante, sembra che i due sistemi HTML e PULSANTI, non vadino d'accordo.
dov'è che sbaglio?
quando definisco il pulsante, il sistema fa uno o l'altro.
grazie dell'aiuto
#include <String.h>
#include <SPI.h>
#include <Ethernet.h>
byte mac[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0x00 };
byte ip[] = { 192, 168, 1, 10 };
byte gateway[] = { 192, 168, 1, 1 };
byte subnet[] = { 255, 255, 255, 0 };
EthernetServer server(80);
String readString;
// CONTROLLO INVIO
int statoLUCE1; //stato LUCE1
int USCITAluci1=6; //USCITA LUCE1
int statoCancelloCarrabile=false;
int USCITACancelloCarrabile=31;
int statoPortoncinoPersonale=false;
int USCITAPortoncinoPersonale=32;
#define PulsanteLUCE1 44
void setup(){
Serial.begin(9600);
Ethernet.begin(mac, ip, gateway, subnet);
pinMode(PulsanteLUCE1, INPUT);
pinMode(USCITAluci1,OUTPUT);
digitalWrite(USCITAluci1,LOW);
pinMode(USCITAPortoncinoPersonale,OUTPUT);
digitalWrite(USCITAPortoncinoPersonale,LOW);
pinMode(USCITACancelloCarrabile,OUTPUT);
digitalWrite(USCITACancelloCarrabile,LOW);
}
void loop(){
EthernetClient client = server.available();
if (client) {
boolean currentLineIsBlank = true;
while (client.connected()) {
if (client.available()) {
char c = client.read();
readString.concat(c);
if (c == '\n' && currentLineIsBlank) {
Serial.print(readString);
//GESTIONE LUCE1
if(readString.indexOf("LUCE1on") > 0) {
digitalWrite(USCITAluci1,HIGH);
statoLUCE1=true;
}
if(readString.indexOf("LUCE1off") > 0) {
digitalWrite(USCITAluci1,LOW);
statoLUCE1=false;
}
//GESTIONE PortoncinoPersonale
if(readString.indexOf("PortoncinoPersonale") > 0) {
digitalWrite(USCITAPortoncinoPersonale,HIGH);
delay(800);
digitalWrite(USCITAPortoncinoPersonale,LOW);
delay(200);
statoPortoncinoPersonale=true;
}
//GESTIONE CancelloCarrabile
if(readString.indexOf("CancelloCarrabile") > 0) {
digitalWrite(USCITACancelloCarrabile,HIGH);
delay(800);
digitalWrite(USCITACancelloCarrabile,LOW);
delay(200);
statoCancelloCarrabile=true;
}
//GESTIONE tuttoff
if(readString.indexOf("tuttooff") > 0) {
digitalWrite(USCITAluci1,LOW);
}
client.println("HTTP/1.1 200 OK");
client.println("Content-Type: text/html");
client.println();
client.print("<html><title>Domotic Panel</title><body bgcolor=black><center><table width=10 height=6 border=1>");
//Gestione LUCE1
client.print("<td><font color=#C0C0C0 size=12>LUCE1: </font></td><td><center>");
if(statoLUCE1){
client.print("<a href='/?LUCE1off'><img border=0 src=http://www.ilsentierone.it/online/accesa.jpg width=155 height=155 /> </a>");
}
else
client.print("<a href='/?LUCE1on'><img border=0 src=http://www.ilsentierone.it/online/spenta.jpg width=155 height=155 /> </a>");
client.print("</center></td>");
client.print("<td></td><td></td></tr>");
//Gestione PortoncinoPersonale
client.print("<td><font color=#C0C0C0 size=12>Portoncino Personale: </font></td><td><center>");
if(statoPortoncinoPersonale){
client.print("<a href='/?PortoncinoPersonale'><img border=0 src=http://www.ilsentierone.it/online/xCancellettoAperto.gif width=155 height=155 /> </a>");
}
else
client.print("<a href='/?PortoncinoPersonale'><img border=0 src=http://www.ilsentierone.it/online/xCancellettoChiuso.gif width=155 height=155 /> </a>");
client.print("</center></td></tr>");
//Gestione CancelloCarrabile
client.print("<tr>");
client.print("<td colspan=2><font color=#C0C0C0 size=12>Cancello Carrabile: </font></td><td colspan=2><center>");
if(statoCancelloCarrabile){
client.print("<a href='/?CancelloCarrabile'><img border=0 src=http://www.ilsentierone.it/online/xCarrabileinAPERTURA.gif width=155 height=155 /> </a>");
}
else
client.print("<a href='/?CancelloCarrabile'><img border=0 src=http://www.ilsentierone.it/online/xCarrabileCHIUSO.gif width=155 height=155 /> </a>");
client.print("</center></td></tr>");
//Gestione aggiorna
client.print("<tr>");
client.print("<td><center><a href='/'><img border=0 src=http://www.ilsentierone.it/online/aggiorna.png width=96 height=66 />
<font color=ffffff>AGGIORNA</font></a></center></td>");
//Gestione TUTTOOFF
client.print("<td><center><a href='/?tuttooff'><img border=0 src=http://www.ilsentierone.it/online/tuttospento.jpg width=96 height=96 />
<font color=ffffff>SPEGNI_TUTTO</font></a></center></td>");
// Gestione ANTIFURTO
client.print("<td><center><a href='/'><img border=0 src=http://www.ilsentierone.it/online/xantifurtoTOTALE-NO.jpg width=155 height=155 />
<font color=ffffff>TOTALE</font></a></center></td>");
client.print("<td><center><a href='/'><img border=0 src=http://www.ilsentierone.it/online/xantifurtoPERIMETRO-NO.jpg width=155 height=155 />
<font color=ffffff>SOLO ESTERNO</font></a></center></td>");
client.print("</tr>");
client.print("<tr><td> </td><td> </td><td> </td><td> </td></tr>");
client.print("<tr><td> </td><td> </td><td> </td><td> </td></tr>");
client.print("<tr><td> </td><td> </td><td> </td><td> </td></tr>");
client.print("<tr><td> </td><td> </td><td> </td><td> </td></tr>");
client.print("<tr><td> </td><td> </td><td> </td><td> </td></tr>");
client.print("
");
client.print("</table></center>");
client.print("</html>");
readString="";
client.stop();
} // if (c == '\n' && currentLineIsBlank) {
} // if (client.available()) {
} //while (client.connected()) {
} // if (client) {
if (digitalRead(PulsanteLUCE1) == HIGH) {
if (digitalRead(USCITAluci1) == HIGH) {
digitalWrite(USCITAluci1,LOW);
delay(400);
statoLUCE1=false;
}
else
if (digitalRead(USCITAluci1) == LOW) {
digitalWrite(USCITAluci1,HIGH);
delay(400);
statoLUCE1=true;
}
}
} //void loop(){