Contenido del curso

Recepción de datos por Puerto Serie

 

Una vez hemos sido capaces de enviar mensajes por el puerto serie, vamos a emplear la consola de comandos como una interfaz de entrada. De esta forma podemos escribir un comando en la consola y que Arduino ejecute dicha función.

Las funciones necesarias para realizarlo son las siguientes:

SentenciaDescripción
Serial.available()Devuelve un 0 si no existen valores en el buffer pendientes de leer. Si quedan caracteres por leer, devuelve un 1 o true.
Serial.read()Realiza la lectura de un byte puerto serie y lo devuelve como un entero.
Serial.readString()Realiza la lectura de una cadena de caracteres completa.
Serial.readStringUntil()Realiza la lectura de una cadena de caracteres hasta encontrar el carácter indicado en los argumentos (caracter).


 

    Nota importante

El valor que lees del serial es un byte que representa el carácter que se envía. Los valores de entrada que recibes desde el monitor serial son caracteres (por ejemplo, '1', '2', '3'), no enteros. El uso de un char para una variable es válido, pero hay que tener en cuenta que Serial.read() devuelve un valor de tipo byte (equivalente a un char), que representa el código ASCII del carácter recibido.

Por ejemplo, si se envía el número 1 desde el monitor serial, el valor ASCII de '1' es 49, no 1. Esto hace que las comparaciones en tu switch (que están comparando contra los valores 1, 2, 3) nunca coincidan.

Vistas
11 Número de vistas
11 Vistas de miembros
0 Vistas públicas
Acciones
0 Gustos
0 No me gusta
0 Comentarios
Compartir en redes sociales
Compartir enlace
Compartir por correo

Por favor iniciar sesión para compartir esto webpage por correo.