SPB_MULTI_SPI_TRANSFER 構造体 (spb.h)
SPB_MULTI_SPI_TRANSFER構造では、デュアル SPI や Quad SPI などのマルチ SPI 転送モードを使用して実行される SPI I/O 操作について説明します。
構文
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;
メンバー
Header
転送 の パラメーターを含むSPB_MULTI_SPI_TRANSFER_HEADER構造体。
TransferPhaseCount
転送構造に存在する転送フェーズの数。 読み取り操作の場合、これは 2 (読み取りフェーズ、書き込みフェーズを表す) に設定する必要があります。 書き込み操作の場合、これは 1 (書き込みフェーズのみを表す) に設定する必要があります。
TransferPhases[1]
転送のフェーズ を 表す、SPB_TRANSFER_LIST_ENTRY構造体の配列。
注釈
この構造体が ( SPB_MULTI_SPI_WRITE_TRANSFER や SPB_MULTI_SPI_READ_TRANSFERではなく) 直接使用される場合は、 SPB_MULTI_SPI_TRANSFER_INIT ヘルパー関数を使用して初期化する必要があります。
この構造体 (および関連するヘッダー) を使用すると、以下を指定できます。
- デュアルまたはクワッド SPI 転送モード。
- 1 つまたは 2 つの転送フェーズ - 書き込み フェーズ、その後にオプションの 読み取り フェーズが続きます。
- 指定されたマルチ SPI モードに切り替える前に、単一 SPI モードの 書き込み フェーズの開始時に送信される可変バイト数。
- 読み取りフェーズが提供される場合、書き込みフェーズと読み取りフェーズ間の待機サイクルの数は可変です。データを転送しないクロック サイクルです。
この構造体には、次の制限が適用されます。
- 要求の TransferPhases 構造体には、1 つまたは 2 つのエントリを含める必要があります。 最初のエントリでは、デバイスに書き込むデータを含むバッファーについて説明します。 2 つ目の省略可能なエントリは、デバイスから読み取られたデータを保持するために使用されるバッファーを表します。
- これらの TransferPhases の方向は、それぞれ SpbTransferDirectionToDevice と SpbTransferDirectionFromDevice に設定する必要があります。
- 転送リスト 内の各SPB_TRANSFER_LIST_ENTRY 構造体では、 DelayInUs 値を 0 に指定する必要があります。
要件
要件 | 値 |
---|---|
Header | spb.h |