Probleme mit RS232 / Docklight

  • Thread starter Markus Gronotte
  • Start date
M

Markus Gronotte

Guest
Moin,

Sorry erstmal dass ich wieder nerve, aber ich komme
hier ohne jemanden mit Erfahrung wohl nicht mehr weiter.

Also erstmal vorweg: Es existiert eine Schaltung die
ein analoges Signal in 8 Bit codiert und ständig sendet
und nicht auf gesetztes DTR wartet.
Wie das an RS232 angeschlossen ist sieht man hier [1].
Da die Schaltung das Signal ständig sendet, wollte ich
mir das gerne über Docklight welches mir in dieser NG
empfohlen wurde erst einmal anschauen. Funktioniert aber
nicht. Wenn man bei "Flow Control" auf "Manual" stellt,
leuchtet der Punkt unter DSR rot. Ich vermute das ist wegen
der Beschaltung bzw., weil DSR mit DTR verbunden ist.
Also meine erste Frage: Was muss man bei Docklight einstellen,
damit bei der genannten Schaltung Daten angezeigt werden?
Das Problem ist nämlich da kommen nicht einmal Daten an,
wenn ich eine einfache Maus anstöpsel egal was man bei Docklight
einstellt. Jetzt muss man dazu sagen ich versuche hier
einen USB-Adapter zu benutzen. Wenn man in diesen USB Adapter
erst die Maus anstöpselt und dann an den Rechner im USB einstöpselt,
wird die Maus von Windows erkannt, installiert und funktioniert.
Wenn man die Maus am RS232 dann abstöpselt und wieder anstöpselt,
kann man im Docklight Zahlen sehen, wenn man die Maus bewegt.
128 und 0 kommt da an. nichts anderes. Wenn man aber erst
USB einstöpselt und dann die Maus, kommt wie am Anfang erwähnt
gar nichts an. Weder bei der Maus noch bei meiner Schaltung.

Wenn man das Oszi bei der Schaltung an den Empfänger-optokoppler
hält sieht man das digitale Signal. es kommt also an. Allerdings
wegen der Optokoppler sind das keine richtigen Rechtecke, sondern
ebend die üblichen runden Dreiecke.

Liegt das Problem vielleicht einfach nur darin, dass ich versuche
einen USB-Adapter zu nutzen? Ich habe hier so viele Fehlerquellen,
dass ich gar nicht weiß wo ich anfangen soll zu suchen, deshalb hoffe
ich einfach mal darauf, dass jemand damit mehr Erfahrung hat als ich
und mir vielleicht einen Tip geben kann.

Eine andere mögliche Fehlerquelle wäre noch die Frequenz. Da ich diese
mit einem Trimmpoti einstelle schwankt die schonmal zwischen 9780
und 9820. aber pendelt eher zwischen 9790 und 9810.

Ich hoffe ich habe das Problem überhaupt genau genug beschrieben,
dass man da einen Fehler erkennen könnte.


lg,

Markus



[1] http://home.arcor.de/pscit/frage2.png
 
Markus Gronotte wrote:
Liegt das Problem vielleicht einfach nur darin, dass ich versuche
einen USB-Adapter zu nutzen? Ich habe hier so viele Fehlerquellen,
dass ich gar nicht weiß wo ich anfangen soll zu suchen, deshalb hoffe
ich einfach mal darauf, dass jemand damit mehr Erfahrung hat als ich
und mir vielleicht einen Tip geben kann.
Wenn du zuviele Fehlerquellen hast, wirf sie raus. Eliminiere alles, was
nicht erforderlich ist, und konzentriere dich ausschliesslich auf den Rest.

Robert
[1] http://home.arcor.de/pscit/frage2.png
--
'Vom Standpunkt eines Beamtenrechtlers aus betrachtet ist der Tod die
schärfstwirkenste aller bekannten, langfristig wirkenden Formen der
vollständigen Dienstunfähigkeit.'
aus: Kommentar zum Beamtenrecht.
 
Markus Gronotteschrieb:
"
Moin,

Sorry erstmal dass ich wieder nerve, aber ich komme
hier ohne jemanden mit Erfahrung wohl nicht mehr weiter.

[... viel Text]
Ich habe hier so viele Fehlerquellen,
dass ich gar nicht weiß wo ich anfangen soll zu suchen, deshalb hoffe
ich einfach mal darauf, dass jemand damit mehr Erfahrung hat als ich
und mir vielleicht einen Tip geben kann.

Eine andere mögliche Fehlerquelle wäre noch die Frequenz. Da ich diese
mit einem Trimmpoti einstelle schwankt die schonmal zwischen 9780
und 9820. aber pendelt eher zwischen 9790 und 9810.
Versuch erst mal ganz von vorn anzufangen. D.h. schalte die Flow
Control erstmal ganz aus. Du müstest dann etwas empfangen. Selbst wenn
die Baudrate nicht übereinstimmt müstest Du irgend etwas zu sehen
bekommen, denn sobald eine Low Signal kommt, wird dieses als Startbit
erkannt.

Mit den USB Wandlern ist das so eine Sache. Ich hab z.B. noch keinen
gefunden, der etwas vernünftiges empfängt, wenn man im Controller das
nächste Byte in den Sendepffer schiebt, wenn dieser leer ist (IRQ
Transmit register empty), sondern immer nur bei "IRQ Transmission
completed", aber das ist eine andere Baustelle ... Die Dinger taugen
einfach nix.

Wenn's nicht geht, versuch mal RX und TX am USB-Adapter zu brücken und
etwas mit Docklight zu senden. Denk auch daran, im Treiber den
COM-Port fest zu konfigurieren.

Dirk
 
Hallo Markus,

Ich habe hier so viele Fehlerquellen,
dass ich gar nicht weiß wo ich anfangen soll zu suchen,
In solchen Fällen ist ein alter DOS-Rechner mit echter serieller
Schnittstelle ganz nützlich.
Windows und USB Adapter sind eine undurchschaubare Sache, da gibt es
unendlich viele Fehlermöglichkeiten.

Gruss
Michael
 
Michael Koch wrote:
In solchen Fällen ist ein alter DOS-Rechner mit echter serieller
Schnittstelle ganz nützlich.
Windows und USB Adapter sind eine undurchschaubare Sache, da gibt es
unendlich viele Fehlermöglichkeiten.

Gruss
Michael


Genau. Es muss ERST mit einer *richtigen* Schnittstelle funktionieren,
danach kann man sich um die Nachbildungen kümmern... Stichworte: Laptops
mit TTL-Pegeln an RS232 (aaarrghh!), Windows, das gern mal eine laufende
Übertragung stört...

Moin, moin,

Julien
 
"Julien Thomas"

Hallo Julien,

In solchen Fällen ist ein alter DOS-Rechner mit echter serieller Schnittstelle ganz nützlich.
Windows und USB Adapter sind eine undurchschaubare Sache, da gibt es unendlich viele Fehlermöglichkeiten.

Genau. Es muss ERST mit einer *richtigen* Schnittstelle funktionieren, danach kann man sich um die Nachbildungen kümmern...
Stichworte: Laptops mit TTL-Pegeln an RS232 (aaarrghh!), Windows, das gern mal eine laufende Übertragung stört...
Ok. Das werde ich machen und mir erstmal wieder einen normalen PC besorgen lol.

Aber nochmal eine andere Frage. Ich hab ja die Zeichnung mit den Pinnummern
im Ursprungsposting gelinkt. An diese Pins habe ich einen RS232-Port angelötet
und den direkt in den PC gesteckt. Ist das so denn korrekt? Oder müsste ich
eigentlich nicht ein Nullmodenkabel (Wo Adern teilweise vertauscht/verdreht sind)
benutzen, damit eine Kommunikation überhaupt klappen kann?

lg,

Markus
 
Markus Gronotte wrote:
[...]
Aber nochmal eine andere Frage. Ich hab ja die Zeichnung mit den Pinnummern
im Ursprungsposting gelinkt. An diese Pins habe ich einen RS232-Port
angelötet
und den direkt in den PC gesteckt. Ist das so denn korrekt? Oder müsste ich
eigentlich nicht ein Nullmodenkabel (Wo Adern teilweise
vertauscht/verdreht sind)
benutzen, damit eine Kommunikation überhaupt klappen kann?

lg,

Markus

Also die Pinbezeichnungen in Deiner Schaltung
[1] http://home.arcor.de/pscit/frage2.png
stimmen. Da kann im Grunde nichts falsch sein, wenn man das passende
Gegenstück zur computerseitigen RS232-Buchse (männlich) nimmt. Unter
Zwischenschaltung eines handelsüblichen 1:1-Kabels auch nicht.
Das passende Gegenstück wäre also für den Anschluss an einen PC eine
9-polige Buchse (weiblich). Tipp: Da sind meistens noch winzigkleine
Zahlen zu finden, das sind die Pin-Nummern!
Mit einem Nullmodemkabel bringst Du ja wieder sie Signalrichtungen
durcheinander. Man hätte dann wieder die "functional pairs" (RxD-TxD,
RTS-CTS, DTR-DSR) vertauscht. Und zu allem Überfluss gibt's da noch
phantasievolle Alternativen...

Ansonsten finde ich die o.g. Schaltung seltsam... Schon die Verwendung
eines 741 dürfte bei manchen hier Kopfschütteln auslösen.
Und was soll diese Rückführung von TxD auf DCD?

Der CNY17-3 hat durchaus genug Verstärkung (bzw. CTR), da hätte man sich
mal Gedanken um eine Trickschaltung machen können, die das Signal
konsequenter bipolar verarbeitet, und der 741-Zirkus wäre dann sowieso
überflüssig. (Habe da was vorliegen, wenn Interesse, bitte per PM
rückfragen)
Hmm, als "abschreckendes Beispiel" noch eine Schaltung für eine
komplette potenzialgetrennte RS232-Kopplung:
http://www.angelfire.com/theforce/jte/opto/pt232.html
Da findest Du immerhin eine schöne Übersicht zu den
Schnittstellenleitungen an der 9-pol. D-SUB Buchse aus Sicht des PC (DTE).

Viel Glück & Gruß aus Kiel,

Julien
 
Julien Thomas wrote:
Und was soll diese Rückführung von TxD auf DCD?

Nehme die Frage zurück! Anscheinend soll das eine
Überwachungsmöglichkeit für die negative Hilfsspannung sein. Ob's hilft? ;-)
Darüber hinaus kann ich nur nochmal empfehlen: Für elementare Tests wäre
eine DOS-Rechner oder reiner DOS-Modus optimal. Terminalprogramme gibt's
da kostenlos für, z.B. Vipcom, Ansiterm oder Ähnliches.
Terminalprogramme zeigen sich oft erfreulich fehlertolerant und meistens
gibt es auch einen Hex-Anzeigemodus, das kann man zu Kontrollzwecken
auch nehmen, um zu sehen, was für serielle Daten gerade eintrudeln.

Gruß,

Julien
 
"Dirk Ruth"

Hallo Dirk,

Ich habe die Schaltung jetzt stückchenweise aufgebaut und an
einen echten PC angeschlossen. Zwischen GND (Pin5) und
RxD (Pin2) liegt jetzt ein digitales Signal an mit 0V und ca +4,5V.
Dieses Signal kommt über einen Optokoppler und ist mit Hilfe
eines OpAmp rechteckig gemacht. Auf dem Oszi
sieht das Signal ok aus.

Bei Docklight kommt aber rein gar nichts an. (Mit einer seriellen
Maus kein Problem. Von der Maus kommen Daten an.)

Hast du evtl. noch Tips, was ich bei der angegebenen
Beschaltung noch alles einstellen könnte, damit es funktioniert?

Wie bereits erwähnt, sendet meine Schaltung _immer_.

Ich hab schon probiert den FIFO Puffer mal auszuschalten.
Abrere Baudraten. Alles mögliche, aber es kommt einfach nichts an.

Versuch erst mal ganz von vorn anzufangen. D.h. schalte die Flow
Control erstmal ganz aus. Du müstest dann etwas empfangen. Selbst wenn
die Baudrate nicht übereinstimmt müstest Du irgend etwas zu sehen
bekommen, denn sobald eine Low Signal kommt, wird dieses als Startbit
erkannt.
Ein Low-Signal an RxD?


lg,

Markus
 
Wie bereits erwähnt, sendet meine Schaltung _immer_.
Hoffentlich nicht in der Form daß nach dem Einschalten
der Geräts blind Byte für Byte ohne Pause dazwischen
rausgedrückt wird: die UART im PC muß Startbit
detektieren können. Ansonsten meldet sie nur
Framing-Fehler die viele Terminalprogramme
ignorieren.
Für Synchronisierung sind Handshakes vom PC
nützlich a la RTS/CTS oder ein XON um damit
Senden zu aktivieren.

MfG JRD
 
"Rafael Deliano"
Wie bereits erwähnt, sendet meine Schaltung _immer_.
Hoffentlich nicht in der Form daß nach dem Einschalten
der Geräts blind Byte für Byte ohne Pause dazwischen
rausgedrückt wird:
Doch. Genau das.

die UART im PC muß Startbit
detektieren können. Ansonsten meldet sie nur
Framing-Fehler die viele Terminalprogramme
ignorieren.
Für Synchronisierung sind Handshakes vom PC
nützlich a la RTS/CTS oder ein XON um damit
Senden zu aktivieren.
Die Schaltung wie ich sie online stehen habe
benutze ich ungeändert momentan. Allerdings habe
ich den oberen Optokoppler weggelasen, weil ich
mit dem Oszi da nur eine logische eins sehe.
Ist das falsch? Kann es daran liegen, dass ich
den OK dort weggelassen habe?

Ich würde gerne mit nur einem OK auskommen.
Geht das gar nicht? Also soweit ich die Schaltung
verstehe, sendet das Gerät los, sobald der
Comport aktiviert wird. Sehe ich das falsch?
Zumindest wird mit einer logischen 1 am oberen OK
das Senden der Schaltung aktiviert und somit Sendet
die Schaltung los, sobald der Comport aktiviert wird.
Da ich den oberen OK weggenommen habe sendet die Schaltung
sobals sie Strom bekommt.

lg,

Markus
 

Welcome to EDABoard.com

Sponsor

Back
Top