Serielle Schnittstelle loggen für DOS/ Windows Portierung

Gast #417464
Hallo zusammen,

ich habe hier ein uraltes DOS Programm, dass über die serielle
Schnittstelle mit einer Elektronik arbeitet. Da es unheimlich lästig
ist immer wieder einen Rechner mit DOS zu betreiben besteht der Wunsch
dies mit einem Windows Prog auf Basis VB zu realisieren. Nun, da das
Prog und die Elektronik schon sehr alt sind, gibt es natürlich auch
keine Doku mehr.
Kennt jemand ein WindowsProg mit dem ich die serielle Kommunikation des
DOS Programms loggen kann, damit ich mir daraus ein VB Prog stricke?
Vielen Dank Tom
Gast #417465
Du willst das Protokoll rausfinden?
Dann baue Dir einen Adapter, der die RxD- und die TxD-Leitungen des
Kabels zwischen dem DOS-PC und der Elektronik anzapft und lege diese
jeweils auf die RxD-Leitung je einer SUB-D-Buchse. Die kommen dann in
die beiden COM-Ports eines anderen Windows-PCs. Dort startest Du dann 2
mal Hyperterm.
Fertig ist der Datenlogger.
Was da hin- und hergeschickt wird, das wirst Du alleine rausfinden
müssen.

Alternativ geht auch ein mehrkanaliger Logic-Analyser, komerziell oder
Eigenbau auf Basis eines µC. Braucht ja nur digitale Eingänge zu
loggen. DTR, CTS usw. nicht vergessen.


Blackbird
Persönliche Seite #417467
Versuche mal PortMon unter DOS laufen zu lassen ...

Nein, um so eine Kommunikation brauchbar abzuhören, ist zusätzlich zum
abzuhörenden PC ein weiterer mit zwei seriellen Schnittstellen nötig,
der mit der einen die vom DOS-PC zum Gerät und mit der anderen die vom
Gerät zum DOS-PC gesendeten Daten aufzeichnet.

Die Aufzeichnungssoftware (für DOS habe ich sowas mal vor Äonen
gesehen) stellt dann beide Datenkanäle in einem sinnvollen zeitlichen
Zusammenhang dar; das wäre der Verwendung zweier Terminalprogramme
gegenüber ein gewisser Vorzug.
Persönliche Seite #417471
Komplexere Protokolle sind mit einer Schnittstelle nicht brauchbar
abhörbar - einerseits können, da serielle Verbindungen
Vollduplexverbindungen sind, beide Teilnehmer gleichzeitig senden und
empfangen, andererseits möchte man auch eine Richtungsinformation
haben, um herausfinden zu können, wer was gesendet hat.

Wenn man nur beide Sendedatenleitungen kombiniert, kommt es zwar bei
Halbduplexbetrieb zu keinem Datensalat, aber eine Zuordnung, wer was
gesendet hat, ist halt auch nicht "drin".

Daher: Zeitgleich auf zwei Schnittstellen mithören.
Gast #417472
s/müsste/könnte/ ;-)

Es gibt eine Einschränkung: Beide ordentlichen Teilnehmer an der RS232
Kommunikation dürfen nicht gleichzeitig schwätzen. Wenn das der Fall
ist das Mitgeloggte gruselig zu lesen. Dem Mitloggen selbst tut es aber
keinen Abbruch.
Gast #417473
Ich habe es geahnt und daher auch meine Relativierung ;-)

Du hast natürlich Recht. Dennoch würde ich die einfache Methode mal
ausprobieren, wenn kein PC mit 2 freien RS232 Schnittstellen vorhanden
ist. Es kann ja sein, dass sich die Kommunikation "brav" verhält.

Die Richtungsinformation kann man herausfinden, wenn man jeweils nur
einen Teilnehmer abhört und das Experiment mehrfach ausführt. Dazu kann
man obigen Sniffer gezielt auf eine von den beiden Übertragungsleitungen
aufschalten. Voraussetzung ist natürlich, dass man mehrere Versuche hat.

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 20 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.