Forum: Mikrocontroller und Digitale Elektronik USB <---> TTL


von Ray M. (ray_m)


Lesenswert?

hi,

ich bin auf der suche nach einem 2- oder 4-kanal usb2ttl chip
sowas wie ftdi232, mcp2200 nur halt mit mind. 2 kanälen wie ein max232

kann mir jemand auf die sprünge helfen ? hat eventuell sogar erfahrung
mit solchen chips ? schon eine kleine schaltung die er mal 
veröffentliche
möchte ... ?


danke für hinweise

von Justus S. (jussa)


Lesenswert?

sowas wie FT4232H ?

von Peter II (Gast)


Lesenswert?

Ray M. schrieb:
> ich bin auf der suche nach einem 2- oder 4-kanal usb2ttl chip
> sowas wie ftdi232, mcp2200 nur halt mit mind. 2 kanälen wie ein max232

ein max232 hat doch nur 1 RX und TX also eigentlich nur einen Kanal?

USB zu Serial gibt es mit 1, 2 oder 4 Kanälen von FTDI

http://www.ftdichip.com/FTProducts.htm
http://www.ftdichip.com/Products/ICs/FT2232H.html

von kjgskf (Gast)


Lesenswert?

Ein FT4232 hat min 8 explizit als GPIO bezeichnete Pins:
http://www.ftdichip.com/Support/Documents/DataSheets/ICs/DS_FT4232H.pdf
Seite 8

kjgskf

von Ray M. (ray_m)


Lesenswert?

danke ...

von DraconiX (Gast)


Lesenswert?

Ich gehe davon aus, das er mehrere Endpoints auf der USB Seite haben 
will oder?! Die Frage ist sehr wage formuliert, alleine schon wegen der 
MAX232 Geschichte.

kjgskf schrieb:
> Ein FT4232 hat min 8 explizit als GPIO bezeichnete Pins:
> http://www.ftdichip.com/Support/Documents/DataShee...
> Seite 8
>
> kjgskf

Es geht nicht um GPIOs sondern um die Kanäle, der FT4232 hat 2x2 TTL 
Kanäle 2 Känale zu je 2 synchron über MPSSE.

von Ray M. (ray_m)


Lesenswert?

DraconiX schrieb:
> Ich gehe davon aus, das er mehrere Endpoints auf der USB Seite haben
> will oder?! Die Frage ist sehr wage formuliert, alleine schon wegen der
> MAX232 Geschichte.

ich hab einen arm der hat 4ser schnittstellen, da hab ich jetzt
2x max232 dran und muss dann wieder ein rs232->usb kabel dranstecken
um es an meinen rechner zu stecken, dass geht mir auf den sack

wenn ich die 4x ser (ttl) vom arm gleich auf usb umwandle, kann ich
direkt mit usb in meinen rechner ohne zwischendurch nochmal auf rs232
und wieder zurück zu müssen

nur 4x z.b. mcp2200 auf meine platine zu löten finde ich scheiße

: Bearbeitet durch User
von Peter II (Gast)


Lesenswert?

Ray M. schrieb:
> ich hab einen arm der hat 4ser schnittstellen, da hab ich jetzt
> 2x max232 dran

für 4 Serielle Schnittstellen braucht man auch 4 MAX232 ???

von kjgskf (Gast)


Lesenswert?

Peter II schrieb:
> für 4 Serielle Schnittstellen braucht man auch 4 MAX232 ???

Nicht, wenn man nur RX/TX benutzt (dann ohne oder mit Flusskontrolle 
ueber Steuerzeichen)

kjgskf

von Peter II (Gast)


Lesenswert?

kjgskf schrieb:
> Nicht, wenn man nur RX/TX benutzt (dann ohne oder mit Flusskontrolle
> ueber Steuerzeichen)

oh, hatte mich von Datenblatt täuchen lassen, das es ja jeweils 2 
Einheiten.

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Ray M. schrieb:
> wenn ich die 4x ser (ttl) vom arm gleich auf usb umwandle

Das geht mit dem FT4232H. Der ist dafür da. Ein Baustein, vier 
USB-UARTs.

von Ray M. (ray_m)


Lesenswert?

Peter II schrieb:
> kjgskf schrieb:
>> Nicht, wenn man nur RX/TX benutzt (dann ohne oder mit Flusskontrolle
>> ueber Steuerzeichen)
>
> oh, hatte mich von Datenblatt täuchen lassen, das es ja jeweils 2
> Einheiten.

genau ;)

von kjgskf (Gast)


Lesenswert?

Rufus Τ. F. schrieb:
>> wenn ich die 4x ser (ttl) vom arm gleich auf usb umwandle
>
> Das geht mit dem FT4232H. Der ist dafür da. Ein Baustein, vier
> USB-UARTs.

Aber wieso will man 4 USART von EINEM ARM an EINEN PC koppeln?

kjgskf

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

RAIU*?


*) Redundant Array of Inexpensive Uarts

von DraconiX (Gast)


Lesenswert?

kjgskf schrieb:
> Rufus Τ. F. schrieb:
>>> wenn ich die 4x ser (ttl) vom arm gleich auf usb umwandle
>>
>> Das geht mit dem FT4232H. Der ist dafür da. Ein Baustein, vier
>> USB-UARTs.
>
> Aber wieso will man 4 USART von EINEM ARM an EINEN PC koppeln?
>
> kjgskf

Sinnbefreit ist das schon, richtig :-D Und dafür auch nicht gedacht.

Somal der FT4232H auch nur zwei der vier UARTs synchron übertragen kann, 
effektiv kommen da nur 2 UART zeitgleich an.

von Dergute W. (derguteweka)


Lesenswert?

Moin,

Rufus Τ. F. schrieb:
> RAIU*?
>
> *) Redundant Array of Inexpensive Uarts

Mittels Link Aggregation kann man dann bis zu 460800 bit/s uebertragen. 
Das ist schon fast 1/20 eines 10MBit/s Ethernetlinks. Also raketenartige 
Geschwindigkeit...

Gruss
WK

von Ray M. (ray_m)


Lesenswert?

kjgskf schrieb:
> Rufus Τ. F. schrieb:
>>> wenn ich die 4x ser (ttl) vom arm gleich auf usb umwandle
>>
>> Das geht mit dem FT4232H. Der ist dafür da. Ein Baustein, vier
>> USB-UARTs.
>
> Aber wieso will man 4 USART von EINEM ARM an EINEN PC koppeln?

will man nicht, mann will einen an einen pc, den nächsten an einen 
anderen,
den übernächtes als eingang von einer anderen baugruppe benutzen usw...

von Dergute W. (derguteweka)


Lesenswert?

Moin,

Ray M. schrieb:
> will man nicht, mann will einen an einen pc, den nächsten an einen
> anderen,
> den übernächtes als eingang von einer anderen baugruppe benutzen usw...

Ok, klingt erstmal sinnvoller.
Aber da hab' ich staerkste Zweifel, dass es da Bausteine gibt, wo 
mehrere USB-Phys in einem Chip sind. Da wirst du wohl nicht 
drumrumkommen, 4 einzelne Chips zu verwenden.

Gruss
WK

von kjgskf (Gast)


Lesenswert?

Ray M. schrieb:
> will man nicht, mann will einen an einen pc, den nächsten an einen
> anderen,
> den übernächtes als eingang von einer anderen baugruppe benutzen usw...

Dir ist aber schon klar, dass zwar alle vier UARTs an den FT4232H 
geschaltet werden koennen, da aber nur EINE USB herauskommt?

kjgskf

von Ray M. (ray_m)


Lesenswert?

ja, das hab ich im datenblatt gesehen, deshalb ist der ft4 auch
nicht das was ich suche ...

bein max232 geht 2mal ttl rein und es kommt 2x rs232 raus und genau
das suche ich für ttl->usb ...

von Peter II (Gast)


Lesenswert?

Ray M. schrieb:
> das suche ich für ttl->usb ...

die Bezeichnung ttl->USB ist Unsinn. der RS232 ist ein Pegel umsetzen. 
von USB braucht man einen Protokoll umsetzen.

Du suchst also USB -> UART mit ttl Pegel.

von Schorsch X. (bastelschorsch)


Lesenswert?

Ray M. schrieb:
> ich hab einen arm der hat 4ser schnittstellen, da hab ich jetzt
> 2x max232 dran und muss dann wieder ein rs232->usb kabel dranstecken
> um es an meinen rechner zu stecken, dass geht mir auf den sack

Alleine die Frage: Warum ?
Ein TTL-Uart über FTDI ist doch üblicherweise mehr als flott genug...

Peter II schrieb:
> die Bezeichnung ttl->USB ist Unsinn. der RS232 ist ein Pegel umsetzen.
> von USB braucht man einen Protokoll umsetzen.
>
> Du suchst also USB -> UART mit ttl Pegel.

Du sprichst in Rätseln ?

von Ray M. (ray_m)


Lesenswert?

also wenn ich wüste wie die welt funktioniert müsste ich nicht
hier im forum fragen

ich hab aktuell

  µc --> ttl1 --> max232 ---> dsub9 (serial0) --> kabel --> usb (pc)
                    ^    |--> dsub9 (serial1) --> kabel --> usb
     --> ttl2 ------|


ich will das dsub9(rs232TOusb)-kabel weg haben und
den max232 durch was anderes ersetzen, ich kann z.b. 4x mcp2200
benutzen, dann hätte ich

  µc --> ttl1 --> mcp220 --> usb-kabel --> usb (pc)
  µc --> ttl2 --> mcp220 --> usb-kabel --> usb
  µc --> ttl3 --> mcp220 --> usb-kabel --> usb
  µc --> ttl4 --> mcp220 --> usb-kabel --> usb

ich such quasi 4xmcp2200 in einem chip ... oder sowas

: Bearbeitet durch User
von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Ray M. schrieb:
> quasi 4xmcp2200 in einem chip

So etwas gibt es nicht, weil es außerhalb Deiner sehr speziellen 
Anwendung niemand braucht.

von Andreas (Gast)


Lesenswert?

Warum nimmst Du nicht einen microcontroller.

In einem PSoC 5LP kannst Du locker 4 UARTS rein tun.
Das USB Interface hat 8 Endpoints, das wuerde also reichen.
Das einzige Problem ist, dass Du dafuer einen eigenen Windows-Driver 
brauchst.

Mit 2 UARTS geht der normale Windows-Driver, Du musst dann nur die 
USB-Seite
mit 2 "Interface Asscociation Descriptors" konfigurieren.
Aber dann sieht Windows beide UARTS als COM-Port.

Musst Du die Baud-rate programmieren koennen?



Andreas

von Ray M. (ray_m)


Lesenswert?

ok, dann muss ich 4x mcp oder 4x ftdi nehmen ... danke, dann kann ich 
mir das suchen sparen ...

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Das ist nicht das, was der Threadstarter wünscht. Der möchte einen 
Baustein mit vier separaten USB-Interfaces, die man an vier 
unterschiedliche USB-Hosts anschließen kann.

Eine Vierfach-USB-UART mit 8 Endpoints existiert in Form des FT4232H, 
aber die hat natürlich nur EIN USB-Interface.

: Bearbeitet durch User
von Schorsch X. (bastelschorsch)


Lesenswert?

Wenn alles am gleichen PC landet, dann kapier ich die 4x USB nicht. Oder 
soll 4xseriell an 4xUSB an 4 verschiedenen PCs dran ?

von Ray M. (ray_m)


Lesenswert?

Andreas schrieb:
> Warum nimmst Du nicht einen microcontroller.
>
> In einem PSoC 5LP kannst Du locker 4 UARTS rein tun.
> Das USB Interface hat 8 Endpoints, das wuerde also reichen.
> Das einzige Problem ist, dass Du dafuer einen eigenen Windows-Driver
> brauchst.
>
> Mit 2 UARTS geht der normale Windows-Driver, Du musst dann nur die
> USB-Seite
> mit 2 "Interface Asscociation Descriptors" konfigurieren.
> Aber dann sieht Windows beide UARTS als COM-Port.

das kann gut sein, aber wenn ich z.b. 4x mcp2200 einsetze,
habe ich auf meinem board 4x micro-usb-buchse, da steck ich ein
kabel rein und das stöpsel ich an meinen pc und schon hab ich ein
ser-interface, ich stecke noch ein kabel rein und hab noch eins,
schöne welt wär es wenn das halt mit einenm chip an stelle von
4 gehen würde weil es einfach auf dem board splatz spart ...
und windows ist mir egal, unter linux muss es funktionieren ;)

> Musst Du die Baud-rate programmieren koennen?

nein, fixe 115200 reichen mir

von Ray M. (ray_m)


Lesenswert?

Schorsch X. schrieb:
> Wenn alles am gleichen PC landet, dann kapier ich die 4x USB nicht. Oder
> soll 4xseriell an 4xUSB an 4 verschiedenen PCs dran ?

genau das ...

    --> andere baugruppe
    |
µc ---> pc
    |
    --> noch eine andere baugruppe
    |
    --> und noch eine andere baugruppe

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Ray M. schrieb:
> da steck ich ein
> kabel rein und das stöpsel ich an meinen pc und schon hab ich ein
> ser-interface, ich stecke noch ein kabel rein und hab noch eins,

In den gleichen PC?

Was um alles in der Welt soll das?

von Ray M. (ray_m)


Lesenswert?

Rufus Τ. F. schrieb:
> Ray M. schrieb:
>> da steck ich ein
>> kabel rein und das stöpsel ich an meinen pc und schon hab ich ein
>> ser-interface, ich stecke noch ein kabel rein und hab noch eins,
>
> In den gleichen PC?
>
> Was um alles in der Welt soll das?

das ist doch scheiss egal, ich will halt viel reinstecken, wo ist das 
problem ??? bei mir soll der µc halt nicht nur daten produzieren
und rausrotzen sondern er soll welche emfangen ... verarbeiten und
wieder zurück schicken ...

anwendungsbeispiel:

/dev/ttyUSB0 --> sende daten --> µc --> |
                                        verarbeite daten
/dev/ttyUSB1 <-- sende daten <-- µc <-- |

von Ray M. (ray_m)


Lesenswert?

Ray M. schrieb:
> Rufus Τ. F. schrieb:
>> Ray M. schrieb:
>>> da steck ich ein
>>> kabel rein und das stöpsel ich an meinen pc und schon hab ich ein
>>> ser-interface, ich stecke noch ein kabel rein und hab noch eins,
>>
>> In den gleichen PC?
>>
>> Was um alles in der Welt soll das?
>
> das ist doch scheiss egal, ich will halt viel reinstecken, wo ist das
> problem ??? bei mir soll der µc halt nicht nur daten produzieren
> und rausrotzen sondern er soll welche emfangen ... verarbeiten und
> wieder zurück schicken ...
>
> anwendungsbeispiel:
>
> /dev/ttyUSB0 --> sende daten --> µc --> |
>                                         verarbeite daten
> /dev/ttyUSB1 <-- sende daten <-- µc <-- |

... und ja, dass soll er mit mehreren schnittstellen machen und nicht
nur über eine wo die daten hin und zurück gehen ...

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Ray M. schrieb:
> ... und ja, dass soll er mit mehreren schnittstellen machen und nicht
> nur über eine wo die daten hin und zurück gehen ...

Das läuft aber auf exakt das gleiche hinaus, ob Du nun eine 
Vierfach-USB-UART an einen PC anschließt oder vier Einfach-USB-UARTs an 
den selben PC.

Wie kommst Du auf die Idee, das könnte einen Unterschied ausmachen?

: Bearbeitet durch User
von Peter II (Gast)


Lesenswert?

Ray M. schrieb:
> anwendungsbeispiel:
>
> /dev/ttyUSB0 --> sende daten --> µc --> |
>                                         verarbeite daten
> /dev/ttyUSB1 <-- sende daten <-- µc <-- |

legt du auch 5 LAN-Kabel zu deinem PC wenn du 5 Tabs im Browser öffnen 
willst?

Einfach ein gescheitet Protokoll bauen, und schon kann man 100 
Verbindungen über eine UART machen.

von Ray M. (ray_m)


Lesenswert?

mach den thread bitte zu, ich habe eine chip gesucht der mir
eine bestimmte funktionalität zur verfügung stellt, aktuell sind wir 
davon ganz weit weg ... diese dikussion ist sinnfrei

von Schorsch X. (bastelschorsch)


Lesenswert?

Ray M. schrieb:
> diese dikussion ist sinnfrei

Allerdings

von Joachim B. (jar)


Lesenswert?

Ray M. schrieb:
> ich habe eine chip gesucht der mir
> eine bestimmte funktionalität zur verfügung stellt, aktuell sind wir
> davon ganz weit weg ... diese dikussion ist sinnfrei

woran das wohl liegt?

auch nach ausführlichem Lesen sehe ich immer nicht ob 4 serielle als 
RS232 an verschiedene Geräte darunter EIN PC mit USB oder ob alle 
Seriellen nur immer an EINEM PC landen sollen als USB!

: Bearbeitet durch User
von Axel S. (a-za-z0-9)


Lesenswert?

Joachim B. schrieb:
> auch nach ausführlichem Lesen sehe ich immer nicht ob 4 serielle als
> RS232 an verschiedene Geräte darunter EIN PC mit USB oder ob alle
> Seriellen nur immer an EINEM PC landen sollen als USB!

Gesagt hat er das zwar nicht, aber andere haben mittlerweile erraten, 
daß er wohl 4 separate UART<->USB Bridges sucht. Und daß er sich 
komischerweise einbildet, so etwas gäbe es in einem Chip.

Gibts aber nicht. Und das aus gutem Grund. So ein (um mal ein Beispiel 
zu nennen) CP2102 ist mitsamt Außenbeschaltung auch nicht größer als 
eine Micro-USB Buchse. Ein Platzproblem bekommt man auch mit 4 separaten 
Chips nicht.

von Joachim B. (jar)


Lesenswert?

Axel S. schrieb:
> aber andere haben mittlerweile erraten,
> daß er wohl 4 separate UART<->USB Bridges sucht

ist erraten hier jetzt die optimale Vorgehensweise?

von Andreas (Gast)


Lesenswert?

Aber 4x USB-UART bridge + hub sind 4 chips,
ein PSoC 5LP ist ein Chip,
braucht nur ein paar Cs und die Firmware und tut was Du willst.

Und ja unter Linux geht das.
Wir bauen einen Microserver, der aus vielen Compute-Modulen besteht.
Wir haben eine Hubplatine mit 42 USB ports, an jedem haengt ein PSoC 5,
der unter anderem USB-UART macht.
Wir haben dann also jede Menge /dev/ttyACM<x>
in unserem Host.
(der cdc_acm driver mit unseren gegenwaertigen udev rules nennt die 
seriel
ports nicht ttyUSB sondern ttyACM.

Andreas

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Andreas schrieb:
> Wir haben dann also jede Menge /dev/ttyACM<x> in unserem Host.

Und habt Ihr auch für jedes /dev/ttyACM-Device ein eigenes USB-Kabel, 
wie es der Threadstarter will?

Einfach nur mehrere UARTs, die ein USB-Device bilden, genügen ihm nicht, 
aus welchen unerfindlichen Gründen auch immer.

von Axel S. (a-za-z0-9)


Lesenswert?

Andreas schrieb:
> Aber 4x USB-UART bridge + hub sind 4 chips,

Der TE braucht keinen Hub.

> Wir haben eine Hubplatine mit 42 USB ports, an jedem haengt ein PSoC 5,
> der unter anderem USB-UART macht.
> Wir haben dann also jede Menge /dev/ttyACM<x>
> in unserem Host.

Der TE möchte seine 4 USB-UART nicht am selben US Bus haben.

Siehe seinen Beitrag "Re: USB <---> TTL"

Warum er allerdings ausgerechnet USB für die Verbindung verwenden will, 
statt der unproblematischeren UART-Signale (mit CMOS Pegel natürlich) 
erschließt sich mir aber auch nicht.

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.