Forum: Mikrocontroller und Digitale Elektronik RS232 Port


von Hannes (Gast)


Lesenswert?

Hallo.
Ich habe mich in den letzten tagen in die rs232 eingearbeitet und habe
noch ein paar fragen dazu.

1.) Es gibt ja verschiedene modi. einmal den synchronen und den
asynchronen. Ist Es richtig, dass beim synchronen ein Takt mit
übertragen werden muss und beim asynchronen der takt von den 2 geräten
getrennt generiert wird ?

2.) Wozu gibt es die ganzen handsake signale, wenn ich doch zur
kommunikation nur 2 Pins brauche ?

3.) wie kann ich bei einem AVR zwischen synchronen und asynchronen
betrieb wählen ?

4.) die Baudrate ist ja ein synonym für Bits pro sekunde...Was bedeutet
nun bits pro sekunde ? werden die stoppbits dazugezählt oder wie ?

Vielen Dank vorab!

von crazy horse (Gast)


Lesenswert?

zu 1:
RS232 ist prinzipiell asynchron
zu 2:
richtig, zur reinen Kommunikation bauchst du nur Rx und Tx, aber manche
Geräte müssen auch Statussignale übertragen (können), z.B. Modem RI und
CD, RTS und CTS werden benutzt, um vor dem Losschcken von Bytes zu
prüfen, ob der Empfänger auch bereit ist Daten aufzunehmen.
zu 3.
Falls du die USART meinst - steht alles schön im Datenblatt
zu 4:
Die Baudrate sagt aus, wie lang ein Bit ist bzw. wie viele Bits in eine
Sekunde passen. Jedes Bit ist gleich lang, egal ob es nun ein
Start-,Stop-, Parity- oder Datenbit ist.

von A.K. (Gast)


Lesenswert?

RS232 wurde nicht für Microcontroller erfunden, sondern für Anbindung
von Modems. Dafür sind die übrigen Leitungen da. Beim µC werden die
allenfalls für sachfremde Funktionen wie Vampirspeisung verwendet.

Synchron ist in diesem Kontext extrem selten. Allein schon weil's am
anderen Ende (dem PC) nicht ohne teuere Interfacekarte geht. Asynchron
wird nur über das Startbit synchronisiert und daher müssen die
Taktphasen so lange hinreichend genau passen bis das Stopbit durch ist,
d.h. die Frequenz muss bis auf grob 1% übereinstimmen.

Gewählt wird es beim AVR über ein Steuer-Register.

Ein Bit ist ein Bit, egal ob Daten drin sind oder Stops.

von Hannes (Gast)


Lesenswert?

Hi Crazy Horse.

zu 3.) Ich hatte gedacht, dass der USART nur für die rs232 ist. Stimmt
das nicht ? Was kann ich denn och mit dem USART Machen?

zu 4.) das heisst, dass ich von der baudrate noch die start, stop usw
bits abzeihen muss um die reine "daten"übertragung zu errechnen.

MfG

von Wolfgang (Gast)


Lesenswert?

1.) Ja
2.) Braucht man in der Regel für uC nicht. Wird eher in Modems
verwendet...
3.) Das USART eines AVRs ist asynchron (deswegen muss eine Baudrate
eingestellt werden)
4.) Beim USART benötigt eine Byte (8Bits) in der Regel 10 Bits wegen
Start- und Stoppbit (==> Bei 9600 Baud werden 960 Bytes/Sekunde
übertragen)

ich hoffe es hat geholfen...

Wolfgang

von thkais (Gast)


Lesenswert?

Mit den Handshakes kann man den Sender mitteilen, daß der Empfänger
gerade beschäftigt ist.
Beispiel: Ein EEProm soll beschrieben werden. Wenn man mal von
Page-Write absieht, braucht ein Byte 4-5ms zum Schreiben, das ist
selbst für 9600 Baud zu langsam. Dann kann der Empfänger den PC über
die RTS/CTS Leitungen ausbremsen.
Eine recht gute Informationsquelle für verschiedenste Schnittstellen:
http://www.beyondlogic.org

von Andreas (Gast)


Lesenswert?

@crazy horse
> RS232 ist prinzipiell asynchron

oops, der RS-232 Standard (EIA) sagt aber u.a. folgende Merkmale zu:

- serielle Übertragung, synchron und asynchron, LSB zuerst
- Leitungsfunktionen nach CCITT V.24
- Elektrische Eigenschaften nach CCITT V.28
- 25poliger(!) Stecker mit Definition der Pinbelegung

Wobei Pin 15 (TC) zum "Transmission Signal Element Timing" bei
synchroner Übertragung vorgesehen ist. Im Übrigen definiert RS-232 zwei
komplette Kanäle (TX1/RX1 und TX2/RX2)

Nichts für Ungut,
Andreas

von crazy horse (Gast)


Lesenswert?

Das ist ja interessant, noch nie gehört, scheint aber wohl zu stimmen.
Gibts (gab) es je Geräte, die wirklich sowas benutzt haben?

von Tobi (Gast)


Lesenswert?

dann fragt sich nur noch welcher derzeit verfügbare rs232 port diese
besonderheiten unterstützt. das letzte mal ist mir ein 25poliger
stecker in einem 486 untergekommen und ich weiss nicht, ob der dort
voll beschaltet war oder nur aus kompatibilität drin war

von Andreas (Gast)


Lesenswert?

@Tobi
Genau das sind eben keine (vollständigen) RS-232 Schnittstellen, auch
wenn sie umgspr. so genannt werden. Die heutigen, an PC's (noch)
vorhandenen seriellen Schnittstellen halten sich nur an Teile des
RS-232 Standards. Für die (PC-) Anwendungen ist das allerdings
ausreichend. Daher ist in PC-Manuals meist auch nur vom Vorhandensein
einer "seriellen" Schnittstelle und nicht einer RS-232 Schnittstelle
die Rede.

@crazy horse
Ich glaube, an SPS sind solche noch vorzufinden. (Und auch hier
Achtung: SPS ist nicht nur S5/S7)

Andreas

von kritzel (Gast)


Lesenswert?

also hab ich das jetzt alles richtig verstanden?! ich brauche also nur 2
leitungen die ich mit dem µC verbinde das ist die TxD und RxD leitung!
diese leitungen muss ich kreuzen oder?sonst würde ja die leseleitung
vom PC auf die leseleitung des µC gehen genau wie die schreibleitung?!
was ist mit NC und GND?

von Annonymous (Gast)


Lesenswert?

Von GND spricht niemand weil das so selbstverständlich ist wie die
tatsache dass man zum atmen luft braucht ;)

von Kritzel (Gast)


Lesenswert?

sowas kann man als anfänger aber ganz schnell falsch verstehen! (-;

PS: dann werd ich wohl mal schnell GND dranlöten...

von Werner B. (Gast)


Lesenswert?

P.S. Aus ATmega128 Datenblatt

USART The Universal Synchronous and Asynchronous
serial Receiver and Transmitter (USART) ...

d.h. Sowohl Async. als auch Sync.

von kritzel (Gast)


Angehängte Dateien:

Lesenswert?

jaja...datenblatt kenn ich langsam auswendig! hab aber kein "original"
atmega128 sondern ein crum128 v.2 und das datenblatt ist voll sch...!
(-;

kannst dir ja mal angucken wenn du magst...musste aber nicht WEIL:
steht eh nix drin! (-; ausser das der CON4 für rs232 signale
verantwortlich ist...

von Werner B. (Gast)


Lesenswert?

Da ist doch ein ATmega128 rauf?!

Hol Dir von
http://www.atmel.com/dyn/products/product_card.asp?part_id=2018
das Datenblatt. (Ich hoffe der Link lässt sich Bookmarken).

Wenn Du dann mit den 389 Seiten durch bist ... ;)

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.