Hola soy nuevo en esto, y estaba probando un poco como funciona el tema del puerto serie en Arduino. Haciendo unos programillas tontos de pruebas, hice este, y no entiendo el resultado que me devuelve el puerto serie.
Tras la ejecución del código que pongo a continuación e introduciendo por ejemplo 5 carácteres de golpe en el puerto serie, el código en el serial monitor me devuelve todo el tiempo "Pendientes = 1".
Sin embargo si ejecuto el código sin el bucle WHILE, si que ocurre lo que yo esperaba que pasase, que es que sucesivamente va restando uno a la variable pendientes hasta que lee todos los carácteres, es decir:
"Pendientes = 4"
"Pendientes = 3"
"Pendientes = 2"
"Pendientes = 1"
"Pendientes = 0"
Supongo que será una chorrada de pregunta, pero si alguien me lo puede explicar se agradeceria!
Un saludo
char buffer[10];
int pendientes;
void setup()
{
Serial.begin(9600);
}
void loop()
{
pendientes=Serial.available();
while (pendientes>0)
{
Serial.print("Pendientes = ");
Serial.println(pendientes);
delay(2000);
Serial.readBytes(buffer,1);
}
}