Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <Ethernet.h> //inclui a biblioteca ethernet pra usar o modulo ethernet
- byte mac[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED };// define o endereço MAC do arduino
- IPAddress ip(10, 1, 1, 10); //define o IP do arduino
- EthernetServer server(80); //define a porta a ser utilizada para comunicação (80 é para web jaestá liberada)
- float temperatura;
- void setup() //função de configuração
- {
- Serial.begin(115200); //inicia comunicaçao serial com velocidade de 115200 (nao precisa pq n vai usar)
- Ethernet.begin(mac, ip); //configura o ip e o mac de acordo com o que foi definido no começo
- server.begin(); //inicia o webservice
- pinMode(A0, 1); //define a porta analogica A0 como entrada
- }
- void loop()
- {
- temperatura = (float(analogRead(A0)) * 5 / 1023) / 0.01;
- // listen for incoming clients
- EthernetClient client = server.available(); //inicia o webservice
- if (client) {
- boolean currentLineIsBlank = true; //define a linha atual como nula (necessaria para http)
- while (client.connected()) { //enquanto o cliente estiver conectado (online)
- if (client.available()) { //se estiver disponivel
- //Serial.println(client.readString());
- char c = client.read(); //caractere c é igual o que o cliente le
- if (c == '\n') { //se nao esta lendo nada define como nao recebendo nada (linha nula/vazia)
- currentLineIsBlank = true;
- }
- else if (c != '\r') { //se esta lendo algo define a linha atual como ocupada (para nao enviar os dados enquanto estiver recebendo)
- currentLineIsBlank = false;
- }
- if (!currentLineIsBlank) {
- client.println("HTTP/1.1 200 OK"); //cria um webservice HTTP
- client.println("Content-Type: application/json"); //cria um documento do tipo json
- client.println("Connection: close"); //fecha a conexão
- Serial.println(client.readString());
- client.println("recebi");
- delay(10);
- currentLineIsBlank = true;
- }
- if (c == '\n' && currentLineIsBlank) { //se o cliente nao esta lendo nada e a linha atual é nula (vazia)
- client.println("HTTP/1.1 200 OK"); //cria um webservice HTTP
- client.println("Content-Type: application/json"); //cria um documento do tipo json
- client.println("Connection: close"); //fecha a conexão
- client.println("Refresh: .05"); //Recarrega a pagina a cada .05seg
- client.println();
- client.println("{\"temperatura\":");
- client.println(temperatura);
- client.println( "}");
- break; //quebra/pausa
- }
- }
- }
- delay(1);
- //interrompe a conexão para ser iniciada novamente com novos dados
- client.stop();
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment