Diferencia entre revisiones de «Serial.readString()»
De ArduWiki
m |
(→Ejemplo) |
||
Línea 14: | Línea 14: | ||
== Ejemplo == | == Ejemplo == | ||
+ | Envíe por la consola un mensaje corto. Por ejemplo "Hola mundo" | ||
+ | |||
<syntaxhighlight lang="c++"> | <syntaxhighlight lang="c++"> | ||
− | if (Serial.available()) { | + | void setup(){ |
− | + | Serial.begin(9600); | |
− | + | } | |
− | + | void loop(){ | |
+ | if (Serial.available()) { | ||
+ | Serial.print("Mensaje recuperado: \""); | ||
+ | Serial.print(Serial.readString()); | ||
+ | Serial.println('\"'); | ||
+ | } | ||
} | } | ||
</syntaxhighlight> | </syntaxhighlight> |
Revisión del 17:15 17 feb 2019
Descripción
Lee caracteres y los coloca en un String. La función finaliza cuando el tiempo de espera (ver Serial.setTimeout()) se ha agotado.
Sintaxis
Serial.readString();
Retorna
El objeto String resultante de la lectura.
Advertencias
- Hay un "bug" o fallo con esta función: si el flujo de entrada es constante (tiempo de espera nunca se agota), se corre el riesgo de colgar completamente el programa. La razón se debe a que, conceptualmente, String es ilimitado en tamaño; pero como la SRAM no es así, eventualmente el programa llegará a colapsar.
Ejemplo
Envíe por la consola un mensaje corto. Por ejemplo "Hola mundo"
void setup(){
Serial.begin(9600);
}
void loop(){
if (Serial.available()) {
Serial.print("Mensaje recuperado: \"");
Serial.print(Serial.readString());
Serial.println('\"');
}
}