Makro UsbBuildInterruptOrBulkTransferRequest (usbdlib.h)

Makro UsbBuildInterruptOrBulkTransferRequest memformat URB untuk mengirim atau menerima data pada pipa massal, atau untuk menerima data dari pipa interupsi.

Sintaks

void UsbBuildInterruptOrBulkTransferRequest(
  [in, out]       urb,
  [in]            length,
  [in]            pipeHandle,
  [in, optional]  transferBuffer,
  [in, optional]  transferBufferMDL,
  [in]            transferBufferLength,
  [in]            transferFlags,
  [in]            link
);

Parameter

[in, out] urb

Penunjuk ke URB untuk diformat sebagai permintaan transfer interupsi atau massal.

[in] length

Menentukan ukuran, dalam byte, dari URB.

[in] pipeHandle

Menentukan handel untuk pipa ini yang dikembalikan oleh HCD ketika konfigurasi dipilih.

[in, optional] transferBuffer

Arahkan ke buffer residen untuk transfer atau NULL jika MDL disediakan di TransferBufferMDL. Isi buffer ini tergantung pada nilai TransferFlags. Jika USBD_TRANSFER_DIRECTION_IN ditentukan, buffer ini akan berisi data yang dibaca dari perangkat saat dikembalikan dari HCD. Jika tidak, buffer ini berisi data yang disediakan driver untuk ditransfer ke perangkat.

[in, optional] transferBufferMDL

Pointer ke MDL yang menjelaskan buffer residen atau NULL jika buffer disediakan di TransferBuffer. Isi buffer tergantung pada nilai TransferFlags. Jika USBD_TRANSFER_DIRECTION_IN ditentukan, buffer yang dijelaskan akan berisi data yang dibaca dari perangkat saat dikembalikan dari HCD. Jika tidak, buffer berisi data yang disediakan driver untuk ditransfer ke perangkat. MDL harus dialokasikan dari kumpulan yang tidak disebarkan.

[in] transferBufferLength

Menentukan panjang, dalam byte, dari buffer yang ditentukan dalam TransferBuffer atau dijelaskan dalam TransferBufferMDL.

[in] transferFlags

Menentukan nol, satu, atau kombinasi bendera berikut:

USBD_TRANSFER_DIRECTION_IN

Diatur untuk meminta data dari perangkat. Untuk mentransfer data ke perangkat, bendera ini harus jelas.

USBD_SHORT_TRANSFER_OK

Dapat digunakan jika USBD_TRANSFER_DIRECTION_IN diatur. Jika diatur, mengarahkan HCD untuk tidak mengembalikan kesalahan jika paket diterima dari perangkat yang lebih pendek dari ukuran paket maksimum untuk titik akhir. Jika tidak, permintaan singkat mengembalikan kondisi kesalahan.

[in] link

Dicadangkan. Harus diatur ke NULL.

Nilai kembali

Tidak ada

Persyaratan

Persyaratan Nilai
Target Platform Desktop
Header usbdlib.h (termasuk Usbdlib.h)

Lihat juga

URB

Referensi pemrograman driver perangkat USB

USB_DEVICE_DESCRIPTOR