Forum: Mikrocontroller und Digitale Elektronik Zwei UART zusammenführen, dann zu USB


von Alex (Gast)


Angehängte Dateien:

Lesenswert?

Hallo zusammen,

ich suche gerade Informationen zur Umsetzung von folgender 
Aufgabenstellung:

Zwei Platinen besitzen über je einen PIC je eine genutzte UART 
Schnittstelle. Der eine PIC wird nur zur Steuerung, der andere nur zur 
Signalmessung verwendet.

Das gesamte Setup soll zum Schluss nach außen hin über EINE USB-Leitung 
angesprochen werden. Meine Frage betrifft nun, wie man die drei 
Leitungen am besten zusammenführt, dazu habe ich bisher zwei 
Möglichkeiten gesehen (siehe Bild):

1. Die RS232 Busse werden aufeinandergeführt, dann über einen RS232/USB 
Converter (wie sie auch in den Kabeladaptern zu haben sind) auf USB 
konvertiert.

2. Die zwei RS232 Schnittstellen werden einzeln über je einen RS232/USB 
Converter konvertiert und dann die beiden USBs über ein USB HUB 
zusammengeführt.

Falls Version 1 geht - gibt es beim aufeinanderlegen der Busse etwas zu 
beachten (hardwareseitig)?

Falls Version 2 geht (und das sollte sie, sieht nur nach mehr 
hardwareaufwand aus) - gibt es für das Zusammenführen der USBs von euch 
Vorschläge für fertige "HUB"-Lösungen? das ganze sollte möglichst klein 
und auf einer platine sein, daher wären ICs o.ä. interessant, keine 
kaufbaren USB-Hubs vom mediamarkt für den PC z.B.

Könnt ihr helfen? Ich bin auf eure Anregungen gespannt!

Alex

von Achim M. (minifloat)


Lesenswert?

Machs halt so:

- der PC kann Daten an Steuer-Pic senden
- der Steuer-Pic kann Daten an ADC-Pic senden
- der ADC-Pic kann Daten an PC senden

Alles, was kein Befehl oder Opcode für den Steuerpic ist, reicht der 
einfach weiter an den ADC-Pic. Alles, was kein Befehl oder Opcode für 
den ADC-Pic ist, schiebt dieser einfach an den PC.

Man kann sich also ein Dreieck aus ADC-Pic, Steuer-Pic und USB-Uart 
vorstellen.

mfg mf

PS: Dadurch, dass die Chips jeweils für frede Befehle transparent sind, 
scheint dein Gerät aus PC-Sicht gar nicht aus zwei Controllern zu 
bestehen.

von Dietrich L. (dietrichl)


Lesenswert?

RS232 ist kein Bus, sondern immer nur für End-End-Betrieb ausgelegt. 
Daher kann man 2 RS232-Geräte nicht einfach zusammenschalten.
In Spezialfällen geht es mit Einschränkungen: ein Sender kann 2 
Empfänger treiben. Zwei Sender kann man nicht direkt parallel schalten. 
Da braucht man extra Logik (Dioden, Umschalter...). Außerdem muss man im 
Protokoll vorsehen/sicherstellen, dass nicht 2 gleichzeitig senden.

Also zuerst musst Du mal aufschlüsseln, wer mit wem Daten austauschen 
soll. Dann kann man weiter sehen - oder gleich 2 RS232-Kanäle zum PC 
vorsehen.

Gruß Dietrich

von Uwe (Gast)


Lesenswert?

FT2232d von FTDI hat 2 Serielle RS232 Schnittstellen drin und nur ein 
USB Anschluß (und noch nen paar andere IOs und Betriebsmodi)

von Alex (Gast)


Lesenswert?

Vielen Dank!

von Stefan K. (stkl)


Angehängte Dateien:

Lesenswert?

Kleine Klugscheißanmerkung dazu: Du sprichst im Titel von UART, im Text 
von RS232... Ein Umweg über den RS232-Pegel kann man sich sparen (denke 
auch nicht, dass du das vorhast)

Der bereits von Uwe erwähnte FT2232 stellt zwei virtuelle serielle 
Schnittstellen zur Verfügung, die getrennt angesprochen werden können, 
wäre eine schöne Möglichkeit.

Saubere Alternative wäre eine Vernetzung der PICs, z.B. per I²C, wenn 
allerdings beide Schaltungen schon fertigestellt sind, ist Version A 
vermutlich bequemer.

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
Noch kein Account? Hier anmelden.