Serial.print()

Descripción

Imprime datos al puerto serie como texto ASCII legible por humanos. Este comando puede tomar muchas formas. Los números se imprimen mediante un carácter ASCII para cada dígito. Los float se imprimen de manera similar a los dígitos ASCII, por defecto con dos cifras decimales.Los bytes son enviados como un solo carácter. Los caracteres y las cadenas se envían como son. Por ejemplo:
Serial.print (78) da "78"
Serial.print (1,23456) da "1,23"
Serial.print ( "N") da "N"
Serial.print ( "Hola mundo".) Da "Hola mundo".

Un segundo parámetro opcional especifica la base (formato) a usar; Los valores permitidos son BIN (binario o de base 2), OCT (octal o base 8), DEC (decimal o base 10), HEX (hexadecimal, o base 16). Para los números de punto flotante, este parámetro especifica el número de decimales a utilizar. Por ejemplo:
Serial.print (78, BIN) da "1001110"
Serial.print (78, OCT) da "116"
Serial.print (78, DEC) da "78"
Serial.print (78, HEX) da "4E"
Serial.println (1,23456, 0) da "1"
Serial.println (1,23456, 2) da "1,23"
Serial.println (1,23456, 4) da "1.2346"
Puede pasar cadenas de la memoria flash a Serial.print () envolviéndolos con F (). Por ejemplo :
Serial.print (F ( "Hola mundo"))
Para enviar un solo byte, utilice
 Serial.write().

peek () hereda de la clase Stream.


Sintaxis

Serial.print(val) 
Serial.print(val, format)

Parámetros

val: el valor a imprimir - cualquier tipo de datos
format: Especifica la base numérica (para tipos de datos int) o el número de decimales (para tipos float)

Retornos

size_t (long): print () devuelve el número de bytes escritos, aunque la lectura de ese número es opcional

Ejemplo:

/*
Utiliza un bucle FOR para los datos e imprime un número en varios formatos.
*/

int x = 0;    // variable

void setup() {
  Serial.begin(9600);      // abre el puerto serie a 9600 bps:    
}

void loop() {  
  // print labels 
  Serial.print("NO FORMAT");       // imprime una etiqueta
  Serial.print("\t");              // imprime un tab

  Serial.print("DEC");  
  Serial.print("\t");      

  Serial.print("HEX"); 
  Serial.print("\t");   

  Serial.print("OCT");
  Serial.print("\t");

  Serial.print("BIN");
  Serial.print("\t"); 

  for(x=0; x< 64; x++){    // sólo parte de la tabla de ASCII, cambia para adaptarse

    // imprime la salida en varios formatos:
    Serial.print(x);       // imprime como ASCII-codificado decimal - como un "DEC"
    Serial.print("\t");    // imprime un tab

    Serial.print(x, DEC);  // imprime como un ASCII-codificado decimal
    Serial.print("\t");    // imprime un tab

    Serial.print(x, HEX);  //imprime como un ASCII-codificado hexadecimal
    Serial.print("\t");    // imprime un tab

    Serial.print(x, OCT);  // imprime como un ASCII-codificado octal
    Serial.print("\t");    // imprime un tab

    Serial.println(x, BIN);  // imprime como un ASCII-codificado binario
    //                             después añade un retorno de carro con "println"
    delay(200);            // temporiza 200 millisegundos
  }
  Serial.println("");      // imprime otro retorno de carro
}




No hay comentarios:

Publicar un comentario