Wenn dein Problem oder deine Frage geklärt worden ist, markiere den Beitrag als "Lösung",
indem du auf den "Lösung" Button rechts unter dem entsprechenden Beitrag klickst. Vielen Dank!
Ich messe die Strom-Spannungscharakteristik von elektronischen Bauteilen. Als Datenpuffer dient mir eine Spreadsheetdatei in der alle Messungen automatisch ohne Filedialog abgespeichert werden. Die letzte Messung überschreibt die vorletzte. Die jeweils aktuelle Messung wird
auch als XY-Kurvengraph dargestellt. Sobald mir eine Kurve als geeignet erscheint, so möchte ich sie unter einem eigenen Namen abspeichern.
Dazu lese ich die Daten aus der oben genannten Spreadsheetdatei aus und speichere sie über einen Filedialog unter neuem Namen ab.
Soweit sogut! Dies funktioniert eine Viertelstunde lang. Klicke ich zu einem späteren Zeitpunkt den Speichern-Button, so stürzt das
Programm ab. Das Programm läuft im Polling-Betrieb innerhalb einer Endlos-While-Schleife. Der Auslese-Speichervorgang befindet sich
in einer Case-Struktur und wird durch einen booleschen Schalter ausgelöst. Es kann sich hier nicht um einen logischen Fehler handeln,
da das Programm ja anfangs einwandfrei läuft. Wo liegt also die Ursache des Problems? Einen Auszug aus dem VI habe ich als Datei angehängt.
hi, wie du schon sagst sehe ich keinen logischen fehler in deinem programm. aber probeiere mal folgenden änderungen.
-den loop mit einer zeitfunktion versehen so brauchst du 100% cpu.
-da dies ein loop sit solltetdu die referenz zu der datei nicht immer auf und wieder zu machen. mache sie vor dem loop auf und nachher wieder zu. in deinen case "true" machst du folgendes:
1. referez schliessen.
2. file kopieren.
3. referenz wieder öffnen.
ich weissnicht ob meine lösung geht. aber immer wenn ich 100% cpu brauchte mit einem loop, der noch auf hardware zugriff. lief die app nicht stabil.
danke für den Tip mit der Zeitfunktion ... nachdem ich "Warten 1000 ms" eingefügt habe, ist die CPU-Auslastung von 100 auf 2% abgesunken!!!
Das Programm läuft nun schon seit 2 Stunden ohne abzustürzen (Test läuft weiter...).
Was Du meinst bezüglich der Referenz, ist für mich nicht relevant, da ich eh zuerst alle Daten in ein Array einlese und erst dann in
die Datei schreibe.