![]() |
TComPort ließt nach einer Stunde keine daten mehr
Hallo,
folgendes Problem, die Anwendung soll über die serielle Schnittstelle die Daten einer Wage empfangen. Die Wage selbst sendet kontinuirlich die Daten in Form von 16 Zeichen. Mit folgendem Code fange ich die Daten auf und Zeige den Wert in einem Label an. Die Variable aktwert ist global definiert und wird alle 30 Sekunden von einem Timer in eine DB gespeichert.
Delphi-Quellcode:
Das Programm funktioniert auch so weit so gut. Nur nach etwa 1 Stunde (manchmal auch erst später) ändert sich der Wert nicht mehr und der Com Port empfängt keine Daten mehr. Die Wage selber sendet jedoch noch. (Mit Meßgerät überprüft)
procedure TForm1.ComPort1RxFlag(Sender: TObject);
var Str1 : String; Posi : integer; wert : char; begin wert := ''; ComPort1.Readstr(str1, 100000) ; comport1.ClearBuffer(true, true); Posi := Pos(wert,Str1); if Posi > 8 then begin Posi := Pos(wert,str1); str1 := Copy(str1, Posi -9, 8); aktwert := StrToFloat(str1); aktuellerwert.Caption := floattostr(aktwert); end; end; Schließt man nun den Com Port und öffnet ihn wieder empängt er wieder die Daten. Ich habe bereits mehrere verscheidene USB-Seriell Adapter sowie direkte serielle Anschlüsse getestet überall das gleiche Problem. Bei neueren Computer tritt es jedoch erst wesentlich später auf daher denke ich das der Speicher irgendwo voll läuft ich weiß nur nicht wo. Ich bin für jede Hilfe dankbar. MfG Willy |
AW: TComPort ließt nach einer Stunde keine daten mehr
Hallo,
kannst Du denn z.B. im Taskmanager sehen, dass sich der benötigte Speicherplatz des Programms erhöht? Grüße Klaus |
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:53 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz