Ich suche schon seit einiger Zeit nach RS232-Konvertern und versuche, mich mit der Funktionsweise von RS232 (oder zumindest wie es soll) und der Art und Weise, wie RS232-USB-Konverter (meistens anscheinend nicht) zurechtzufinden arbeiten. Der Versuch, den Stand der Dinge zu verstehen, hat mich nicht wenig verwirrt, also frage ich hier, um zu versuchen, etwas von meiner Verwirrung zu sortieren :P
Wikipedia sagt zunächst Folgendes über RS-232 (Hervorhebung von mir):
Der RS-232-Standard definiert die Spannungspegel, die logischen Eins- und logischen Nullpegeln für die Datenübertragung und die Steuersignalleitungen entsprechen. Gültige Signale liegen entweder im Bereich von +3 bis +15 Volt oder im Bereich von -3 bis -15 Volt in Bezug auf Masse/gemeinsamen Pin; Folglich ist der Bereich zwischen -3 und +3 Volt kein gültiger RS-232-Pegel . ...
Der Standard spezifiziert eine maximale Leerlaufspannung von 25 Volt: Signalpegel von ±5 V, ±10 V, ±12 V und ±15 V sind alle üblicherweise zu sehen, abhängig von den Spannungen, die der Leitungstreiberschaltung zur Verfügung stehen. Einige RS-232-Treiberchips haben eingebaute Schaltungen, um die erforderlichen Spannungen aus einer 3- oder 5-Volt-Versorgung zu erzeugen. RS-232-Treiber und -Empfänger müssen in der Lage sein, einem unbestimmten Kurzschluss zur Erde oder zu einem beliebigen Spannungspegel von bis zu ±25 Volt standzuhalten.
Etwas später sagt WP auch:
Andere serielle Signalisierungsstandards funktionieren möglicherweise nicht mit standardkonformen RS-232-Ports. Beispielsweise bringt die Verwendung der TTL-Pegel von nahe +5 und 0 V den Markierungspegel in den undefinierten Bereich des Standards. Solche Wasserwaagen werden manchmal mit NMEA 0183-kompatiblen GPS-Empfängern und Echoloten verwendet.
All das macht Sinn. Aber dann betrete ich das Kaninchenloch...
Wenn ich nach einem USB-RS232-Konvertermodul suche (als Alternative zu dem 40-Dollar-Zeug da draußen, das nur reiner Gewinn ist), das tatsächlich dieser Spezifikation entspricht, finde ich stattdessen ein Internet voller Konverter, die ihre Betriebsspannung entweder mit 3,3 V oder 5 V angeben . Ich kann nirgendwo explizit 10-V-, 12-V- oder 15-V-Geräte finden . Das ist ein wenig besorgniserregend, denn ich habe den Eindruck, dass, wenn der Konverter nur 3,3 V oder 5 V vertragen kann, ein "echtes" (?!) RS232-Gerät mit 10 V oder 12 V Signalisierungs-/Ausgangsspannung eine ziemlich hohe Chance hat Der Konverter verbrennt spontan auf schlechte Weise (zusätzlich dazu, dass er nicht auf die 3,3 V / 5 V-Eingänge des Konverters reagiert, die außerhalb der Spezifikation liegen). Daher meine erste FrageWie kann ich ohne ein Oszilloskop feststellen/finden/herausfinden/identifizieren/usw., welche Konverter/Geräte funktionieren und welche nicht?
Der andere beunruhigende Trend, den ich festgestellt habe, ist, dass ZT213/MAXx23x-Spannungspegelwandler scheinbar nur TX und RX pegelverschieben und alle zusätzlichen (aber in bestimmten Situationen sehr wichtigen) RS232-Signale aus dem Fenster werfen. Meine zweite Frage ist , was mache ich, wenn ich ein "echtes" (?!) RS232-Gerät mit Signalpegeln von ≥ 10 V habe, das (zum Beispiel) eine DTR-Leitung benötigt - und alles, was ich habe, ist ein 5-V-USB-RS232-Konverter ? Welchen Level-Shifter kann/muss ich dann verwenden?!
Schließlich wird dies wahrscheinlich nicht in WPs Artikel über RS-232 behandelt, weil es so außerhalb der Spezifikation liegt, aber meine dritte Frage lautet: Ich habe festgestellt, dass viele der Konverter da draußen als UARTs bezeichnet werden. Ich verstehe nicht, ob diese Referenz in Bezug auf den Konverter-Chipsatz selbst verwendet wird oder ob die Implikation darin besteht, dass es sich um einen USB-zu-UART-Konverter handelt, bei dem der UART das Zielgerät ist. Was hat es damit auf sich?
Es gibt einige Kabel, die direkt von USB zu RS-232 konvertieren, alle diese sollten dies sagen und alle sollten (angemessen) mit der RS-232-Spezifikation kompatibel sein.
Es gibt jedoch auch viele Kabel, die von USB zu asynchronen seriellen TTL-Daten übersetzen, und diese werden entweder mit 3,3 V oder 5,0 V bewertet. Ein solches Kabel benötigt einen separaten TTL-zu-RS-232-Konverter wie den alten MAX232-Chip.
Hier beginnt die Verwirrung – viele Leute nennen jede Form von asynchronen seriellen Daten „RS-232“, obwohl dieser Begriff eigentlich nur für den elektrischen Schnittstellenstandard gilt. Sie müssen genau darauf achten, was der Verkäufer über seine Kabel sagt.
Ein Hinweis ist, dass, wenn das Kabel einen D-Sub-Anschluss (DE-9 oder DB-25) hat, es wahrscheinlich wirklich RS-232 ist. Wenn es einen rechteckigen Header-Anschluss hat, ist es wahrscheinlich TTL. YMMV.
Der Begriff UART bezieht sich auf das Hardwaregerät, das asynchrone serielle Daten generiert und empfängt. Technisch gesehen enthält das USB-zu-TTL-Kabel einen Chip, der zwei Schnittstellen umfasst: eine USB-Geräteschnittstelle und einen UART. Zwischen diesen beiden Schnittstellen leitet der Chip Daten in beide Richtungen weiter.
Das ist pauschal schwer zu sagen. Während der RS232-Standard ziemlich liberal ist, sind einige RS232-Geräte sehr streng. Dies war ein Problem bei älteren Laptops mit eingebauten RS232-Anschlüssen, die aus Energiespargründen nur bis zu ±7 V oder ±10 V gehen würden, während das RS232-Gerät sich weigerte, die Geräte zu lesen, und volle ±12 V oder ±15 V erwartete . Dies ist das gleiche Problem, das einige USB-RS232-Adapter haben.
USB zu TTL ist ziemlich offensichtlich. TTL ist 5 V oder 3,3 V (oder andere, einige Geräte haben eine beliebige Referenzspannung und können auf 1,8 V-Pegel heruntergehen, den neuesten Pegelstandard für Geräte mit extrem geringem Stromverbrauch). Während die meisten nur die RX- und TX-Leitungen ausbrechen, können die gängigsten ICs den vollen Port ausführen. FTDI, Prolific, Silicon Labs verfügen alle über vollständige RS232-Pegel- und Port-ICs. Einige Versionen sind nur TTL und einige Kabel verwenden solche mit RS232-Treibern wie dem MAX232. Und dann gibt es No-Name-Ics und die Imitate und Fälschungen. Es gibt also viele Variationen.
Der einzige wirkliche Weg, dies zu wissen, ist:
Ein Oszilloskop wird nicht benötigt, Sie müssen nur wissen, wie hoch oder niedrig die Pins gehen.
Passant
Passant
Ignacio Vazquez-Abrams
i336_
sternenblau
an Herrn.