Ver Mensaje Individual
  #11  
Antiguo 08-05-2008
vejerf vejerf is offline
Miembro
 
Registrado: ene 2007
Posts: 206
Reputación: 18
vejerf Va por buen camino
Hola de nuevo,

Cita:
Si y no, ya que al ser una comunicación serial, los caracteres te llegan como su nombre lo indica, de forma serial, uno tras otro, por lo que el conflicto que mencionas no creo que se presente ya que cuando te llega el primer caracter de la siguiente trama, inicializas la variable Linea.
Esto lo entiendo, pero yo lo que digo es que no tienen por qué llegarte todos los caracteres de una trama de una vez. Es decir si yo envío por ejemplo la siguiente trama por un puerto serie:
<STX>Esto es un ejemplo de una cadena por el puerto serie<ETX>

puede que la primera vez que se genera el evento llegue tan sólo:
<STX>Esto es un ejemplo de una cadena

esto tu lo almacenas en lína y a continuación te llega el resto de trama:
por el puerto serie<ETX>

Esto te llega la segunda vez que se genera el evento por lo que la variable línea se habrá vuelto a inicializar y no tendrá la trama completa por lo que se perdería.

Si no me equivoco este es el comportamiento del puerto serie, aunque para decir la verdad es ahora cuando lo estoy manejando por primera vez. Para evitar que se pierdan tramas lo que usaba yo es un buffer circular.

Un saludo egostar & cia...
Responder Con Cita