Cita:
Empezado por vejerf
Quizás no sea la forma más práctica ni ortodoxa, pero más o menos me funciona
|
Hola
vejerf
Para este tipo de menesteres y desde mi experiencia con la recepción de paquetes de datos a través de puerto serial, te recomiendo que uses el componente
TurboPower Async Professional (
gracias amigo Al por recomendarmelo hace ya unos años ), el cual tiene dentro de sus particularidades un objeto de nombre
ApdDataPacket, a este objeto le asignas una cadena de inicio y una cadena de final por ejemplo:
En las propiedades del Objeto ApdDataPacket
StartString = #22 [SYN] (Aunque yo usaria solo #2 [STX], a menos que requieras por fuerza el [SYN])
EndString = #3 [ETX];
y en código solo requieres hacer esto:
Código Delphi
[-]
procedure TLector.ApdDataPacket1StringPacket(Sender: TObject; Data: string);
begin
ProcesaInformacion(Data); end;
Al final, te olvidas de codificar y validar cada vez que recibes un caracter.
Salud OS