Diferencia entre revisiones de «Serial.peek()»

De ArduWiki
Saltar a: navegación, buscar
(Vea también)
Línea 1: Línea 1:
 
== Descripción ==
 
== Descripción ==
Devuelve el siguiente byte (carácter) de los datos en serie entrantes sin eliminarlo del buffer serie interno. Es decir, las llamadas sucesivas a '''Serial.peek()''' devolverán el mismo carácter, al igual que la próxima llamada a [[Serial.read()]].  
+
Devuelve el siguiente byte (carácter) de los datos en serie entrantes sin eliminarlo del buffer serie interno. Es decir, las llamadas sucesivas a '''Serial.peek()''' devolverán el mismo carácter, al igual que la próxima llamada a [[Serial.read()]].
 
 
{{Nota|Serial.peek() hereda de la clase [[Stream]].}}
 
  
 
== Sintaxis ==
 
== Sintaxis ==
Línea 10: Línea 8:
  
 
== Parametros ==
 
== Parametros ==
 +
Nada.
  
 
== Retorna ==
 
== Retorna ==
Si no hay dato disponible devuelve -1.
+
El valor recuperado según el número de bits de datos configurado, o -1 si el buffer de entrada está vacío ([[int]]).
  
 
== Advertencias ==
 
== Advertencias ==
Nada.
+
* Si por error no se verifica de antemano si hay datos disponibles, '''peek()''' retornará 255 para [[byte]] en el caso que el valor real sea -1 (nada).
  
 
== Ejemplo ==
 
== Ejemplo ==

Revisión del 20:40 7 jul 2018

Descripción

Devuelve el siguiente byte (carácter) de los datos en serie entrantes sin eliminarlo del buffer serie interno. Es decir, las llamadas sucesivas a Serial.peek() devolverán el mismo carácter, al igual que la próxima llamada a Serial.read().

Sintaxis

Serial.peek();

Parametros

Nada.

Retorna

El valor recuperado según el número de bits de datos configurado, o -1 si el buffer de entrada está vacío (int).

Advertencias

  • Si por error no se verifica de antemano si hay datos disponibles, peek() retornará 255 para byte en el caso que el valor real sea -1 (nada).

Ejemplo

void setup(){
   Serial.begin(9600);
}
void loop(){
   if (Serial.available()){
      byte car = Serial.peek();    //Lee caracter enviado y NO borra del buffer.
      Serial.write(car);           //Imprime siempre lo mismo
   }
}

Vea también

Referencias