struktur USB_CONFIGURATION_DESCRIPTOR (usbspec.h)
Struktur USB_CONFIGURATION_DESCRIPTOR digunakan oleh driver klien USB untuk menyimpan deskriptor konfigurasi yang ditentukan USB. Anggota struktur ini dijelaskan dalam Spesifikasi Universal Serial Bus 3.1 yang tersedia di USB Document Library. Lihat bagian 9.6.3.
Sintaks
typedef struct _USB_CONFIGURATION_DESCRIPTOR {
UCHAR bLength;
UCHAR bDescriptorType;
USHORT wTotalLength;
UCHAR bNumInterfaces;
UCHAR bConfigurationValue;
UCHAR iConfiguration;
UCHAR bmAttributes;
UCHAR MaxPower;
} USB_CONFIGURATION_DESCRIPTOR, *PUSB_CONFIGURATION_DESCRIPTOR;
Anggota
bLength
Menentukan panjang, dalam byte, dari struktur ini.
bDescriptorType
Menentukan jenis deskriptor. Harus diatur ke USB_CONFIGURATION_DESCRIPTOR_TYPE.
wTotalLength
Menentukan panjang total, dalam byte, dari semua data untuk konfigurasi. Panjangnya mencakup semua antarmuka, titik akhir, kelas, atau deskriptor khusus vendor yang dikembalikan dengan deskriptor konfigurasi.
bNumInterfaces
Menentukan jumlah total antarmuka yang didukung oleh konfigurasi ini.
bConfigurationValue
Berisi nilai yang digunakan untuk memilih konfigurasi. Nilai ini diteruskan ke permintaan USB SetConfiguration , seperti yang dijelaskan dalam versi 1.1 dari Spesifikasi Universal Serial Bus. Driver port saat ini tidak mengekspos layanan yang memungkinkan driver tingkat lebih tinggi untuk mengatur konfigurasi.
iConfiguration
Menentukan indeks deskriptor string yang ditentukan perangkat untuk konfigurasi ini.
bmAttributes
Menentukan bitmap untuk menjelaskan perilaku konfigurasi ini. Bit dijelaskan dan diatur dalam urutan little-endian.
Bit | Makna |
---|---|
0 - 4 | Dicadangkan. |
5 | Konfigurasi mendukung wakeup jarak jauh. |
6 | Konfigurasi ini didukung sendiri dan tidak menggunakan daya dari bus. |
7 | Konfigurasi didukung oleh bus. |
MaxPower
Menentukan persyaratan daya perangkat ini dalam unit dua miliampere. Anggota ini hanya berlaku jika bit tujuh diatur dalam bmAttributes.
Keterangan
Jika wTotalLength lebih besar dari ukuran buffer yang disediakan dalam URB untuk menahan semua deskriptor yang diambil (antarmuka, titik akhir, kelas, dan yang ditentukan vendor), data yang tidak lengkap akan dikembalikan. Untuk mengambil deskriptor lengkap, permintaan harus dikirim ulang dengan buffer yang lebih besar.
Jika bmAttributes bits enam dan tujuh keduanya diatur, maka perangkat didukung baik oleh bus maupun oleh sumber eksternal ke bus.
Anggota lain yang merupakan bagian dari struktur ini tetapi tidak dijelaskan di sini harus diperlakukan sebagai buram dan dianggap dicadangkan untuk penggunaan sistem.
Persyaratan
Persyaratan | Nilai |
---|---|
Header | usbspec.h (termasuk Usb100.h) |
Lihat juga
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk