Hallo Leute! Versuche gerade den EEPROM der FTDI Chips über D2XX wie im D2XX Guide beschrieben zu programmieren. Da die Doku wie von FTDI gewohnt sehr schlecht ist, steige ich leider nicht ganz durch, wie man genau diese Versionen (0 bis 5) und Revisionen (4 bis 9) im struct ft_program_data in ftd2xx.h zu verstehen und zu verwenden hat. Was muss ich nun bei einem FT2232H als Version angeben? Die Version 3 oder besser doch immer die aktuellste, die z.Zt. in der ftd2xx.h existiert (also 5)? Und die Datenfelder für welche Revisionen muss ich dann ausfüllen? Nur für den Chip den ich habe oder evtl. auch für die Chips mit den älteren Revisionen? Kann mich da jemand aufklären? Danke im Voraus. Grüße, Anguel
>Da die Doku wie von FTDI gewohnt sehr >schlecht ist, Wie bitte? Die ist extrem gut;)
Nach den mir vorliegenden Unterlagen ist Rev.7 aktuell für den FT2232H. Alle anderen (niedrigeren) sind mit einzubeziehen, davon allerdings nur die Felder die auch auf den FT2232H zutreffen :) Um etwas sicherer zu sein kannst du ja mit MPROG oder wie das FTDI-Tool heisst prüfen, welche Felder dort für einen FT2232H scharf geschalten sind... Ralf
Danke für die schnelle Antwort, Ralf! Ralf schrieb: > Nach den mir vorliegenden Unterlagen ist Rev.7 aktuell für den FT2232H. > Alle anderen (niedrigeren) sind mit einzubeziehen, davon allerdings nur > die Felder die auch auf den FT2232H zutreffen :) Wenn ich mir das ganze nochmal anschaue, scheint es so zu sein, dass die Versionsnummer dem D2XX nur mitteilt, welche Devices bekannt sind: "Version can be set to use whichever version is required. For compatibility with all current devices Version should be set to the latest version of the FT_PROGRAM_DATA structure which is defined in FTD2XX.h." Das verstehe ich so, dass man dann die neuste Version (aktuell 5) angeben sollte. Und für jedes Device gilt dann der entsprechende Revision-Bereich (Rev 7 für FT2232H). Ob sich diese Revisions aber auch überschneiden können wird nicht klar. Zumindest bei Rev 4 und Rev 5 kann man das ein-/ausschalten (siehe z.B.: non-zero if Rev5 chip, zero otherwise). Bei späteren Revisions verschwindet dieses Enable-Feld aber... > Um etwas sicherer zu sein kannst du ja mit MPROG oder wie das FTDI-Tool > heisst prüfen, welche Felder dort für einen FT2232H scharf geschalten > sind... Ja da schaue ich mal, wobei die Felder da ja dann anders heißen bzw. evtl. nicht alle sichtbar sind.
> Ja da schaue ich mal, wobei die Felder da ja dann anders heißen bzw. > evtl. nicht alle sichtbar sind. Ja, aber ich denke im MPROG wirst du alles (für den User notwendige) finden, und die Namen der Felder in der D2xx sind ja recht aussagekräftig genug um eine Verbindung herstellen zu können... Ralf
Ralf schrieb: > Ja, aber ich denke im MPROG wirst du alles (für den User notwendige) > finden, und die Namen der Felder in der D2xx sind ja recht > aussagekräftig genug um eine Verbindung herstellen zu können... Ok, ich schau mir das mal genau an. Übrigens scheinen mir jetzt die Revisions doch selbständig zu sein. Z.B. gibt es ein SerNumEnable7 in Rev 7 und ein SerNumEnable8 in Rev 8 und in den anderen Revisions entsprechend mit anderer Ziffer oder Buchstabe da inkonsistent. Also anscheinend keine Überlappungen zwischen den Revisionen. Sorry, aber die Leute, die das programmiert haben müssen echt bescheuert sein. Und dieser Mist wird massenweise verteilt.
Also ich hab das nun überprüft und es sieht so aus, als ob ihn nur die Revision 7 interessiert, d.h. die meines FT2232H Chips. Die Felder aller Revisionen < 7 werden mit Nullen gefüllt, die Felder aller Revisionen > 7 anscheinend mit beliebigen Daten, und zwar egal welche Werte ich den dortigen Parametern zuweise. D2XX verhält sich übrigens immer gleich, egal ob ich in ftData.Version 3 oder 5 angebe.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.