www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik RS232 Port


Autor: Hannes (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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!

Autor: crazy horse (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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.

Autor: A.K. (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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.

Autor: Hannes (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Wolfgang (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: thkais (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Andreas (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: crazy horse (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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?

Autor: Tobi (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Andreas (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: kritzel (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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?

Autor: Annonymous (Gast)
Datum:

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

Autor: Kritzel (Gast)
Datum:

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

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

Autor: Werner B. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
P.S. Aus ATmega128 Datenblatt

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

d.h. Sowohl Async. als auch Sync.

Autor: kritzel (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht 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...

Autor: Werner B. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Da ist doch ein ATmega128 rauf?!

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

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

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.