mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Erklärung UART mit RTS/CTS


Autor: Micha (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,

habe ein Problem mit der UART und den RTS/CTS Verbindungen?
Möchte einen µC mittels UART mit einem Bluetooth Modul verbinden. Das
Bluetooth Modul benutzt die Uart aber nur mit Hardware Handshake. Also
Anschluss RTS/CTS.
Meine Uart am µC funktioniert ohne diese zwei Steuerleitungen Prima.
Nach einbauen der RTS/CTS klappts net mehr. Ich vermute noch eine
Unklarheit in der genauen Definition der RTS/CTS Leitungen bei mir.

Um genauer zu Fragen! Was machen die RTS/CTS Bits eigentlich genau im
µC Programmcode?

Ich hoffe es kann mir jemand helfen. Keine Antworten bitte, wie
Leitungen auch vertauscht und richtig angeschlossen!

~micha

Autor: Heinz (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Du kannst die Handshakeleitungen einfach kurzschliessen.
Wenn ich mich recht entsinne, Pin 1,4,6 zusammen und Pin 7 und 8
zusammen.

Schau dir vorher aber lieber noch mal die Belegung an.

Autor: Arne (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Um genauer zu Fragen! Was machen die RTS/CTS Bits eigentlich genau im
µC Programmcode?

Der Empfänger signalisiert mit RTS 'Ready To Send' =
Empfangsbereitschaft. Dieses Signal liegt beim Sender auf CTS 'Clear
To Send', der so weiß, daß er nun senden darf oder eben noch warten
muß.

RTS/CTS dient also nur dazu, den Datenstrom anzuhalten, falls der
Empfänger grade die gesendeten Daten(-mengen) nicht verarbeiten kann.
Es soll so verhindert werden, daß einzelne Byte verloren gehen.

War es das, was Du wissen wolltest? Die Antwort von Heinz ist mehr die
Form: Wie trickse ich RTS/CTS aus, wenn ich es nicht wirklich brauche
aber auch nicht abschalten kann.

Gruß,
Arne

Autor: Alexander Höller (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

will mich bei dem Thread mal "einhängen" ;p

Hab derzeit auch kleinere Probeleme mit RTC/CTs und einem FT232BM. Hab
irgendwo gelesen, dass es nicht nur wärend dem Senden Flusskotnrolle
gibt, die anzeigt ob weitergesendet werden darf oder nicht, sondern
dass auch immer nur in eine Richtung gesendet werden darf und sich die
beidne Geräte über RTS/CTS ausmachen wer jezt senden will/darf - Stimmt
das so ?? Könnte mir das jemand bitte nochmal kurz erklären? Ev. in
welcher Reihenfolge welche Signale kommen müssen, um Senden zu dürfen?

mit freundlichen Grüßen,
aleX

Autor: Micha (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hi,

ich bin mit meinen Versuchen schon ein wenig weiter gekommen. Mein µC
empfängt die Daten schon richtig. nur beim Senden hapert es noch, da
hängt sich der Controller auf. Wo genau weiß ich nicht.

PAP:
 - Daten senden wollen -> RTS auf 0 -> Daten in Puffer tun -> warten
bis Interrupt für CTS vom Empfänger kommt -> Wenn dann CTS auf 0 und
RTS auf 0 liegen, dann sende ich meine Daten!  (dachte ich)

Aber so funzt es net. Die Interrupt Routine wo ich vom Empfänger des
CTS (aktiv low) Signal bekomm, haut mir irgend was quer! Ich sende auch
nur jedesmal ein byte, danach führe ich ein neues Handshake durch. Ist
doch bestimmt net richtig? Funktioniert aber beim Empfangen tadellos!

Wenn noch jemand ne Idee hat! Nur her damit  :-)

~micha

Autor: Uwe (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi!
RTS deines jeweiligen Gerätes ist ein Ausgang und signalisiert der
Gegenstelle(RTS->CTS)das Daten gesendet/empfangen werden können, also
Sende/Empfangsbereitschaft.
CTS ist der zugehörige Eingang .
So wie du es darstellst ist es eigentlich richtig, solange beide
Signale 0(aktiv) sind kannst du munter drauflossenden, musst aber auf
das cts-Signal achten, am besten vor jedem zu sendenden Byte.

MFG Uwe

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.