Bem o código que disponibilizarei logo a seguir é uma ligeira alteração da biblioteca webserver, que ja vem implementada nas novas IDES disponíveis pra download no site do arduino.
Nele basicamente é adiciona uma string, e essa string que ira ler e interpretar as requisições html disponiveis em nossa pagina, a string primeiro passa por um filtro lenght<100 para limitar os caracteres de envio e depois é transformada numa char para pode ler as requisiões, de resto é codigo php incorporado.
No começo do código onde esta escrito "byte ip" voce geralmente terá de alterá-lo de acordo com a sua rede, então faça o seguinte, entre no prompt de comando clicando com o direito no meno iniciar
e escolher prompt de comando conforme a imagem:
depois ja no prompt de comando digite: ipconfigtudo jundo e anote os dados que aparecem em ipv4 conforme destacamos na imagem seguinte:
De posse com esse numero, apenas altere o numero final para 177 e coloque no campo byte ip, lembre-se que o comando se dá por virgulas.
Uma vez compilado o código no arduino, abra o seu navegador e digite o numero do ip que voce configurou no byte ip: No meu caso eu digitei 192.168.0.177
Quando terminar a tela ficara assim:
Sem mais delongas vamos ao código
------------------------
ethernet shield
-------------------------------
#include <SPI.h>
#include <Ethernet.h>
byte mac[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED };
byte ip[] = { 192, 168, 0, 177 };
EthernetServer server(80);
String readString;
int Pin = 6;
int Pin1= 7;
int Pin2=8;
int Pin3=9;
void setup(){
pinMode(Pin, OUTPUT);
pinMode(Pin1,OUTPUT);
pinMode(Pin2,OUTPUT);
pinMode(Pin3,OUTPUT);
Ethernet.begin(mac, ip);
server.begin();
}
void loop(){
EthernetClient client = server.available();
if (client) {
while (client.connected()) {
if (client.available()) {
char c = client.read();
if (readString.length() < 100) {
readString += c;
}
if (c == '\n') {
client.println("HTTP/1.1 200 OK");
client.println("Content-Type: text/html");
client.println();
client.println("<HTML>");
client.println("<BODY>");
client.println("<img border=\"0\" src=\https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjXBxLyVKO8YpFxjEALG_IlHwPe36ZHIz0U1IqtCLZzSNlNce7vpo9oa4Z5gMak73Karu_6zP5C9ISatdzWvxY1rgO-P83g_cmXyMFfDT0QT9U7upK0nmAxQAn6RNCL8_UAj5YiI1Kr8FKZ/s1600/ii.jpg\" /><br />");
client.println("<hr />");
client.println("<br />");
client.println("<H1> Acionamento das cargas</H1>");
client.println("<hr />");
client.println("<br />");
client.println("< >");
client.println("<a href=\"/?ledon\"\">Ligar a luz</a>");
client.println("< />");
client.println("<a href=\"/?ledoff\"\">Desligar a luz</a><br />");
client.println("<hr />");
client.println("<br />");
client.println("< >");
client.println("<a href=\"/?adon1\"\">Ligar a tomada</a>");
client.println("< />");
client.println("<a href=\"/?adoff1\"\">Desligar a tomada</a><br />");
client.println("<hr />");
client.println("<br />");
client.println("< >");
client.println("<a href=\"/?bdon2\"\">Ligar o chuveiro</a>");
client.println("< />");
client.println("<a href=\"/?bdoff2\"\">Desligar o chuveiro</a><br />");
client.println("<hr />");
client.println("<br />");
client.println("< >");
client.println("<a href=\"/?cdon3\"\">Ligar o ALARME</a>");
client.println("< />");
client.println("<a href=\"/?cdoff3\"\">Desligar o ALARME</a><br />");
client.println("</BODY>");
client.println("</HTML>");
delay(1);
client.stop();
if(readString.indexOf("?ledon") > 0)
{
digitalWrite(Pin, HIGH);
}
else {
if(readString.indexOf("?ledoff") > 0)
{
digitalWrite(Pin, LOW);
}
}
if(readString.indexOf("?adon1") > 0)
{
digitalWrite(Pin1, HIGH);
}
else {
if(readString.indexOf("?adoff1") > 0)
{
digitalWrite(Pin1, LOW);
}
}
if(readString.indexOf("?bdon2") > 0)
{
digitalWrite(Pin2, HIGH);
}
else {
if(readString.indexOf("?bdoff2") > 0)
{
digitalWrite(Pin2, LOW);
}
}
if(readString.indexOf("?cdon3") > 0)
{
digitalWrite(Pin3, HIGH);
}
else {
if(readString.indexOf("?cdoff3") > 0)
{
digitalWrite(Pin3, LOW);
}
}
readString="";
}
}
}
}
}
--------------------------------
E é isso ahe pessoal, em breve postarei o vídeo dele funcionando.
E é isso ahe pessoal, como prometido, eis o víde
E é isso ahe pessoal, como prometido, eis o víde
Nenhum comentário:
Postar um comentário