Forum: Mikrocontroller und Digitale Elektronik RS232 über MAX232 -> Verwirrung?


von Stefan (Gast)


Lesenswert?

Hallo Leute,

ich weiß das Thema ist etwas ausgelatscht. Ich möchte mit nem PIC über 
RS232 betreiben und nutze dazu ein MAX232.

Bei der Verkabelung der RS232 Buchse stoße ich jetzt auf sehr 
unterschiedliche vorschläge.

1.Version: Es werden nur RX, TX und GND (Pin5). Das funktionier 
eigentlich  auch schon so bei mit.

2.Version: Zusätlich sind Pin 4, 8 und 6 der RS232 Buchse verbunden.

3.Version: Brücke von Pin 7-8 während Pin 6+1 auf High sind 
(http://www.mikrocontroller.net/articles/Datei:Max232_korr.png)


Was bringen die zusätlichen Verbindungen aus 2. und 3. ?

Gruß Stefan

von Falk B. (falk)


Lesenswert?

@  Stefan (Gast)

>Was bringen die zusätlichen Verbindungen aus 2. und 3. ?

Effektiv nix.

MfG
Falk

von Sven aus D. (Gast)


Lesenswert?

2 und 3 sind meistens nur für irgendwelche Hardware-Handshakes mit 
dennen überprüft wird ob ein Gerät angeschlossen/bereit ist.

Für basteleien zuhause brauchst das nicht, da reicht die Variante 1.

Wenn du aber fertige Module hast kann sowas schonmal gefordert werden. 
Steht dann aber immer im Datasheet...

von ich (Gast)


Lesenswert?

Die sind zurm Vorgaukeln eines Hardwarehandshakes.

SDie sind nicht nötig, es sei denn deine Software setzt das vorraus

von Kasperle (Gast)


Lesenswert?

Es kommt auf das Steuerprogramm an ob die Verbindungen ausgewertet 
werden.

von Olaf (Gast)


Lesenswert?

> Was bringen die zusätlichen Verbindungen aus 2. und 3. ?

Das haengt davon ab was du fuer ein Protokoll faehrst,
welche Datenraten du benutzt und wie gross die Puffer
auf beiden Seiten sind.
Es laesst sich also nicht so einfach beantworten. :-)

Olaf

von Michael S. (captain-stone)


Lesenswert?

Hallo Stefan,

das kommt darauf an, welches Handshaking Verfahren Du benutzen möchtest. 
Es reicht RxD und TxD und GND. Dann musst Du aber Softwarewaremäßig 
sicherstellen, dass der andere Teilnehmer zuhört, wenn er Daten 
geschickt bekommt. Also brauchst z.B das Xon/Xoff Protokoll, wenn Du 
keine Daten verlieren willst.

Wenn Du Dir das sparen möchtest, dann verdrahtest Du noch RTS und CTS, 
dann wird die Kommunikation über diese Hardware Signal gesteuert. Dumm 
nur, dass ein Controller nur TxD und RxD liefern, also musst Du dieses 
Hardware Handshaking ebenfalls softwaremäßig nachbilden.

Michael

von Michael S. (captain-stone)


Lesenswert?

Ach noch was. Viele Leute geben sich richtig Mühe, für solche Themen 
Artikel zu schreiben:

http://www.mikrocontroller.net/articles/RS-232

Michael

von Stefan (Gast)


Lesenswert?

Hallo,

vielen Dank schonmal.

Das Hardwarehandschake vorzugaukeln klingt fast schon albern.
Die Steuersoftware wird selbst geschrieben.

Ich wollte bei 19,2kbaud auf Handshake verzichten. Ich sende nur
sehr kurze Steuerungs-Strings aus maximal: 9 ASCII Zeichen.
Evtl. wollte ich dem Steuerrechner das quittieren indem ich die Zeichen 
einfach wieder zurücksende und prüfe.

Gruß Stefan

von Stefan (Gast)


Lesenswert?

@  Michael Steinbauer

Ja du hast recht. In dem Artikel steht eigentlich alles drin.

"Je nach Betriebssystem auf dem PC empfiehlt es sich noch, Pin 1 und 6 
gebrückt an einen Treiberausgang des MAX232 zu legen, dessen Eingang auf 
0 V liegt (so dass positiver Pegel an diesen beiden Pins liegt) sowie 
Pin 7 und 8 zu brücken, so dass der PC sich selbst RTS auf CTS 
rückkoppelt. "

Da meine Hardware später an mir unbekannten PC-Systemen angeschlossen 
wir, scheint es wohl sicherer zu sein es so zu machen.

Gruß Stefan

von Karl H. (kbuchegg)


Lesenswert?

Stefan schrieb:
> Hallo,
>
> vielen Dank schonmal.
>
> Das Hardwarehandschake vorzugaukeln klingt fast schon albern.
> Die Steuersoftware wird selbst geschrieben.
>
> Ich wollte bei 19,2kbaud auf Handshake verzichten.

Ob du Handshake brauchst oder nicht, hängt nicht nur von der Baudrate 
ab, sondern hauptsächlich davon, wer an der anderen Seite der Leitung 
sitzt und wie schnell er das Empfangene verarbeiten kann. Auch mit 300 
Baud kann ich eine Gegenstelle überfahren, wenn ich ihr in 
ununterbrochener Folge die Koeffizienten für ein Gleichungssystem mit 10 
Unbekannten schicke und die Gegenstelle 5 Sekunden zum Lösen dieses 
Systems benötigt.

> Evtl. wollte ich dem Steuerrechner das quittieren indem ich die Zeichen
> einfach wieder zurücksende und prüfe.

Das hilft dir nicht viel. Das bedeutet nur das der Steuerrechner alles 
empfangen hat. Aber das erlaubt dem Sender immer noch keine Aussage 
darüber, ob der ausführende Rechner schon aufnahmebereit für das nächste 
Kommando ist.
Besser ist es, wenn der Steuerrechner ein Kommando schickt (ev. mit 
Prüfsumme), der ausführende Rechner bestätigt den fehlerfreien Empfang 
des Kommandos UND er bestätigt den Vollzug des Kommandos.
Somit weiß der Steuerrechner immer woran er ist, ob der ausführende 
Rechner beschäftigt ist und ob er ein Kommando schicken darf oder nicht.

Ein Handshake ist nichts anderes als die elektronische Variante von: 
Warte ein wenig, ich hab jetzt keine Zeit.

von Michael S. (captain-stone)


Lesenswert?

Hallo Stefan,

> Da meine Hardware später an mir unbekannten PC-Systemen angeschlossen
> wir, scheint es wohl sicherer zu sein es so zu machen.

gute Entscheidung. Schaden wird es auf keinen Fall und durch das 
bisschen Mehraufwand hast vielleicht später weniger Probleme.

Michael

von Karl H. (kbuchegg)


Lesenswert?

Stefan schrieb:

> Da meine Hardware später an mir unbekannten PC-Systemen angeschlossen
> wir, scheint es wohl sicherer zu sein es so zu machen.

Zumindest ist es eine einfache Möglichkeit einen relativ simplen 
Konfigurationsfehler auf PC-Seite ins Leere laufen zu lassen.

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.