Go Down

Topic: Duda con lectura y escritura en el puerto serie (Read 934 times) previous topic - next topic

kaslampard

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

Code: [Select]
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);
 }

}

Go Up