float temp = -7.35; // Valor de teste float umid = 44.88; // Valor de teste char valor[6]; // Matriz para guardar convesão de float String pacote = "HT"; // String para montar o pacote com "header" HT //----------------------------------------------------------- void completar(String item) // Completa com espacos a esquerda ate 6 digitos { String leading; // String com espacos //char valor[6]; // Matriz para guardar convesão de float for (int i = 0; i < (6 - String(item).length()); i++) // Verificas qto espacos sao necessarios { leading += " "; // Acrescenta espaco } leading += String(valor); // Concatena valor com espacos a esqueda //Serial.print(leading); Serial.print(" >> lgh "); // Print para debug //Serial.println(leading.length()); // Print para debug pacote += leading; // Concatena com novo valor } //----------------------------------------------------------- void montaPacote() // Monta "protocolo" propietario { dtostrf(temp, 2, 2, valor); // Converte valor temp float em array completar(valor); // completa valores a esquerda e concatena dtostrf(umid, 2, 2, valor); // Converte valor umid float em array completar(valor); // completa valores a esquerda e concatena Serial.print(pacote); Serial.print(" >> lgh "); // Print pacote montado para debug Serial.println(pacote.length()); // Print tamanho do pacote para debug } //----------------------------------------------------------- void setup() { Serial.begin(115200); } //----------------------------------------------------------- void loop() { pacote = "HT"; // Recarrega string montaPacote(); // Cria pacote delay(1000); }