Usando Streaming.h
, no lugar de
Serial.print("Var 1:");Serial.println(var1);
Serial.print(" Var 2:");Serial.println(var2);
Serial.print(" Var 3:");Serial.println(var3);
alguém pode escrever
Serial << "Var 1:" << var1) << " Var 2:" << var2 << " Var 3:" << var3 << endl;
A definição de <<
na Streaming.h
verdade traduz isso em uma série de Serial.print()
chamadas comuns . Ou seja, <<
é o açúcar sintático, implementado sem aumentar o tamanho do código.
Se você não tiver Streaming.h
instalado, começar Streaming5.zip
a partir arduiniana.org . Descompacte-o no diretório de bibliotecas, por exemplo, em ~/sketchbook/libraries
. Adicione a linha #include <Streaming.h>
nos esboços onde você usa <<
como operador de fluxo.
Os especificadores de conversão base _HEX, _DEC, _OCT e _BIN são fornecidos, bem como uma função _FLOAT (com número de casas decimais) e endl
. Por exemplo, para imprimir valores de latitude e longitude em um formato como "Suas coordenadas são -23.123, 135.4567", pode-se escrever:
Serial << "Your coordinates are " << _FLOAT(latitude,3) << ", " << _FLOAT(longitude,4) << endl;
Isso também pode ser escrito como
Serial << F("Your coordinates are ") << _FLOAT(latitude,3) << ", " << _FLOAT(longitude,4) << endl;
que manteria a seqüência mais longa no PROGMEM em vez de trazê-la para a RAM.
Observe Streaming.h
que não cria nenhuma string como tal; apenas entrega o texto de seus <<
argumentos a um fluxo. Uma classe PString na arduiniana pode construir cadeias de caracteres de entradas de fluxo, se forem desejadas ou necessárias cadeias em vez de saída de fluxo.