Hallo Delphianer,
ich habe ein Problem bei der Weiterleitung von Daten zwischen einem
TCP Client und einem Seriellen Port.
An dem Seriellen Port ist GPS Empfänger angeschlossen der Korrekturdaten von einem
TCP Client(NTRIP Client) erhalten sollen.
Im Grunde ist es nichts weiter als eine Datenweiterleitung an den GPS Empfänger. Der GPS Empfänger verfügt über eine Auswertung
wie viele Pakete empfangen, erfolgreich verarbeitet und fehlerhaft waren.
Es werden zyklisch Daten vom NTRIP Client empfangen und an den Seriellen Port weiter geleitet. In diesen Datenpaketen können
0 Byte Werte vorhanden sein. Um diese Daten auch weiterleiten zu können wird nach dem öffnen des Seriellen Ports das RTS und das DTR Signal
auf "On" gesetzt.
Delphi-Quellcode:
try
FComPort.Open;
if (FComPort.Connected) then
begin
FComPort.SetRTS(True);
FComPort.SetDTR(True);
end;
except
// Fehlermeldung ausgeben
end;
Bei der Weiterleitung der Daten meldet der GPS Empfänger immer wieder fehlerhafte Pakete und ich weis nicht warum?
Deswegen habe ich das gleiche in C# nach gebaut und es funktioniert ohne Probleme. Kann mir hier jemand mit diesem Problem weiter helfen?
Verwendete Komponenten und Entwicklungssysteme:
- Delphi XE 6
- ComPort Library 4.11
-
Indy Komponente