tenho um codigo que as vezes abre a pagina e as vezes nao abre.

e tenho que fazer com que a luz apaque com o programa e ligue no interruptor e vice e verça

ta ai o codigo todo:

onde ta o erro?

#include <SPI.h>
#include <Ethernet.h>

//PINOS UTILIZADOS (SAIDA)
int saidaLuz = 13; //PINO DAS LUZES
int saidaTv = 5; //PINO DA TB

//PINOS UTILIZADOS (VOLTA)
int botaoLuz = 32;

//ESTADO DO APARELHOS ( PINOS )
boolean estadoLuz = false;
boolean estadoTV = false;

// MAC E IP DO ARDUINO
byte mac[] = { 0x00, 0xAA, 0xBB, 0xCC, 0xDE, 0x02};
IPAddress ip(192, 168, 1, 3);

//INICIA O SERVER NA PORTA 80
EthernetServer server(80);

void setup() {
  //PINOS DE SAIDA
  pinMode(saidaLuz,OUTPUT);  
  pinMode(saidaTv,OUTPUT);

  //PINOS DE ENTRADA
  pinMode(botaoLuz,INPUT);
 
  //AGUARDA CONEXAO SERIAL
  Serial.begin(9600);
  while (!Serial) {;}

  //INICIA O SERVIDOR;
  Ethernet.begin(mac,ip);
  server.begin();
  Serial.print("server is at ");
  Serial.println(Ethernet.localIP());
}


void loop() {
if(digitalRead(botaoLuz) == HIGH || estadoLuz == true){
  digitalWrite(saidaLuz,HIGH);
  estadoLuz = true;
    }else if(digitalRead(botaoLuz) == LOW || estadoLuz == false){
  digitalWrite(saidaLuz,LOW);
  delay(1000);
  estadoLuz = false;
  }


// listen for incoming clients
  EthernetClient client = server.available();
  if (client) {
    // an http request ends with a blank line
    boolean currentLineIsBlank = true;
    while (client.connected()) {
      if (client.available()) {
        char c = client.read();

        Serial.println(c);
                 
        // if you've gotten to the end of the line (received a newline
        // character) and the line is blank, the http request has ended,
        // so you can send a reply
        if (c == '\n' && currentLineIsBlank) {
          // send a standard http response header
          client.println("HTTP/1.1 200 OK");
          client.println("Content-Type: text/html");
          client.println("Connection: close");  // the connection will be closed after completion of the response
          client.println();
          client.println("<!DOCTYPE HTML>");
          client.println("<html>");
client.println("<head>");
client.println("<title>Automa&ccedil;&atilde;o Residencial</title>");
client.println("<link rel=\"stylesheet\" href=\"botoes.css\" type=\"text/css\" />");
client.println("<style>");
client.println("@font-face { font-family: Century; src: url('GOTHIC.ttf');}");
client.println("body{font-family: Century; background: rgb(51,51,51); padding:20px;}");
client.println("*{ color:rgb(255,255,255);}");

/*INICIO DA CONFIGURAÇÃO DOS RETANGULOS*/
client.println(".tile img{ width:56px; margin:20px 22px 0 22px;}");
client.println(".tileLargo img { margin:20px 77px 0 77px;}");
client.println(".tile{ height:100px; width:100%; text-align:center; float:left; margin-top:5px;}");
client.println(".amarelo{ background:#DAA520;}");
client.println(".vermelho{ background:#CD0000;}");
client.println(".azul{ background:#4682B4;}");
client.println(".verde{background-color: #2E8B57;}");
client.println(".selecionado{ background-color: #483D8B;}");
/*FIM DA CONFIGURAÇÃO DOS RETANGULOS*/

/*INICIO DAS CONFIGURAÇÕES DOS COMODOS*/
client.println(".comodos{ position:absolute; top:0; left:0; background:RGBA(0,0,0,0,1); width:100%; height:auto;}");
client.println(".tabelas{ width:100%; text-align:center;}");
client.println(".comodosOpen{ width:100%; height:30px; line-height:30px; text-align:center; background:RGBA(255,255,255,1); margin-top:5px; color:RGBA(0,0,0,1);}");
/*FIM DACONFIGURAÇÃO DOS COMODOS*/

client.println("</style>");
client.println("<script language=\"javascript\" src=\"jquery.js\"></script>");
client.println("<script language=\"javascript\">");
client.println("$(document).ready(function(e) {");
client.println("$(\"#sala\").hide();");
client.println("$(\"#cozinha\").hide();");
client.println("});");

client.println("function mostraJanela(local){");
client.println("$(\"#\"+local).show();");
client.println("$(\"#\"+local+\" #close\").click(function(){");
client.println("$(\"#\"+local).hide();");
client.println("});");
client.println("}");

client.println("function fazFuncao(endereco){");
client.println("window.location(endereco);");
client.println("alert(endereco);");
client.println("}");
client.println("</script>");
client.println("</head>");

client.println("<body>");
client.println("<h1 align=\"center\">Automa&ccedil;&atilde;o Resid&ecirc;ncial</h1>");
client.println("<a href=\"#\" onClick=\"mostraJanela('sala');\">");
client.println("<div class=\"tile amarelo\">");
client.println("<img src=\"imagens/sala.png\" alt=\"Sala\"/>");
client.println("<span>Sala</span></div>");
client.println("</a>");

client.println("<a href=\"#\" onClick=\"mostraJanela('cozinha');\">");
client.println("<div class=\"tile azul\">");
client.println("<img src=\"imagens/imgCozinha.png\" alt=\"Cozinha\"/>");
client.println("<span>Cozinha</span></div>");
client.println("</a>");

client.println("<a href=\"#\">");
client.println("<div class=\"tile vermelho\">");
client.println("<img src=\"imagens/quarto.png\" alt=\"Quarto\" />");
client.println("<span>Quartos</span></div>");
client.println("</a>");

client.println("<a href=\"#\">");
client.println("<div class=\"tile verde\">");
client.println("<img src=\"imagens/piscina.png\" alt=\"Piscina\" />");
client.println("<span>Piscina</span></div>");
client.println("</a>");

client.println("<a href=\"#\">");
client.println("<div class=\"tile amarelo\">");
client.println("<img src=\"imagens/churrasqueira.png\" alt=\"Churrasqueira\" />");
client.println("<span>Churrasqueira</span></div>");   
client.println("</div>");
client.println("</a>");


//INICIO DAS DIVS DO COMODO DA SALA
client.println("<div id=\"sala\" class=\"comodos\">");
client.println("<a href=\"#\" id=\"close\">Fechar Janela</a>");
//Luzes Sala
client.println("<div id=\"luzSala\" class=\"comodosOpen\">");
client.println("Luzes da Sala:");
client.println("<label class=\"switch switch-green\">");
client.println("<input type=\"checkbox\" onchange=\"fazFuncao('http://192.168.0.1/luzes');\" class=\"switch-input\">");
client.println("<span class=\"switch-label\" data-on=\"On\" data-off=\"Off\"></span>");
client.println("<span class=\"switch-handle\"></span>");
client.println("</label>");
client.println("</div>");
//Som da Sala
client.println("<div id=\"somSala\" class=\"comodosOpen\">");
client.println("Som da Sala:");
client.println("<label class=\"switch switch-green\">");
client.println("<input type=\"checkbox\" onchange=\"fazFuncao('http://192.168.0.1/som');\" class=\"switch-input\">");
client.println("<span class=\"switch-label\" data-on=\"On\" data-off=\"Off\"></span>");
client.println("<span class=\"switch-handle\"></span>");
client.println("</label>");
client.println("</div>");
//Tv da Sala
client.println("<div id=\"tvSala\" class=\"comodosOpen\">");
client.println("Tv da Sala:");
client.println("<label class=\"switch switch-green\">");
client.println("<input type=\"checkbox\" onchange=\"fazFuncao('http://192.168.0.1/tv')\" class=\"switch-input\">");
client.println("<span class=\"switch-label\" data-on=\"On\" data-off=\"Off\"></span>");
client.println("<span class=\"switch-handle\"></span>");
client.println("</label>");
client.println("</div>");

client.println("</div>");
/*FIM DAS DIVS DOS COMODOS*/

if(estadoLuz == true){
client.println("<label class=\"switch switch-green\">");
client.println("<input type=\"checkbox\" onchange=\"fazFuncao(\'http://192.168.1.3/apagarLuz\')\" class=\"switch-input\" checked=\"checked\">");
client.println("<span class=\"switch-label\" data-on=\"On\" data-off=\"Off\"></span>");
client.println("<span class=\"switch-handle\"></span>");
client.println("</label>");
}else{
client.println("<label class=\"switch switch-green\">");
client.println("<input type=\"checkbox\" onchange=\"fazFuncao(\'http://192.168.1.3/acenderLuz\')\" class=\"switch-input\">");
client.println("<span class=\"switch-label\" data-on=\"On\" data-off=\"Off\"></span>");
client.println("<span class=\"switch-handle\"></span>");
client.println("</label>");
}

client.println("</body>");
client.println("</html>");
 break;
}
        if (c == '\n') {
          // you're starting a new line
          currentLineIsBlank = true;
        }
        else if (c != '\r') {
          // you've gotten a character on the current line
          currentLineIsBlank = false;
        }
      }
    }
    
    // give the web browser time to receive the data
    delay(1);
    // close the connection:
    client.stop();
  }
}

Exibições: 317

Responder esta

Respostas a este tópico

Por que você não tenta colocar esse código num arquivo no sd card?

ja me disseram mas nao sei fazer

Retire o código html do código C e adicione esses pedaços de código ao seu código.

Coloque o código em html em um cartão de memória e não esqueça de colocar o nome dele em "index.htm".

Siga estes passos e boa sorte! ;)

Anexos

RSS

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço