Hi bin neu in der Branche.... Wollte Fragen wozu ein RS232-TTL-Umsetzer Baustein gut ist... Mein Board hat eine USART Schnittstelle. Ich wollte mein Board mit einem anderen kommunizieren lassen das keine USART-Schnittstelle hat. Und da habe ich gehört das so ein RS232-TTL-Umsetzer zum Einsatz kommt. Wie integriert man das ? Welche der Zwei Möglichkeiten kommt hier in Frage ? 1) Mein Board PIN RX-TX->(RX-TX-PINS)RS232-TTL-Umsetzer->(USART EINGANG)RS232-TTL-Umsetzer-> Null Modem Kabel(Beide Seiten männlich) ->(USART EINGANG) RS232-TTL-Umsetzer -> (PINS RX-TX)RS232-TTL-Umsetzer -> Anderer Board RX-TX 2) Mein Board USART->(USART EINGANG)RS232-TTL-Umsetzer->(RX-TX-PINS)RS232-TTL-Umsetzer-> Kabel ->Anderer Board RX-TX
John schrieb: > Wollte Fragen wozu ein RS232-TTL-Umsetzer Baustein gut ist... Um eine Schnittstelle mit Pegelns nach RS232/V.24, wie etwa die vom PC, mit einem Controller zu verbinden, dessen eingebaute Schnittstelle zunächst nur TTL/CMOS-Pegel verdaut. Zwei Controller kann man auch direkt verbinden, wenn die Entfernung gering ist.
:
Bearbeitet durch User
Das Bauteil ist ein Pegelwandler. Er wandelt das TTL (0 5V) in Rs232 (-15 15V) und da VonRS233 nach TTL in die andere Richtung. Ich würde den MAX233 verwenden.
:
Bearbeitet durch User
John schrieb: > Ich wollte mein Board mit einem anderen kommunizieren lassen das keine > USART-Schnittstelle hat. Und wie willst Du dann kommunizieren? > Und da habe ich gehört das so ein > RS232-TTL-Umsetzer zum Einsatz kommt. So ein Umsetzer setzt nur die Pegel (Spannungen) um. Die seriellen Daten werden dadurch nicht beeinflusst. Wenn das Board keinen USART hat, kann man das höchstens per Software nachbilden (mit begrenzter Geschwindigkeit, denn die SW muss ja die Bits einzeln abtasten bzw. senden). Deine Beschreibung der beiden Möglichkeiten habe ich nicht verstanden... da kommt so oft "RS232-TTL-Umsetzer" drin vor. Wie wäre es mit einem Blockschaltbild mit Angabe der Pegel an den Übergabepunkten? Gruß Dietrich
John schrieb: > Hi bin neu in der Branche.... Na dann, willkommen :-) > Wollte Fragen wozu ein RS232-TTL-Umsetzer Baustein gut ist... RS-232 ist eine Schnittstelle, bei der eine logische 1 durch eine Spannung zwischen -3 und -15 und eine Null durch +3 bis +15V dargestellt wird. Mit diesen Spannungen kann man allerdings meistens nicht sehr vfiel anfangen, in der Digitalelektronik kommen meisten Spannungen zwischen 0 und +5 Vold vor - deswegen gibt's Umsetzer. Es gibt diese RS232 Transceiver von vielen diversen Herstellern, aber der bekannteste dürfte der MAX232 von Maxim sein. > Ich wollte mein Board mit einem anderen kommunizieren lassen das keine > USART-Schnittstelle hat. Und da habe ich gehört das so ein > RS232-TTL-Umsetzer zum Einsatz kommt. Welche Boards sind es denn? Im übrigen zwingt Dich (hoffentlich) ja niemand, die Verbindung über RS232 zu führen. Man könnte sich den Umweg über RS232 auch sparen und direkt UART mit UART verbinden (beim zweiten Board ohne eben einen externen UART dranflanschen). Ist halt alles eine Frage der Entfernung, Störsicherheit, etc... LG, N0R
Naja ich habe zwei von diesen Bausteinen: http://www.elv.de/elv-ttl-nach-rs-232-umsetzer-komplettbausatz.html Hier die Frage muss ich die Pins vom Baustein mit meinem Board verbinden oder Die verbindung geht über die UART vom Baustein mit meinem UART am Microcontroller
John schrieb: > Hier die Frage muss ich die Pins vom Baustein mit meinem Board verbinden Wenn die Stecke nicht so lang ist, kannst du dir beide TTL-RS232-Bausteine sparen. Was "nicht so lang" ist, hängt von den Störungen in deiner Umgebung und der Übertragunsgeschwindigkeit ab.
John schrieb: > Hier die Frage muss ich die Pins vom Baustein mit meinem Board verbinden
1 | Board Umsetzer "Lötösen" |
2 | Rx Rx |
3 | Tx Tx |
4 | GND GND |
5 | +5V +5V |
Dies gilt für beide Boards. Zwischen den beiden Umsetzern kommt an die SUB-D-Stecker dann ein Nullmodenkabel (Pin 2 und 3 gekreuzt, Pin 5 direkt verbunden). Die anderen Signale/Anschlüsse sind erstmal egal. > oder > > Die verbindung geht über die UART vom Baustein mit meinem UART am > Microcontroller Wenn beide Boards einen gemeinsamen GND haben (bzw. die GNDs verbunden werden dürfen und die Leitung nicht so lang ist (Störeinkopplung!) geht auch:
1 | Board 1 Board 2 |
2 | Rx Tx |
3 | Tx Rx |
4 | GND GND |
Hier gibt es allerdings ein Risiko: Wenn ein Board versorgt ist und das andere nicht, können Ausgleichsströme über die Leitungen Rx / Tx das nicht versorgte Board zerstören. Das ist bei RS232 (1. Version) ausgeschlossen. Gruß Dietrich
:
Bearbeitet durch User
Dietrich L. schrieb: > Hier gibt es allerdings ein Risiko: Wenn ein Board versorgt ist und das > andere nicht, können Ausgleichsströme über die Leitungen Rx / Tx das > nicht versorgte Board zerstören. Mit Schutzwiderständen in den Datenleitungen (z.B. 2,2kΩ) läßt sich dieses Risiko ausschalten. Dafür sinkt die max. mögliche Übertragungsrate.
John schrieb: > Hier die Frage muss ich die Pins vom Baustein mit meinem Board verbinden > > oder > > Die verbindung geht über die UART vom Baustein mit meinem UART am > Microcontroller Versteht das jemand?
Walter schrieb: > John schrieb: >> Hier die Frage muss ich die Pins vom Baustein mit meinem Board verbinden >> >> oder >> >> Die verbindung geht über die UART vom Baustein mit meinem UART am >> Microcontroller > > Versteht das jemand? Man muss ein bisschen um die Ecke denken, dann kann man wohl erraten, wo der Schuh drückt. Alles hängt wohl davon ab, was man hier drunter > Mein Board hat eine USART Schnittstelle. zu verstehen hat. Ist das eine 5V-TTL USART, oder ist das eine echte 12V RS232 Das ... > Und da habe ich gehört ... ... ist wohl wieder mal das Hauptproblem. Kein Basiswissen wie die Dinge grundsätzlich funktionieren und als Ausgleich arbeiten nach Hörensagen.
:
Bearbeitet durch User
Walter schrieb: >> Die verbindung geht über die UART vom Baustein mit meinem UART am >> Microcontroller > > Versteht das jemand? Ich habe das mal so interpretiert: UART vom Board ... Aber Du hast recht: John ist da noch etwas "ungenau" und sollte vielleicht mal klar sagen, was für Boards er da verbinden will. Denn wie ich ja schon sagte, ist das: John schrieb: > Ich wollte mein Board mit einem anderen kommunizieren lassen das keine > USART-Schnittstelle hat. irgendwie Unsinn, oder zumindest komisch ... Gruß Dietrich
Dietrich L. schrieb: > Denn wie ich ja schon sagte, ist das: > > John schrieb: >> Ich wollte mein Board mit einem anderen kommunizieren lassen das keine >> USART-Schnittstelle hat. > > irgendwie Unsinn, oder zumindest komisch ... Das hab ich mir auch gedacht. Meine aus dem Bauch heraus Erklärung dafür lautet: Der TO denkt, dass er diesen Umsetzer braucht, um auf dem anderen Board eine USART nachzurüsten. Nun, dem ist nicht so. Das andere Board braucht eine eigene USART. Hat es die nicht, dann bringt ihm auch der Umsetzer nichts.
Karl Heinz schrieb: > Ist das eine 5V-TTL USART, oder ist das eine echte 12V RS232 Was hat USART mit 12V/RS232 zu tun. Universal Asynchronous Receiver Transmitter ist schlicht und einfach die Baugruppe, die dafür sorgt, dass die Bits seriell über die Leitung purzeln und ihren kleinen Datenrahmen bekommen, bzw. umgekehrt wieder eingesammelt werden und als Byte zur Verfügung stehen. Folglich hat so ein USART die gleiche Spannung, wie alle anderen IO-Signale des µC.
Wolfgang schrieb: > Karl Heinz schrieb: >> Ist das eine 5V-TTL USART, oder ist das eine echte 12V RS232 > > Was hat USART mit 12V/RS232 zu tun. > Universal Asynchronous Receiver Transmitter ist schlicht und einfach die > Baugruppe .... Das weißt du, das weiß ich und das wissen die meisten hier. Sieh dir die Anfrage an. Traust du dem Fragesteller wirklich zu, dass er sich darüber bewusst ist? Ich nicht.
:
Bearbeitet durch User
Manchmal spart man sich den Pegelumsetzer MAX232 auch, und setzt nur einen TTL-Inverter zwischen µC und PC. Allerdings ist da der Störabstand gering, mit niedrigen Baudraten z.B. 4800 und nicht zu langem Kabel geht es aber. Die Empfangsseite am µC hat eine Diode mit Vorwiderstand, um den Pegel zu begrenzen, und auch wieder einen TTL-Inverter. Auf diese Art habe ich noch ein altes Elektor-Compuboard für 8031, welches genau so an den PC angebunden ist. In industriellen Geräten sah ich das auch schon, um den MAX-Baustein zu sparen, z.B. ein Handprogrammiergerät mit einem Meter Kabel dran für eine Anlage. Also bei 5V Betriebsspannung geht das, bei den modernen 3,3V-Schaltungen wohl nicht mehr oder kaum noch. Wenn man einfach nur zwei µC miteinander verbinden will, und kurze Entfernung, geht es direkt über die µC-Pins. Dort braucht man dann auch nicht unbedingt eine Standardbaudrate zu wählen, sondern beliebig krumme Werte. Die MAX-Bausteine haben ja auch eine maximale Baudrate, die einfachen MAX232 glaube ich 19200, die man bei einer Direktverbindung µC zu µC aber gerne mal weit überschreitet, z.B. ein Megabaud. Mit dem ganz alten Standard-8051 schafft man so ohne Baudratenquarz ein Megabaud, anders auch wegen der bescheidenen Standardbaudratenwahl eher kaum diese Geschwindigkeit.
Wieviel bringt es auf längere Entfernungen denn eigentlich, die RS232-Levels zu fahren? Natürlich wenn man davon ausgeht, dass beide Teilnehmer auf TTL-Level zugeschnitten sind, wenn man die mit Inverter an einen RS232-Port am PC legt und das funktioniert, ist man jenseits jeglicher Spezifikation...
greg schrieb: > Wieviel bringt es auf längere Entfernungen denn eigentlich, die > RS232-Levels zu fahren? Natürlich wenn man davon ausgeht, dass beide > Teilnehmer auf TTL-Level zugeschnitten sind, wenn man die mit Inverter > an einen RS232-Port am PC legt und das funktioniert, ist man jenseits > jeglicher Spezifikation... Nun ja, man braucht nicht überall strenge Spezifikationen. Elektor schrieb damals zum Compuboard, daß die Verbindung zum PC auf die einfache Art auch ausreichend funktionieren würde. Ein Bastelboard ist keine sicherheitskritische ausfallsichere Anlage.
Wilhelm F. schrieb: > Nun ja, man braucht nicht überall strenge Spezifikationen. Elektor > schrieb damals zum Compuboard, daß die Verbindung zum PC auf die > einfache Art auch ausreichend funktionieren würde. So einen "Pegelwandler" (ganz einfach diskret mit Transistoren aufgebaut) hab ich hier auch noch herumfliegen, aber mittlerweile setze ich den nicht mehr ein, da der je nach Mondphase, Horoskop und verwendetem RS232-Port entweder zuverlässig funktioniert oder auch nicht. Mittlerweile ist es wohl am besten, einfach die billigen USB-UART-Adapter vom Chinesen zu verwenden.
greg schrieb: > So einen "Pegelwandler" (ganz einfach diskret mit Transistoren > aufgebaut) hab ich hier auch noch herumfliegen, Ja, stimmt, einfach mit Transistoren ging es auch. Auf dem Compuboard waren noch unbenutzte Gatter in Gatterbausteinen frei, und dann nimmt man diese halt. Wenn man auf einem µC-Board irgendwo noch zufällig Spannungen von +/-15V hat, kann man sich den MAX-Baustein prinzipiell auch wiederum sparen. > aber mittlerweile setze > ich den nicht mehr ein, da der je nach Mondphase, Horoskop und > verwendetem RS232-Port entweder zuverlässig funktioniert oder auch > nicht. Gelegentlich hatte ich mit den einfachen TTL-Pegeln auch Übertragungsfehler, trotz nur 4800BAUD. Das sah man aber am Terminal, und startete dann einfach den Programmdownload neu. Im Hobby geht das. Auf einigen Boards habe ich den MAX232, der aber laut Datenblatt nur eine Höchstbaudrate von 19200 macht. Das war mir zu langsam. Bei kleinen Assemblerprogrammen ging die Downloadzeit von ein paar Sekunden noch, aber eine Minute warten für einen Output eines größeren C-Programmes war mir zu lang. Dann schraubte ich die Baudrate auf 57600 hoch, also das Dreifache des erlaubten Wertes. Ich war nie mit dem Oszi dran, aber das Ding machte so noch nie Fehler. > Mittlerweile ist es wohl am besten, einfach die billigen > USB-UART-Adapter vom Chinesen zu verwenden. Fürs Notebook habe ich einen Umsetzer USB zu RS232 von Delock, weil es keine eingebaute RS232 hat. Der Delock arbeitet auch völlig fehlerfrei, aber die RS232-Pegel hat man immer noch, wie an der echten RS232, kein TTL-Pegel. Für die Kabellänge an der RS232 gibts eine grobe Faustformel, in der die Baudrate umgekehrt proportional zur Kabellänge ist. Nix kompliziertes, aber immerhin zur groben Abschätzung. Dort kommen eigentlich nur drei Werte drin vor: Baudrate, Länge, und eine Konstante ähnlich der Lichtgeschwindigkeit.
Wilhelm F. schrieb: >> aber mittlerweile setze >> ich den nicht mehr ein, da der je nach Mondphase, Horoskop und >> verwendetem RS232-Port entweder zuverlässig funktioniert oder auch >> nicht. > > Gelegentlich hatte ich mit den einfachen TTL-Pegeln auch > Übertragungsfehler, trotz nur 4800BAUD. Das sah man aber am Terminal, > und startete dann einfach den Programmdownload neu. Im Hobby geht das. > Naja... > Auf einigen Boards habe ich den MAX232, der aber laut Datenblatt nur > eine Höchstbaudrate von 19200 macht. Das war mir zu langsam. Bei kleinen > Assemblerprogrammen ging die Downloadzeit von ein paar Sekunden noch, > aber eine Minute warten für einen Output eines größeren C-Programmes war > mir zu lang. Dann schraubte ich die Baudrate auf 57600 hoch, also das > Dreifache des erlaubten Wertes. Ich war nie mit dem Oszi dran, aber das > Ding machte so noch nie Fehler. > Der MAX232 macht bei mir 115200, und funktioniert auch bei nur 3.3V problemlos. Ist natürlich alles außerhalb der Specs, aber immer noch deutlich näher dran als gar keine richtige Pegelwandlung. Und bei mir gab es damit überhaupt keine Übertragungsfehler o.ä. >> Mittlerweile ist es wohl am besten, einfach die billigen >> USB-UART-Adapter vom Chinesen zu verwenden. > > Fürs Notebook habe ich einen Umsetzer USB zu RS232 von Delock, weil es > keine eingebaute RS232 hat. Der Delock arbeitet auch völlig fehlerfrei, > aber die RS232-Pegel hat man immer noch, wie an der echten RS232, kein > TTL-Pegel. > Die Chinadinger liefern direkt TTL-Level, und man spart sich das redundante Pegelwechseln (denn in deinem Delock-Teil steckt auch ein MAX232 oder vergleichbares). Spottbillig sind sie obendrein. ;)
greg schrieb: > Die Chinadinger liefern direkt TTL-Level, und man spart sich das > redundante Pegelwechseln (denn in deinem Delock-Teil steckt auch ein > MAX232 oder vergleichbares). Spottbillig sind sie obendrein. ;) USB zu TTL, das kannte ich noch gar nicht. Aber man lernt ja nie aus. ;-)
Wilhelm F. schrieb: > USB zu TTL, das kannte ich noch gar nicht. Ebay macht's möglich (121236470609)
hallo an alle, kann jemand von euch mir eine kurze Erklärung geben? So, ich möchte wissen, wie funktioniert die TTL->RS232 Pegelanpassung. TTL: HIGH(+5V), LOW(0V) RS-232: HIGH(-15V),LOW(+15V) Wenn ich ttl zum RS-232 anpassen will, soll ich dann die Pegel invertieren? Z.B. in einer Schaltung kommt ein TTL-Signal am Ausgang, und wenn ich dieses Signal weiter über ein uC verarbeiten will, dann soll ich rs232 Signal erzeugen(z.B. MAX232 Pegelwandler). MAX232 invertiert schon das Signal. Der uC erwartet die Pegel anderer Polarität? Grüß, chombe
chombe schrieb: > Der uC erwartet die Pegel anderer Polarität? Meistens passt die Polarität bei Verwendung einen MAX232 direkt ohne weitere Invertierung. Ob das bei dem µC passt, sagt Dir sein Datenblatt und http://de.wikipedia.org/wiki/RS232#Definition : "Für die Datenleitungen (TxD und RxD) wird eine negative Logik verwendet, wobei eine Spannung zwischen −3 V und −15 V (ANSI/EIA/TIA-232-F-1997) eine logische Eins und eine Spannung zwischen +3 V und +15 V eine logische Null darstellt. " Gruß Dietrich
chombe schrieb: > kann jemand von euch mir eine kurze Erklärung geben? > ... > Wenn ich ttl zum RS-232 anpassen will, soll ich dann die Pegel > invertieren? Nein, du steckst auf der einen Seite ein "TTL-High" rein, der RS-232-Sender konervertiert es auf "RS-232-High", und der RS-232-Empfänger macht daraus wieder ein "TTL-High". Das ist eine Schnittstelle, keine Zauberei. Versuche also nicht Probleme zu lösen, die nicht existieren. Oder frei nach Einstein: Mach es so kompliziert wie nötig, aber nicht komplizierter. ;-)
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.