Einzelnen Beitrag anzeigen

schwa226

Registriert seit: 4. Apr 2008
400 Beiträge
 
#8

AW: TComPort 4.0, OnRXChar, Zeile erkennen

  Alt 9. Nov 2010, 06:30
Danke für die Verbesserungen!

Werde ich dann mal testen.

Jetzt habe ich noch aber eine andere Frage zu diesem Thema!
Über die OnRxChar kommen laufen neue Daten rein. Und das nicht wenig (Baud=230400).

Jetzt habe ich das Problem, wenn ich die Stringbearbeitung in der OnRxChar drinnen habe das mir anscheinend der COM-Port/Buffer geblockt wird und mir Daten verloren gehen. Das RS232 Device ist nur über die TX Leitung verbunden. Also nichts mit Handshake usw. Die String-Bearbeitung ist dann auch noch um einiges größer.

Wenn ich nur die Daten auslese per ComPort_Connection.ReadStr(ReceivedData, Count) und dann einfach in ein Memo einfüge geht es ohne Probleme.

Gibt es da eine leichte Möglichkeit die Daten wohin zu schaufeln, damit der COM-Port nicht gebremst wird?
Meine Idee wäre ein Thread, denn ich dauernd die ReceivedData zugebe. Die String Verarbeitung erfolgt dann erst im Thread und dieser Synchronisiert sich dann mit einen Memo für die Ausgabe.
Damit sollte der Hauptthread dann nicht blockiert werden.

Kann der Hauptthread den Thread per Property eigentlich laufend Daten übergeben oder muss dazu der Thread pausiert werden? Rückwerts Thread->Hauptthread geht ja über Synchronize.
Delphi 2010, Update 4 & 5
  Mit Zitat antworten Zitat