Forum: PC Hard- und Software Probleme mit serieller Kommunikation RS232


von Jan (Gast)


Angehängte Dateien:

Lesenswert?

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

von Dr. Sommer (Gast)


Lesenswert?

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...

von Jan (Gast)


Lesenswert?

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?

von Günter Lenz (Gast)


Lesenswert?


von Arno (Gast)


Lesenswert?

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

von Nick M. (Gast)


Lesenswert?

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

von Jan (Gast)


Lesenswert?

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.

von Jan (Gast)


Lesenswert?

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.

von Theor (Gast)


Lesenswert?

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.

von Jan (Gast)


Lesenswert?

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"?

von Olaf (Gast)


Lesenswert?

> 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

von Jan (Gast)


Lesenswert?

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.

von Theor (Gast)


Lesenswert?

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"

von Dr. Sommer (Gast)


Lesenswert?

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.

von Jan (Gast)


Angehängte Dateien:

Lesenswert?

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!

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
Noch kein Account? Hier anmelden.