![]() |
Konfig-Fehler? - Druckversion +- LabVIEWForum.de (https://www.labviewforum.de) +-- Forum: LabVIEW (/Forum-LabVIEW) +--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein) +---- Forum: Instrument IO & VISA (/Forum-Instrument-IO-VISA) +---- Thema: Konfig-Fehler? (/Thread-Konfig-Fehler) |
Konfig-Fehler? - Katsching - 22.02.2012 12:12 Ich bräuchte mal euere Hilfe.... ich bin dabei ein VI zu schreiben, welches Daten aus der seriellen Schnittstelle ausliest, mit einem Zeitstempel versieht und das ganze dann in eine TXT-Datei schreibt, nur leider funzt es nicht so, wie es soll.... Auf die Schnittstelle sende ich zum Testen (mit Docklight) folgendes Protokoll 53 07 4C 61 62 56 69 65 57 64 (HEX) 53 = Startbyte 07 = Längenbyte 4C - 57 Datenbytes (=Labview) 64 - checksumme Jetzt scheint es mir so, als ob das Programm leider immer irgendwo in den Datenstring einspringt und somit bekomme ich auch Daten wie 11:54:55,251 22.02.2012 VieWdS 11:54:55,251 22.02.2012 bVieWd 11:54:55,251 22.02.2012 abVieW 11:54:55,251 22.02.2012 LabVie 11:54:55,266 22.02.2012 LabVi 11:54:55,266 22.02.2012 SLabV 11:54:55,266 22.02.2012 dSLab 11:54:55,266 22.02.2012 WdSLa 11:54:55,266 22.02.2012 eWdSL 11:54:55,266 22.02.2012 ieWdS könnt ihr mir mal auf die Sprünge helfen, damit es am Ende so aussieht 11:54:55,282 22.02.2012 LabVieW RE: Konfig-Fehler? - GerdW - 22.02.2012 12:37 Hallo Katsching, nun ja: du liest stur 8 Bytes vom seriellen Port, obwohl deine Botschaft aus 10 Bytes besteht. Schon mal darüber nachgedacht? ![]() RE: Konfig-Fehler? - Katsching - 22.02.2012 13:41 Ähm, ja gut....ich sag mal da hast du recht ![]() Habe gerade gesehen, dass nur 8 möglich sind... Habe nun 1 Startbyte 1 Längenbyte 5 Datenbyte 1 Stoppbyte hole mir mit Teil-String die Datenbytes raus und siehe da 13:33:37,323 22.02.2012 DATEN 13:33:37,463 22.02.2012 DATEN 13:33:37,620 22.02.2012 DATEN 13:33:37,776 22.02.2012 DATEN 13:33:37,963 22.02.2012 DATEN 13:33:38,104 22.02.2012 DATEN ![]() ![]() ![]() ![]() ![]() ![]() Danke nochmal für den Tipp.....da hätte ich wohl noch eine Weile gebraucht, bis ich auf die 8 gekommen wäre... RE: Konfig-Fehler? - Lucki - 22.02.2012 13:47 Die richtige Bytezahl für das Lesen gewähleistet noch keine sichere Synchronisation: Wenn es einmal falsch startet, dann liest es für immer falsch. Aber: Zur sicheren Synchronisation ist doch das Startbyte da. Es dient dazu, wie auch die anderen Hilfsbytes, benutzt zu werden! [attachment=38770] Anmerkung: Das ist immer noch nicht ganz sicher, da der Datenstring auch das Startbyte "S" enthalten kann. Ganz sicher ist es, vor jedem Senden des Kommandos den seriellen Empfangspuffer zu leeren. |