Hi,
ich bin gerade am Ueberlegen den FT2232 auf einer kleinen Platine
einzusetzen. Neben asynchroner serieller Kommunikation soll er auch SPI
machen. Der SPI-Teil besteht im Wesentlichen aus warten und dann,
nachdem ein Pin gesezt wurde, ein Datenwort lesen.
Laesst sich natuerlich problemlos mit Polling implementieren. Nachdem
ich nun aber im Datenblatt (
http://www.ftdichip.com/Documents/DataSheets/DS_FT2232D.pdf ) etwas von
Interrupts gelesen habe, wuerde ich es natuerlich lieber damit loesen.
Der Hinweis findet sich auf Seite 43:
1 | Pin 13:
|
2 | MPSSE mode instructions to set / clear or read the high byte of
|
3 | data can be used with this pin. In addition this pin has instructions
|
4 | which will make the controller wait until it is high, or wait until it is
|
5 | low. This can be used to connect to an IRQ pin of a peripheral chip.
|
6 | The FT2232D will wait for the interrupt, and then read the device,
|
7 | and pass the answer back to the host PC. I/O1 must be held in
|
8 | input mode if this option is used.
|
Diese Angaben gehoeren aber zum "MCU Host Bus Emulation mode". Muss ich
das also so verstehen das die Interrupt-Funktionalitaet nur im MCU-Host
Mode funktioniert? Immerhin ist der selbe Pin im MPSSE Mode (den ich
benutzen moechte) nur als normaler I/O gelistet. Die verwendung von
"MPSSE" hat mich hier etwas verwirrt, wuerde dann aber wohl nur dazu
dienen um die I/Os zu setzen/lesen. Dann wiederum macht der Name der
Funktion natuerlich ueberhaupt keinen Sinn...
Kann jemand hier fuer Klarheit sorgen? Bin mir ja fast sicher das meine
Interpretation richtig ist, aber habe den Chip noch nie benutzt und
kann's nicht ausprobieren. Und die Dokumentation finde ich an einigen
Stellen arg verwirrend.
Sebastian