Forum: Mikrocontroller und Digitale Elektronik FTDI FT240X CBUS Bit Bang Mode


von Max M. (maxmustermann)


Lesenswert?

Hallo allerseits!

Ich verwende derzeit das UMFT240XA-01 Development Module von FTDI mit 
dem neuen FT240X USB to 8-bit FIFO Chip drauf. Das Modul lässt sich mit 
den aktuellsten D2xx Treibern (2.08.23 Beta) unter Windows 7 x64 
problemlos mit FT_Prog konfigurieren. Da ich die Pins CBUS5 und CBUS6 
als GPIOs über den CBUS Bit Bang Mode betreiben will, habe ich die Pins 
auch als GPIOs dort konfiguriert.

Anschließend versuchte ich die GPIO Pins über die FT2xx.dll (laut 
Appnote AN_232R-01_Bit_Bang wie im Datenblatt des FT240X verwiesen) in C 
anzusprechen. Das sieht wie folgt aus:

  ...
  ftStatus = FT_Open(0, &ftHandle);
  if (ftStatus == FT_OK) {
    // FT_Open OK, use ftHandle to access device
  } else {
    // FT_Open failed
  }

  // CBUS bit bang mode 0x20
  ftStatus = FT_SetBitMode(ftHandle, 0xF1, 0x20);
  if (ftStatus == FT_OK) {
    // 0x01 written to device
  } else {
    // FT_SetBitMode FAILED!
  }
  ...

Der obige Code funktioniert wunderbar beim FT232R und setzt dabei 
CBUS0=1 und CBUS1=0. Die oberen 4 Bits des Werts 0xF1 bedeuten dass alle 
Pins als Ausgang definiert sind und die unteren 4 Bits deren Zustand. 
Was ich jetzt noch nicht verstehe ist, dass die Pins beim FT240X CBUS5 
und CBUS6 heißen und wie diese mit nur 4 Bits konfiguriert werden 
sollen. Es könnte ja sein, dass sie einfach auf CBUS0 und CBUS1 gemapped 
werden?

Habt ihr schon Erfahrungen mit dem neuen Chip gemacht?

Gruß,
Max

P.S.:
hier noch der link zum Datenblatt sowie der Appnote:
http://www.ftdichip.com/Support/Documents/DataSheets/ICs/DS_FT240X.pdf
http://www.ftdichip.com/Support/Documents/AppNotes/AN_232R-01_Bit_Bang_Mode_Available_For_FT232R_and_Ft245R.pdf

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.