Re: [Monobotics-develop] [ES] Desorden al realizar lecturas desde SerialPort
Brought to you by:
buhochileno
|
From: <buh...@gm...> - 2009-09-21 12:51:10
|
Jaime Alvarado wrote: > Solucione el problema. > No me había dado cuenta de que el puerto serial, no borra los datos no > capturados o leídos. Mas que el puertoserial, esto se debe muchas veces a que el dispositivo en cuestion implementa un buffer, el cual al no ser "vaciado" mantiene la ultima lectura... > Como la interfaz al enchufarla, tira continuamente la alerta de que le > configuren el reloj, como yo no leo esos datos, esos quedan guardados, > entonces al hacer lecturas posteriores leo las lecturas > correspondientes a la alerta. Porque tira constantemente la alerta para que le configuren el clock?, se supone que esto se chekearia al iniciar la simulacion y de ser requerido le asignaria la hora a la interfaz, o es solo porque eso no esta implementado aun? > Solucione esto creando un método que me limpia el puerto de lecturas > no capturadas, para esto tuve que cambiar el código del serialport > agregando la propiedad BytesToRead que lo único que hace retornar la > propiedad BytesToRead. Me parece bien la solucion, enviame la modificacion a nuestro codigo del serialport para probarla aca y subirla al repositorio Mauricio > > -------------------------------------------------- > From: <buh...@gm...> > Sent: Friday, September 18, 2009 3:23 PM > Cc: "monoBOTICS Developers" <mon...@li...> > Subject: Re: [Monobotics-develop] [ES] Desorden al realizar lecturas > desde SerialPort > >> >> >>> >>> Debiendo leer por ejemplo 255:255:4:5:5:4:...... algunas veces lee >>> 0:0:0:0:0:255:255:4:5:5:4 >>> Viendo el código de Heyu, este aplica timeout. >>> >>> ¿Tiene que ver en esta anomalía el hecho de que yo no uso el timeout? >>> Yo no lo uso debido a que en la documentación no sale nada sobre >>> timeout. >> Podria ser, tal vez en Heyu lo usan debido a que notaron esto >> empiricamente aunque no saliera en la documentacion... >>> >>> Ahora de ser necesario el uso de timeout, debo setear los ReadTimeOut >>> y WriteTimeOut antes o después de llamar a los read y write >>> correspondientes. >> En este caso seria necesario solo el ReadTimeOut aunque puedes probar >> con ambos, solo necesitas setarlo una vez, puede ser en el >> InitializeSimulation, a no ser que diferentes lecturas necesiten un >> timeout diferente, lo cual seria muy raro.. >> > > El Timeout no fue necesario, no era la razón de la desincronización. > >> Si esto no funciona, otra alternativa sera implementar una funcion que >> ordene el paquete que se lee, puesto en los casos malos lees algo asi: >> 0:0:0:0:0:255:255:4:5:5:4 >> Hacer una funcion que si o si, siempre trate de mover el los numeros al >> comienzo buscando en el arreglo los 255:255 que debes ser algo asi como >> "inicio del paquete", lo importante seria que hacia la cola no se >> pierdan en la lectura, en ese caso tal vez deberia dejarse el buffer de >> lectura un poco mas largo... >> >> Me cuentas como resulta... >> >> Mauricio >> >>> >>> ------------------------------------------------------------------------ >>> >>> >>> ------------------------------------------------------------------------------ >>> >>> Come build with us! The BlackBerry® Developer Conference in SF, CA >>> is the only developer event you need to attend this year. Jumpstart >>> your >>> developing skills, take BlackBerry mobile applications to market and >>> stay >>> ahead of the curve. Join us from November 9-12, 2009. Register >>> now! >>> http://p.sf.net/sfu/devconf >>> ------------------------------------------------------------------------ >>> >>> >>> _______________________________________________ >>> Monobotics-develop mailing list >>> Mon...@li... >>> https://lists.sourceforge.net/lists/listinfo/monobotics-develop >>> >> >> >> ------------------------------------------------------------------------------ >> >> Come build with us! The BlackBerry® Developer Conference in SF, CA >> is the only developer event you need to attend this year. Jumpstart your >> developing skills, take BlackBerry mobile applications to market and >> stay >> ahead of the curve. Join us from November 9-12, 2009. Register >> now! >> http://p.sf.net/sfu/devconf >> _______________________________________________ >> Monobotics-develop mailing list >> Mon...@li... >> https://lists.sourceforge.net/lists/listinfo/monobotics-develop >> > |