Forum: Mikrocontroller und Digitale Elektronik USB -> UART mit hoher Geschwindigkeit


von Nicolas (Gast)


Lesenswert?

Hallo,

ich benutze einen FT232 um ein paar kb vom PC zu einem XMega über das 
UART zu senden. Das funktioniert problemlos bis zu den durch den FT232 
spezifizierten 1MBit.

Gibt es da noch was schnelleres??

Vielen Dank


Nicolas

von Sascha W. (sascha-w)


Lesenswert?

der FT232 geht doch auch noch schneller, nur das das wohl nicht über den 
virtuellen COM-Port geht da der nur bis 1MBit spezifiziert ist.

Sascha

von root (Gast)


Lesenswert?

Sascha Weber schrieb:
> der FT232 geht doch auch noch schneller, nur das das wohl nicht über den
> virtuellen COM-Port geht da der nur bis 1MBit spezifiziert ist.

genau, schau einfach mal auf ftdichip.com
es gibt da extra treiber, die bis 10 mbit gehn, es ist eine dll, die du 
recht einfach dynamisch in deine programme einbinden kannst, vermutlich 
ist sie bereits auf deinem rechner

bei linux wird das device automatisch erkannt als /dev/ttyUSB0, geht 
ebenfalls schnell, kannste theoetisch einfach als datei öffnen. du musst 
allerdings ein programm haben, was dem port in den richtigen modus 
schaltet, sonst kommt beim Auslesen nur Schmarn raus

von Nicolas (Gast)


Lesenswert?

Vielen Dank erstmal für die Antworten - also ich benutz den ftdi-chip 
unter Linux, allerdings nicht als seriellen Port/ttyUSBx sondern mit der 
python-libftdi. Ungefähr so:

        ID1 = str(self.ui.USBID1.text())
        ID2 = str(self.ui.USBID2.text())
        print ID1
        print ID2
        ID1 = int(ID1, 16)
        ID2 = int(ID2, 16)

        if ftdi.ftdi_init(ftdic) < 0:
        print "ftdi_init fehlgeschlagen"
        ret = ftdi.ftdi_usb_open(ftdic, ID1, ID2)
        if (ret) < 0:
        err = ftdi.ftdi_get_error_string(ftdic)
        print "Konnte Geraet nicht oeffnen: " + str(ret) +  err
        #now connect via ftdi
        if ret >= 0:
           ftdi.ftdi_set_baudrate(ftdic, 1000000)
           ftdi.ftdi_set_line_property(ftdic, ftdi.BITS_8, 
ftdi.EVEN,ftdi.STOP_BIT_1)
           ftdi.ftdi_usb_purge_buffers(ftdic)


Die ist vermutlich auf die ftdi-treiber aufgesetzt. Ob das auch 
schneller geht? Ich hatte es mal mit 1.5MBit probiert, das ging aber 
schon nicht mehr. Aber vl ist da der XMega schon der Flaschenhals??

von Michael H. (michael_h45)


Lesenswert?

Es gibt auch USB auf 8-Bit Parallel-Bus Umsetzer im gewohnten usb2uart 
Format. FT245R iirc.
Damit wäre dann auch der Falschenhals 8-bit-Controller aus dem Weg, 
falls es denn daran liegt.

von birne (Gast)


Lesenswert?

Michael H. schrieb:
> Es gibt auch USB auf 8-Bit Parallel-Bus Umsetzer im gewohnten usb2uart
> Format. FT245R iirc.

ja vertmutlich ist es das, 10 mbit und UART das passt einfach nicht 
zusammen.
aber wenn du noch 12 freie pins an deinem XMEGA hast, nimm den FT245R

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.