08.11.2017 Views

arduino_básico_Michael_McRoberts

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Capítulo 17 ■ Comunicação via Ethernet<br />

403<br />

OneWire oneWire(ONE_WIRE_BUS);<br />

DallasTemperature sensors(&oneWire);<br />

Então, definimos os números seriais dos dois sensores DS17B20:<br />

DeviceAddress insideThermometer = { 0x10, 0x7A, 0x3B, 0xA9, 0x01, 0x08, 0x00, 0xBF };<br />

DeviceAddress outsideThermometer = { 0x10, 0xCD, 0x39, 0xA9, 0x01, 0x08, 0x00, 0xBE};<br />

Depois, você deve digitar os endereços MAC e IP de seu shield Ethernet:<br />

byte mac[] = { 0xCC, 0xAC, 0xBE, 0xEF, 0xFE, 0x91 }; // certifique-se de que esse valor seja<br />

// único em sua rede<br />

byte ip[] = { 192, 168, 0, 104 }; // sem DHCP, por isso definimos nosso próprio<br />

// endereço IP<br />

Então, definimos o endereço IP do servidor remoto (endereço IP de Pachube.com):<br />

byte remoteServer[] = { 173, 203, 98, 29 };<br />

Em seguida, você cria uma instância de Client, passando a ela o endereço do Pachube<br />

e a porta 80:<br />

Client localClient(remoteServer, 80);<br />

Depois, temos todas as variáveis que utilizaremos no programa, iniciando com o intervalo<br />

em milissegundos que deve haver entre as atualizações ou tentativas de conexão:<br />

unsigned int interval;<br />

Depois, temos um array para armazenar os caracteres lidos do Pachube:<br />

char buff[64];<br />

Um ponteiro ou índice para o array anterior:<br />

int pointer = 0;<br />

Um array para armazenar a string que será enviada ao Pachube (utilize um número<br />

maior, caso você esteja enviando strings de dados mais longas):<br />

char pachube_data[70];<br />

Uma variável para armazenar o resultado de uma função de comparação de strings<br />

que veremos mais adiante (utilizada para verificar se os dados foram recebidos corretamente<br />

pelo feed):<br />

char *found;<br />

Uma série de variáveis booleanas autoexplicativas:<br />

boolean ready_to_update = true;<br />

boolean reading_pachube = false;<br />

boolean request_pause = false;<br />

boolean found_content = false;

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!