Wie funktioniert ein RS-232 zu USB Konverter?

Wenn ich einige Daten über ein RS-232-Kabel sende, haben Sender und Empfänger UART. Ich kann einen RS-232-zu-USB-Konverter verwenden, um ein Gerät oder einen anderen PC an meinen Laptop anzuschließen. Hat ein solcher Konverter einen eingebauten UART? Wie werden Daten von RS-232 auf USB konvertiert?

 3
Author: Giacomo1968, 2017-03-28

2 answers

Ja, ein RS232 zu USB Konverter hat eine ausgewachsene UART schaltung eingebaut. Wie jedes Standard-UART verfügt es über Rx -, Tx-und Flow-Control-Pins. Wie jedes UART muss es ordnungsgemäß konfiguriert sein, um mit dem "Partner" am anderen Ende der UART-Verbindung kommunizieren zu können.

Dazu wird die UART-Schaltung an die USB-Schnittstelle "überbrückt". Die USB-Schnittstelle verfügt über den CDC-Klassendeskriptor (Communication Device Class), und der USB-Hosttreiber ordnet dieses USB-Gerät einem virtuellen COMnn-Port mit nächste verfügbare Nummer, damit PC-Anwendungen sie als üblichen COM-Port verwenden können.

Die Brücke ist ziemlich einfach. Um die UART-Daten zu lesen, fragt der USB-COM-Port-Treiber das USB-Gerät ständig nach Daten (da es keine anderen Mittel hat, um zu wissen, wann der UART seine Daten empfängt und bereit ist, sie an den Host weiterzugeben). Wenn keine Daten vorhanden sind, antwortet die Brücke mit NAK. Wenn Daten vorhanden sind, gibt die USB-Seite die Daten zurück.

Wenn der Host UART-Daten senden möchte, gibt ein OUT-Paket mit 1 Byte Daten aus. Die Bridge empfängt das serielle Byte in einen parallelen Puffer (mit USB-Geschwindigkeit) und stopft dann das empfangene parallele Byte in die parallele Seite von UART, um es mit UART-Geschwindigkeit zu übertragen.

Vor der Kommunikation über UART muss die USB-Seite den UART für die ordnungsgemäße Baudrate, die Stoppsignallänge und die Verwendung der Flusssteuerung konfigurieren, wie im Falle eines üblichen UART in einem PC. Dies ist für Anwendungsterminals praktisch transparent, und die Terminals verwenden die üblichen schnittstelle zum Einrichten dieser Parameter.

 3
Author: Ale..chenski,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2017-03-29 23:03:27

Ja, viele solcher RS-232-zu-USB-Adapter haben einen USB-zu-UART-Chip. Gemeinsame sind:

 1
Author: user1686,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2017-03-29 23:10:50