Gambaran umum pengembangan driver klien Windows untuk perangkat USB

Artikel ini menjelaskan dukungan Universal Serial Bus (USB) dalam sistem operasi Windows, sehingga Anda dapat mengembangkan driver perangkat USB yang dapat dioperasikan dengan Windows.

Perangkat USB adalah periferal, seperti perangkat mouse dan keyboard, yang terhubung ke komputer melalui satu port. Driver klien USB adalah perangkat lunak yang diinstal pada komputer yang berkomunikasi dengan perangkat keras untuk membuat perangkat berfungsi. Jika perangkat termasuk dalam kelas perangkat yang didukung oleh Microsoft, Windows memuat salah satu driver USB yang disediakan Microsoft (driver kelas dalam kotak) untuk perangkat. Jika tidak, driver klien kustom harus disediakan oleh produsen perangkat keras atau vendor pihak ketiga. Pengguna menginstal driver klien untuk perangkat ketika perangkat pertama kali terdeteksi oleh Windows. Setelah penginstalan berhasil, Windows memuat driver klien setiap kali perangkat terpasang dan membongkar pengandar ketika perangkat dilepas dari komputer host.

Anda dapat mengembangkan driver klien kustom untuk perangkat USB dengan menggunakan Windows Driver Frameworks (WDF) atau Windows Driver Model (WDM). Alih-alih berkomunikasi dengan perangkat keras secara langsung, sebagian besar driver klien mengirim permintaan mereka ke tumpukan driver USB yang disediakan Microsoft yang membuat panggilan fungsi lapisan abstraksi perangkat keras (HAL) untuk mengirim permintaan driver klien ke perangkat keras. Topik di bagian ini menjelaskan permintaan umum yang dapat dikirim driver klien dan antarmuka driver perangkat (DDI) yang harus dipanggil driver klien untuk membuat permintaan tersebut.

Audiens pengembang

Driver klien untuk perangkat USB adalah driver WDF atau WDM yang berkomunikasi dengan perangkat melalui DDI yang diekspos oleh tumpukan driver USB. Bagian ini ditujukan untuk digunakan oleh programmer C/C++ yang terbiasa dengan WDM. Sebelum menggunakan bagian ini, Anda harus memahami pengembangan driver dasar. Untuk informasi selengkapnya, lihat Memulai Driver Windows. Untuk driver WDF, driver klien dapat menggunakan antarmuka Kernel-Mode Driver Framework (KMDF) atau User-Mode Driver Framework (UMDF) yang dirancang khusus untuk bekerja dengan target USB. Untuk informasi selengkapnya tentang antarmuka khusus USB, lihat Referensi USB WDF dan Antarmuka Target I/O USB UMDF.

Alat pengembangan

Windows Driver Kit (WDK) berisi sumber daya yang diperlukan untuk pengembangan driver, seperti header, pustaka, alat, dan sampel.

Referensi pemrograman USB

Memberikan spesifikasi untuk permintaan I/O, mendukung rutinitas, struktur, dan antarmuka yang digunakan oleh driver klien USB. Rutinitas dan struktur data terkait tersebut didefinisikan dalam header WDK.

Sampel driver USB

Gunakan sampel ini untuk memulai pemrograman driver klien USB.

Anda dapat mengunduh spesifikasi USB resmi dari situs web Pustaka Dokumen Universal Serial Bus . Situs web ini berisi tautan ke berbagai revisi spesifikasi Universal Serial Bus.

Bagian dokumentasi

  • Mulai menggunakan pengembangan driver klien USB
    Memperkenalkan Anda pada pengembangan driver USB. Menyediakan informasi tentang memilih model yang paling tepat untuk menyediakan driver USB untuk perangkat Anda. Tulis, bangun, dan instal driver USB mode pengguna kerangka dan mode kernel pertama Anda dengan menggunakan templat USB yang disertakan dengan Microsoft Visual Studio.

  • Driver sisi host USB di Windows
    Memberikan gambaran umum arsitektur tumpukan driver USB.

  • Tentang Permintaan Blok USB (URL)
    Pelajari cara driver klien membangun struktur data panjang variabel yang disebut Usb Request Block (URB) untuk mengirimkan permintaan ke tumpukan driver USB.

  • Deskriptor USB
    Pelajari cara driver klien membangun struktur data panjang variabel yang disebut Usb Request Block (URB) untuk mengirimkan permintaan ke tumpukan driver USB.

  • Memilih konfigurasi USB di driver USB
    Konfigurasi perangkat mengacu pada tugas yang dilakukan driver klien untuk memilih konfigurasi USB dan antarmuka alternatif di setiap antarmuka. Bagian ini menunjukkan panggilan metode yang diperlukan untuk memilih konfigurasi USB.

  • Mengirim transfer data USB di driver klien USB
    Menjelaskan pipa USB, URL untuk permintaan I/O, dan bagaimana driver klien dapat menggunakan antarmuka driver perangkat (DDI) untuk mentransfer data ke dan dari perangkat USB.

  • Menerapkan manajemen daya di driver klien USB
    Gunakan kemampuan manajemen daya perangkat USB yang mematuhi spesifikasi Universal Serial Bus (USB) memiliki serangkaian fitur manajemen daya yang kaya dan kompleks.