Ver Mensaje Individual
  #6  
Antiguo 02-11-2018
[egostar] egostar is offline
Registrado
 
Registrado: feb 2006
Posts: 6.556
Reputación: 25
egostar Va camino a la fama
Lo prometido.

Código Delphi [-]

var
  CRTrig: Word;
  Linea: String;

//Parametros de Comunición [COM1,1200,None,8,1]
procedure TLector.InicializaCOM;
begin
  ApdComPort1.ComNumber := 1;
  ApdComPort1.Baud      := 1200;
  ApdComPort1.DataBits  := 8;
  Case Parity of
     1 : ApdComPort1.Parity := pNone;
     2 : ApdComPort1.Parity := pOdd;
     3 : ApdComPort1.Parity := pEven;
     4 : ApdComPort1.Parity := pMark;
     5 : ApdComPort1.Parity := pSpace;
  end;
  ApdComPort1.StopBits := 1;
  ApdComPort1.Open := True;
  CRTrig := ApdComPort1.AddDataTrigger(#13, False);
end;

procedure TLector.ApdComPort1TriggerAvail(CP: TObject; Count: Word);
var
  I : Word;
begin
  for I := 1 to Count do
    Linea := Linea + ApdComPort1.GetChar;
end;

procedure TLector.ApdComPort1TriggerData(CP: TObject; TriggerHandle: Word);
begin
  if TriggerHandle = CRTrig then 
  begin
    Linea := StringReplace(Linea,#13,'',[rfReplaceAll]);
    Linea := StringReplace(Linea,#10,'',[rfReplaceAll]);
  try
      Memo1.Lines.Add(Linea);
  except
      Memo1.Clear;  
      Memo1.Lines.Add(Linea);
  end;
    Linea := '';
  end;
end;

Espero te ayude.

Saludos
__________________
"La forma de empezar es dejar de hablar y empezar a hacerlo." - Walt Disney
Responder Con Cita