Hallo an alle, bei mir ist heute ein sehr komisches Problem im Zusammenhang mit einer seriellen Schnittstelle in LabVIEW aufgetreten. Ich lese zyklisch Daten von einem Klimaschrank über RS-232 aus. Dazu sende ich einen Abfragebefehl an den Klimaschrank und erhalte dann einen Datenstring zurück, der den aktuellen Zustand der Kammer abbildet. Das Protokoll nutzt 0x02 als Startsymbol und 0x03 als Terminator. Die Datenübertragung passiert dabei mit Software Flowcontrol ohne Parität in 9600 Baud. Nutze ich ein Terminal Programm (z.B. Termite) funktioniert die Übertragung ohne Probleme. Nutze ich LabVIEW flippen einzelne Bits in der Übertragung. Ich habe eine COM-Port Sniffer benutzt um nachzuschauen, ob die Daten richtig im Eingangspuffer ankommen. Dies ist NICHT der Fall. Die Daten die LabVIEW anzeigt werden mir auch vom Sniffer angezeigt. Der Sniffer zeichnet darüber hinaus auch Konfigurationsanweisungen an die COM Schnittstelle auf. Auch hier kann ich keine großen Diskrepanzen sehen. Zwar werden einige Puffer etwas kleiner Konfiguriert, aber eben nicht so klein, dass meine Frames nicht mehr reinpassen. Flushen des RX Puffers in LabVIEW vor einem Datenaustausch behebt das Problem ebenfalls nicht. Hat vielleicht jemand Erfahrungen bei der Fehlerbehebung auf einer COM Schnittstelle oder ähnliche Probleme schon selbst gehabt? Vielen Dank und viele Grüße Christoph
7 Bit vs. 8 Bit, das hat mich auch mal einige Stunden Sucherei gekostet?
Probiere mal einen anderen RS232 <> USB-Adapter, manche spinnen manchmal. Ich habe gute Erfahrung mit FTDI gemacht. Böse sind CH340 (Treiber: wch.cn), Prolific und andere oder probiere einen anderen Treiber.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.