08.11.2017 Views

arduino_básico_Michael_McRoberts

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

432<br />

Arduino Básico<br />

if (matchTag("")) {<br />

Serial.print(", Pressure: ");<br />

Serial.print(dataStr);<br />

Serial.println("");<br />

}<br />

// Limpa todas as strings<br />

clearStr(tmpStr);<br />

clearStr(tagStr);<br />

clearStr(dataStr);<br />

}<br />

}<br />

// Limpa as flags<br />

tagFlag = false;<br />

dataFlag = false;<br />

// Função para limpar uma string<br />

void clearStr (char* str) {<br />

int len = strlen(str);<br />

for (int c = 0; c < len; c++) {<br />

str[c] = 0;<br />

}<br />

}<br />

//Função para adicionar um caractere a uma string e verificar seu comprimento<br />

void addChar (char ch, char* str) {<br />

char *tagMsg = "";<br />

char *dataMsg = "-TRUNCATED_DATA-";<br />

// Verifica o tamanho máximo da string, para se certificar de que ela não seja grande demais.<br />

// Caso a string ultrapasse MAX_STRING_LEN, presume que esses dados não sejam importantes<br />

// e os substitui por uma mensagem de aviso.<br />

if (strlen(str) > MAX_STRING_LEN - 2) {<br />

if (tagFlag) {<br />

clearStr(tagStr);<br />

strcpy(tagStr,tagMsg);<br />

}<br />

if (dataFlag) {<br />

clearStr(dataStr);<br />

strcpy(dataStr,dataMsg);<br />

}<br />

// Limpa o buffer temporário e as flags, para interromper o processamento atual<br />

clearStr(tmpStr);<br />

tagFlag = false;

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

Saved successfully!

Ooh no, something went wrong!