Freigeben über


SPB_MULTI_SPI_TRANSFER Struktur (spb.h)

Die SPB_MULTI_SPI_TRANSFER Struktur beschreibt einen SPI-E/A-Vorgang, der mit einem Multi-SPI-Übertragungsmodus wie Dual oder Quad SPI ausgeführt werden soll.

Syntax

typedef struct SPB_MULTI_SPI_TRANSFER {
  SPB_MULTI_SPI_TRANSFER_HEADER Header;
  ULONG                         TransferPhaseCount;
  SPB_TRANSFER_LIST_ENTRY       TransferPhases[1];
} SPB_MULTI_SPI_TRANSFER, *PSPB_MULTI_SPI_TRANSFER;

Angehörige

Header

Eine SPB_MULTI_SPI_TRANSFER_HEADER Struktur, die die Parameter der Übertragung enthält.

TransferPhaseCount

Die Anzahl der Transferphasen, die in der Transferstruktur vorhanden sind. Für einen Lesevorgang sollte dies auf 2 festgelegt werden (eine Lesephase und dann eine Schreibphase). Für einen Schreibvorgang sollte dies auf 1 festgelegt werden (die ausschließlich eine Schreibphase darstellt).

TransferPhases[1]

Ein Array von SPB_TRANSFER_LIST_ENTRY Strukturen, die die Phasen der Übertragung darstellen.

Bemerkungen

Wenn diese Struktur direkt verwendet wird (anstatt SPB_MULTI_SPI_WRITE_TRANSFER oder SPB_MULTI_SPI_READ_TRANSFER), muss sie mithilfe der SPB_MULTI_SPI_TRANSFER_INIT Hilfsfunktion initialisiert werden.

Diese Struktur (und der zugeordnete Header) ermöglicht folgendes Angeben:

  • Dual- oder Quad SPI-Übertragungsmodi.
  • Eine oder zwei Übertragungsphasen – eine Schreib- Phase, gefolgt von einer optionalen Lese- Phase.
  • Eine variable Anzahl von Bytes, die zu Beginn der Schreiben Phase im Einzel-SPI-Modus übertragen werden sollen, bevor Sie zum angegebenen Multi-SPI-Modus wechseln.
  • Wenn eine Lese- Phase bereitgestellt wird, zwischen Schreibvorgängen und Lesen Phasen – Taktzyklen, in denen keine Daten übertragen werden sollen.

Die folgenden Einschränkungen gelten für diese Struktur:

  • Die TransferPhases- Struktur in der Anforderung muss genau einen oder zwei Einträge enthalten. Der erste Eintrag beschreibt einen Puffer, der Daten enthält, die auf das Gerät geschrieben werden sollen. Der zweite, optionale Eintrag beschreibt einen Puffer, der zum Lesen von Daten vom Gerät verwendet wird.
  • Die Richtung dieser TransferPhasen sollte auf SpbTransferDirectionToDevice bzw. SpbTransferDirectionFromDevice festgelegt werden.
  • Jede SPB_TRANSFER_LIST_ENTRY Struktur in der Übertragungsliste muss einen DelayInUs Wert null angeben.

Anforderungen

Anforderung Wert
Header- spb.h

Siehe auch