www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Was kommt hinter den Stopbits bei RS232?


Autor: Karl-alfred Römer (karl-alfred_roemer)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Folgendes Problem taucht nicht auf, wenn man den Hardware-UART
eines Mikrocontrollers verwendet. Aber aus Verständnisgründen
habe ich es mit Software gemacht. Assemblerlisting hängt an.

Was ich nicht verstehe:
Was passiert eigentlich, wenn man auf der RS232-Empfängerseite EIN
Startbit, 8 Datenbits und EIN Stopbit eingestellt hat und der Sender
anstatt EINEM Stopbit eine beliebige Anzahl Stopbits sendet, sagen
wir 531 sendet und danach wieder ein Startbit mit 8 Datenbits folgt?

Ich war eigentlich der Meinung, dass das Stopbit das gleiche
Signal ist, als wenn auf der Leitung garnichts los ist. (logisch 1)
Also als ob man ganz einfach Sendepause hätte. Beim ersten Startbit
sollte sich das ganze dann wieder automatisch einsynchronisieren.

Tatsächlich kommt aber alles durcheinander, wenn ich versuchsweise
mehrere Stopbits sende.

Was muss man denn auf den Ausgangspin legen, wenn man eine
Sendepause einlegen möchte? Null oder Eins?

Autor: Reinhard Kern (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Karl-alfred Römer schrieb:
> Was muss man denn auf den Ausgangspin legen, wenn man eine
> Sendepause einlegen möchte? Null oder Eins?

Hallo,

Sendepause ist eine durchgehende 1 - Stopbits gibt es überhaupt nur im 
Sinn einer Mindestdauer, also bei 1.5 Stopbits darf das nächste Startbit 
frühestens nach 1.5 Bitzeiten kommen.

Gruss Reinhard

Autor: Ralf (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Tatsächlich kommt aber alles durcheinander, wenn ich versuchsweise
> mehrere Stopbits sende.
Tatsächlich ist es so, dass genau diese Aussage wesentlich 
informationsreicher sein könnte, damit es tatsächlich so ist, dass du 
wesentlich bessere Hilfe bekommst :)

Wie Reinhard schon beschrieben hatte, eigentlich ist ein Stopbit nur 
eine Mindestdauer für den inaktiven Zustand, deine 531 Stopbits danach 
dürften keinerlei Auswirkung haben.

Also, was genau kommt den "durcheinander"?

Ralf

Autor: Karl-alfred Römer (karl-alfred_roemer)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke für Eure Antworten.  Sie bestätigen meine Annahme, dass
es EIGENTLICH egal sein müsste, wieviele Stopbits ich sende,
weil sie im Prinzip nichts anderes sind, als eine durchgehende 1.

Auf eure bestätigenden Hinweise hin, habe ich gerade nochmal
mein Programm so abgeändert, dass nach dem regulären Stopbit
weitere 245 Stopbits gesendet werden. Und siehe da, es hat
geklappt. War also vorher nur ein Programmfehler.

>Also, was genau kommt den "durcheinander"?

Das war so:
Bei meinem Versuch, mehrere Stopbits zu senden, kamen nachher
andere Zeichen in HTerm an, als ich eigentlich gesendet hatte.

Aber das Problem ist ja jetzt gelöst und ich bin jetzt wieder
schlauer:))  Danke Euch!!!

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.