Autor Tema: pueden decirme como vaciar el buffer del puerto serie  (Leído 3418 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado galileo_pic

  • PIC10
  • *
  • Mensajes: 7
pueden decirme como vaciar el buffer del puerto serie
« en: 09 de Junio de 2004, 18:32:00 »
esta es la instrucción que estoy tratando e realizar con un modem, simulado desde una computadora

   clon=getc();   //lee un #13
   clon=getc();   //lee un #10
   clon=getc();   //lee un "O" ó un "E"
   if (clon=="O")
      printf("si es
";
   else
      printf("no es
";


Intento leer lo que sobra del buffer con

   do{            //Vaciar buffer esto todavia no sirve
   clon=getc();
   }while(!kbhit());

y asi poder vaciar los caracteres sobrante, pero no funciona.

Tambien intento leer lo que sobra del buffer con

   do{            //Vaciar buffer esto todavia no sirve
   clon=getc();
   }while(kbhit());

el problema es que si no vacío el buffer no puedo leer la siguiente respuesta del modem.

Les agradezco cualquier ayuda que puedan brindarme

Desconectado Abago

  • PIC24F
  • *****
  • Mensajes: 792
RE: pueden decirme como vaciar el buffer del puerto serie
« Respuesta #1 en: 09 de Junio de 2004, 20:42:00 »
Con que micro trabajas???
usas la usart???
El buffer que utilizas es el buffer de la usart??? 2 bytes!!!
o te creaste un prebuffer????

yo por ejemplo, lo que hago, es crearme un buffer fifo, en el que voy almacenando los datos que entran por hardware....
y luego trabajo tranquilamente sobre este buffer en el módulo principal....
leyendo caracter a caracter...

mis conociemiento de C para pic, son nulos...
conozco el lenguaje a nivel estructural, pero sobre el tema de los comandos, no lo conozco, por lo que solo puedo orientarte con teoría...

Ves planteando tus dudas, y a ver si entre todos te podemos hechar una mano...