Serial.readString() Función de Arduino
Si alguna vez has utilizado Arduino y has intentado enviar y recibir datos a través del puerto serial, seguramente habrás utilizado la función "Serial.readString()". Esta función es una de las más utilizadas para recibir datos en una cadena de caracteres desde un dispositivo conectado al puerto serial de un microcontrolador Arduino.
En este artículo profundizaremos en la función Serial.readString(), explicaremos sus principales características, cómo funciona y cómo utilizarla en nuestros proyectos de Arduino.
¿Qué es Serial.readString()?
La función Serial.readString() es una función de Arduino que permite recibir datos en formato de cadenas de caracteres que son enviados desde otro dispositivo a través del puerto serial. Cada vez que se recibe un conjunto de datos, el microcontrolador Arduino almacena los datos en un búfer (memoria temporal) y los trata como una cadena de caracteres.
Esta función es muy útil cuando deseamos recibir datos en formatos específicos como texto o comandos, ya que permite la recepción de datos en tiempo real y en una secuencia predefinida.
Uso de Serial.readString()
La función Serial.readString() se utiliza para recibir los datos enviados por otro dispositivo a través del puerto serial. Estos datos se almacenan en una variable de tipo cadena de caracteres, la cual podemos manipular y utilizar en nuestro código.
La función es fácil de utilizar, sólo debemos llamarla en nuestro código siguiendo la sintaxis Serial.readString(), pasando como argumento los parámetros necesarios.
Es importante tener en cuenta que esta función espera un final de línea (n) por defecto para saber cuándo finaliza la cadena de caracteres, por lo que debemos asegurarnos de incluirlo al enviar los datos desde el otro dispositivo.
Sintaxis
Serial.readString();
Parámetros
No requiere ningún parámetro
Valor de retorno
Devuelve una cadena de caracteres que representa los datos recibidos desde el puerto serial.
Ejemplo de uso de Serial.readString()
A continuación, presentamos un ejemplo de cómo usar la función Serial.readString() en un programa de Arduino. En este ejemplo, asumimos que el dispositivo conectado al puerto serial envía un comando seguido de una cadena de caracteres, separados por una coma.
```
void loop() {
if (Serial.available()) {
String inputString = Serial.readString(); // Lee los datos recibidos y los almacena en una variable
int commaPosition = inputString.indexOf(','); // Busca la posición de la coma
String command = inputString.substring(0, commaPosition); // Extrae el comando
String data = inputString.substring(commaPosition + 1); // Extrae los datos
if (command == "LED") {
if (data == "ON") {
digitalWrite(ledPin, HIGH);
} else if (data == "OFF") {
digitalWrite(ledPin, LOW);
}
}
}
}
```
Conclusión
La función Serial.readString() es una herramienta poderosa para recibir datos del puerto serial en formato de cadenas de caracteres. A través de esta función, podemos recibir comandos e información de otros dispositivos conectados al microcontrolador Arduino, lo que nos permite crear proyectos más complejos y sofisticados.
Esperamos que este artículo haya sido útil para entender el uso y funcionamiento de la función Serial.readString() en Arduino. ¡A seguir creando proyectos interesantes con los conocimientos adquiridos!
Preguntas frecuentes
¿Cómo puedo enviar datos a través del puerto serial?
Para enviar datos a través del puerto serial, podemos utilizar la función Serial.println() o Serial.write(). Serial.println() envía una cadena de caracteres con un salto de línea al final, mientras que Serial.write() envía datos sin formato.
¿Es necesaria la inclusión de un final de línea en los datos enviados?
Sí, es necesario incluir un final de línea (n) al enviar datos a través del puerto serial para que el microcontrolador Arduino pueda detectar el final de la cadena de caracteres.
¿Cómo puedo determinar la longitud de los datos recibidos?
Podemos determinar la longitud de los datos recibidos utilizando la función Serial.available(), la cual devuelve el número de bytes disponibles para leer en el búfer del puerto serial.
Deja una respuesta