FTDI: Treiber mit eigene Baudraten

Gast #2819435
Lesenswert?

Hallo zusammen,

hab ein kleines Problem mit dem erstellen eines eigenen Treibers für den 
FTDI FT232R.
Meine Baugruppe verwendet nicht Standardbaudraten, wie 100kBaud, 
500kBaud, 1MBaud.
Mit dem Tool FT_INF habe ich eine Installationsdatei erstellt, die die 
unterstützen Baudraten beinhaltet.
In der *bus.inf steht folgende Baudraten-Konfiguration drin
1
[FtdiPort.NT.HW.AddReg]
2
...
3
HKR,,"ConfigData",1,17,00,3F,3F,C4,09,00,00,E2,04,00,00,71,02,00,00,38,01,00,00,D0,00,00,00,9C,00,00,00,34,00,00,00,1E,00,00,00,1A,00,00,00,18,00,00,00,0C,00,00,00,06,00,00,00,03,00,00,00,00,00,00,00,4E,00,00,00
4
...
Nachdem ich erfolgreich den eigenen Treiber installiert habe, wo ich 
voller Hoffnung, doch wurde rege enttäuscht. in hterm, wie auch in den 
COM-Port Einstellungen direkt werden meine eigenen Baudraten nicht 
unterstützt, sondern nur die Standardbaudraten bis zu 921600 Baud.

Hat schon mal jemand einen eigenen Treiber für den FTDI erstellt und 
kann mir sagen, was ich falsch gemacht habe?

Danke!

Gruß
Jochen
Persönliche Seite #3020780
Lesenswert?

Jochen schrieb:
> Meine Baugruppe verwendet nicht Standardbaudraten, wie 100kBaud,
> 500kBaud, 1MBaud.

Das ist kein Problem, wofür Du einen speziell angepassten Treiber 
brauchen würdest. Vorausgesetzt, daß die Hardware des FTDI die 
entsprechende Baudrate erzeugen kann, kann die auch mit dem 
Standardtreiber verwendet werden.

Das Programm, das den Baustein anspricht, muss nur die gewünschte 
Baudrate mitteilen; die von Windows vorgesehene Auflistung von 
möglichen Baudraten hat nichts mit den tatsächlich nutzbaren Baudraten 
zu tun.

> in hterm, wie auch in den
> COM-Port Einstellungen direkt werden meine eigenen Baudraten nicht
> unterstützt, sondern nur die Standardbaudraten bis zu 921600 Baud.

hTerm hat für die Baudrate ein Eingabefeld, da musst Du den gewünschten 
Wert reinschreiben. Die Auswahlliste enthält nur Vorschläge.
Gast #3021302
Lesenswert?

Rufus Τ. Firefly schrieb:
> hTerm hat für die Baudrate ein Eingabefeld, da musst Du den gewünschten
> Wert reinschreiben. Die Auswahlliste enthält nur Vorschläge.

Richtig, aber es ist möglich in configdata unter z.B. der Baudrate 
300Bit 3MBit einzustellen so, dass wenn jetzt die Baudrate 300Bit 
gewählt wird, tatsächlich 3Mbit generiert wird.

Alle Standardbaudrates bzw. Divisoren zum Berechnen sind in der 
configdata in Registry hinterlegt und können nach Wunsch durch 
nicht-Standard Baudrates ersetzt werden.

Daher auch dieser Eintrag mit Standarddivisoren beim Installieren des 
Treibers.

> Jochen schrieb:
1
 [FtdiPort.NT.HW.AddReg]
2
...
3
HKR,,"ConfigData",1,17,00,3F,3F,C4,09,00,00,E2,04,00,00,71,02,00,00,38,01,00,00,D0,00,00,00,9C,00,00,00,34,00,00,00,1E,00,00,00,1A,00,00,00,18,00,00,00,0C,00,00,00,06,00,00,00,03,00,00,00,00,00,00,00,4E,00,00,00
4
 ...

Hier ist die detaillierte Beschreibung zu finden:
http://www.ftdichip.com/Support/Documents/AppNotes/AN_120_Aliasing_VCP_Baud_Rates.pdf
Persönliche Seite #3021309
Lesenswert?

John schrieb:
> Richtig, aber es ist möglich in configdata unter z.B. der Baudrate
> 300Bit 3MBit einzustellen so, dass wenn jetzt die Baudrate 300Bit
> gewählt wird, tatsächlich 3Mbit generiert wird.

Schön und gut, aber ist das wirklich sinnvoll? Das ist doch nur ein 
Hack, um störrischer Software auf die Sprünge zu helfen, und fatal, 
sobald man das außer Acht lässt ...
Gast #3021377
Lesenswert?

Es muss natürlich jeder für sich entscheiden! Das ist klar!

Ich habe nur auf das Tool verwiesen, mit welchem sich bei FTDI ohne 
große Rechnerei die nächstmögliche Baud zur gewünschten Baud hinterlegen 
lässt.

Rufus Τ. Firefly schrieb:
> Vorausgesetzt, daß die Hardware des FTDI die
> entsprechende Baudrate erzeugen kann, kann die auch mit dem
> Standardtreiber verwendet werden.
Das ist eben das Problem, dass nicht jede Baud geht... auch FTDI hat so 
seine Grenzen!

Die eigentliche Software kann dann ohne weiteres die Standardbaudrate 
verwenden.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren