COMUNICAÇÃO ETHERNET SHIELD ARDUINO
#include //Inclui a biblioteca SPI.h
#include //Inclui a biblioteca Ethernet.h
// CONFIGURAÇÕES DO ETHERNET SHIELD byte mac[] = { 0x90, 0xA2, 0xDA, 0x0D, 0x83, 0xEA }; // DEFINE O VALOR DO MAC DO ARDUINO
IPAddress ip(192, 168, 1, 2); // DEFINE O IP DO ARDUINO byte gateway[] = { 192, 168, 1, 110 }; // IP DO ROTEADOR byte subnet[] = { 255, 255, 255, 0 }; // DEFINE A MASCARA DA REDE
EthernetServer server(80); //Inicializa a biblioteca EthernetServer com os valores de IP acima citados e configura a porta de acesso(80)
//======================================================================================
void setup()
{
pinMode(Q22,OUTPUT); //Define o pino 22 como saída Ethernet.begin(mac, ip);// Inicializa o Server com o IP e Mac atribuido acima
}
void loop()
{
EthernetClient cliente = server.available();// Verifica se tem alguém conectado if (cliente) { boolean currentLineIsBlank = true; // A requisição HTTP termina com uma linha em branco Indica o fim da linha String valPag; while (cliente.connected()) { if (cliente.available()) { char dado_recebido = cliente.read(); //Variável para armazenar os caracteres que forem recebidos valPag.concat(dado_recebido); // Pega os valor após o IP do navegador ex: 192.168.1.2/Q1
//Compara o que foi recebido if(valPag.endsWith("Q22")) //Se o que for pego após o IP for igual a 0001 { digitalWrite(Q22, HIGH); { //========================================================================================================================= if (dado_recebido == '\n' && currentLineIsBlank) { //Inicia página HTML cliente.println("HTTP/1.1 200 OK"); cliente.println("Content-Type: text/html");