Hallo Leute,
ihr seid meine letzte Hoffnung, ich bin nämlich langsam echt am
Ausrasten und fange auch an meine Intelligenz anzuzweifeln.
Meine mir selbst auferlegte Aufgabe ist eigentlich ziemlich einfach:
Ich habe ein (relativ altes) Tischmessgerät mit zwei angeschlossenen
Thermosensoren. Das Gerät hat einen RS232 Anschluss welcher -so die
Betriebsanleitung(2003)- dafür gedacht war, einen seriellen Drucker
anzuschließen.
Mit im Paket war bereits ein 9-Pin D-Sub. Das ist etwas dünner als die
andere RS232 Kabel die wir haben, vielleicht ein Nullmodem? Damit habe
ich mich noch nicht auseinandergesetzt. Dieses Kabel habe ich allerdings
verwendet.
Da ich am Labor-PC keine Adminrechte und kein Internetanschluss habe,
benutzte ich zu Beginn die portable PuTTY Version. Das hat auch relativ
einfach geklappt, Parameter stehen ja in der Anleitung. Und im Terminal
stand auch alles was ich eingetippt habe, was wohl dafür spricht dass
irgendwie eine Verbindung steht (bin absoluter Neuling auf dem gesamten
Gebiet, sollte ich vielleicht hinzufügen).
Anschließend musste ich noch herausfinden was mit "Befehl FC (hex)"
gemeint war. Einfach \xFC + Abschluss mit \x0D\x0A wie in dem Protokoll
beschrieben. Das führte allerdings alles nicht zum Output des Strings
mit den Messwerten.
Nach Stunden der Frustration beschloss ich ein paar andere Programme
auszuprobieren. HTerm hatte auch eine portable Version. Den Versuch
findet ihr im Anhang. Dies ist Grund warum ich hier bin bzw. warum ich
wirklich verzweifle, weil ich jetzt für eine Sache die eigentlich 15
Minuten in Anspruch nimmt schon über 10 Arbeitsstunden investiert habe.
Ich habe die Einstellungen GENAU nach den Vorgaben eingestellt. Der
COM-Port ist korrekt. 2400 Bau, 8/2 Bits, N, CTS/RTS, DTR aus. Und mit
HTerm ist ja wirklich kinderleicht, weil der mir das direkt in HEX
konvertiert und CR-LF automatisch beim Abschicken anhängt. D.h. alles
was ich eigentlich machen muss ist "FC" in die Com-Zeile zu tippen und
Enter zu drücken. Aber verdammt nochmal es passiert einfach nichts und
das bringt mich langsam zur Weißglut. Egal woran ich rumspiele, es kommt
nie der gewünschte String zurück und ich weiß wirklich nicht mehr was
ich machen soll...
Es gibt in dem Gerät einen Printer Mode den man an- oder ausschalten
kann. Ich dachte das steht für die "Freischaltung" der seriellen
Kommunikation, es ändert sich aber nichts.
Ich hoffe wirklich dass ihr mir weiterhelfen könnte. Dass die TX-Zeichen
zurückkommen, also Received werden, spricht ja meines bescheidenen
Wissens nach wenigstens dafür dass die Verbindung steht.
Viele Grüße
Jan
Jan schrieb:> Und im Terminal> stand auch alles was ich eingetippt habe, was wohl dafür spricht dass> irgendwie eine Verbindung steht
Oben unter "Received Data" taucht das auf, was du sendest? Das ist bei
HTerm normalerweise nicht so; das bedeutet wahrscheinlich, dass RX und
TX gebrückt sind, und das was du sendest, wieder zurück kommt. Prüfe mal
genau was wie verbunden ist...
Dr. Sommer schrieb:> Oben unter "Received Data" taucht das auf, was du sendest? Das ist bei> HTerm normalerweise nicht so; das bedeutet wahrscheinlich, dass RX und> TX gebrückt sind, und das was du sendest, wieder zurück kommt. Prüfe mal> genau was wie verbunden ist...
Ist das nicht einfach ein Echo?
An der Pinbelegung selbst habe ich nichts geändert, ich habe einfach das
Kabel benutzt das in der mir überreichten Box dabei war.
Meinst du, dass der RX- und TX-Pin am COM-Port des PCs gebrückt (also
fehlerhaft kontaktiert) sind und die transmittierten Daten deswegen als
Received angezeigt werden?
Jan schrieb:> Dr. Sommer schrieb:>> Oben unter "Received Data" taucht das auf, was du sendest? Das ist bei>> HTerm normalerweise nicht so; das bedeutet wahrscheinlich, dass RX und>> TX gebrückt sind, und das was du sendest, wieder zurück kommt. Prüfe mal>> genau was wie verbunden ist...>> Ist das nicht einfach ein Echo?
Kann sein. Problem: Wir wissen nicht, woher - von "Local Echo"
(Terminalprogramm gibt eingetippte Zeichen nochmal aus) über einen
Kurzschluss zwischen RXD und TXD bis zu einem Echo des Geräts kann das
Echo überall her kommen.
Was passiert denn, wenn du das Gerät nicht angeschlossen hast?
Und was, wenn du auch das Kabel nicht angeschlossen hast?
Kannst du die Spannungen an DTR und RTS messen?
MfG, Arno
Es gibt oft genug Meinungsverschiedenheiten was "Return" ist. Mal ein
x0d, mal ein x0a. Oder auch Beides.
Putty ist da nicht so gut, probier mal Realterm.
HTH,
Nick
Ich bin bezüglich der Software eingeschränkt. Kann nur portable
Versionen nehmen. Aber ich bin auch wie erwähnt auf HTerm3.4
umgestiegen.
Das läuft jetzt gerade auch, gibt die Messdaten also endlich aus, nur
noch nicht so wie ich möchte.
Arno schrieb:> Was passiert denn, wenn du das Gerät nicht angeschlossen hast?>> Und was, wenn du auch das Kabel nicht angeschlossen hast?>> Kannst du die Spannungen an DTR und RTS messen?
Ja so Troubleshooting wäre mal ganz sinnvoll.
Also wenn ich bspw. den falschen Port auswähle gibt es kein Echo, d.h.
es wird schon mal nicht einfach der TX "String" wiederholt.
Ich hab das jetzt gerade auch mehr oder weniger zum Laufen gebracht.
Das Kabel ist wahrscheinlich einfach nicht zu gebrauchen.
Wenn ich in HTerm jetzt die Parameter richtig setze und an dem Gerät den
PrintMode aktiviere gibt der einfach die Werte der Messkanäle endlos
aus.
Das ist zwar noch nicht das was ich wollte, aber wenigstens ist die
Verbindung damit mehr oder weniger sichergestellt.
Hm. Leider wieder mal unvollständige Angaben.
Der Anhang deutet auf die Möglichkeit hin, dass das Gerät von der RS-232
Signalen DTR und RTS versorgt werden könnte.
Der erste Satz, ist nämlich nicht so zu interpretieren, dass eine
Flusskontrolle mit CTS/RTS eingestellt werden soll, sondern dass diese
Signale bestimmte statische Pegel haben sollen.
Dazu passt auch das Programmbeispiel unten auf der Seite.
Du hast abern in HTERM die Flusskontrolle eingeschaltet.
Nick M. schrieb:> Es gibt oft genug Meinungsverschiedenheiten was "Return" ist. Mal ein> x0d, mal ein x0a. Oder auch Beides.
Das sind gelinde gesagt die Hex-Befehle für Zeilenumbruch und
Zeilenvorschub oder?
Also "fang eine neue Zeile am Anfang an"?
> wirklich verzweifle, weil ich jetzt für eine Sache die eigentlich 15> Minuten in Anspruch nimmt schon über 10 Arbeitsstunden investiert habe.
Nach gerade mal 10h frustiert. Also die Jugend von heute kann echt nix
mehr ab. :-)
Noch ein Tip. Es gab auch mal Geraete die hatten eine potentialfreie
Schnittstelle. Die haben sich dann gerne die externe Stromversorgung von
einer der Steuerleitungen geklaut. Wenn du sowas hast dann kannst du
senden bist du gruen wirst, es wird nie eine Antwort kommen solange du
nicht die Versorgung ueber die Steuerleitungen einschaltest.
Olaf
Die Seite im Anhang ist alles was in der Betriebsanleitung dazu steht.
Es gibt noch 3 Zeilen zum Printmode, aber der hilft auch nicht.
Also mehr Angaben kann ich dir dbzgl. leider nicht geben.
Jan schrieb:> Die Seite im Anhang ist alles was in der Betriebsanleitung dazu steht.>> Es gibt noch 3 Zeilen zum Printmode, aber der hilft auch nicht.>> Also mehr Angaben kann ich dir dbzgl. leider nicht geben.
Ich weiss zwar nicht wen Du mit "Du" meinst, aber ich fühle mich mal
angesprochen.
Folgende Angaben resp. Informationen fehlen:
1. Typ und Hersteller des Gerätes.
2. Vollständige Bedienungsanleitung
Aber wiegesagt:
Beitrag "Re: Probleme mit serieller Kommunikation RS232"
Arno schrieb:> von "Local Echo"> (Terminalprogramm gibt eingetippte Zeichen nochmal aus)
HTerm macht das nicht! Das Local-Echo wird unten angezeigt. Es handelt
sich also entweder um einen Kurzschluss oder das Gerät selber schickt
alles zurück. Lässt sich ganz einfach überprüfen, indem man den COM-Port
offen lässt und etwas sendet - dann sollte im "Received" Fenster
nichts erscheinen.
Also um das zu aktualisieren:
Das Echo kommt vom Gerät, rec.table bleibt leer wenn ich das Gerät nicht
anschließe.
Und ich bin jetzt endlich am Ziel angekommen. Entgegen der Anweisungen
von meinem Vorbenutzer und der Betriebsanleitung funktioniert das
allerdings erst richtig wenn CTS/DTR AUS und RTS EIN gestellt werden.
Dann kann ich den FC Befehl senden und ich bekomme die beiden Messwerte.
Sehr schön, Danke für die Anregung Leute, das war entscheidend.
Falls jemand jemals ein ähnliches Problem haben sollte.
Es handelt sich um ein Tischgerät mit zwei Messkanälen der T900-Serie
(T905/T995) vom Hersteller Dostmann Electronic. Wird heute meines
Wissens nach auch nicht mehr hergestellt.
Die entsprechende Betriebsanleitung ist im Anhang.
Bis zum nächsten Mal!