Langkah pertama untuk pengembangan driver klien USB
Bagian ini memperkenalkan konsep dan alat pengembangan driver USB. Bagian ini berlaku untuk devlopers baru untuk pengembangan driver yang ingin mengimplementasikan driver untuk perangkat USB yang tidak menyediakan driver dalam kotak. Driver ini disebut driver klien USB dalam dokumentasi ini. Topik di bagian ini menjelaskan konsep USB tingkat tinggi dan memberikan instruksi langkah demi langkah tentang melakukan tugas umum driver klien USB. Untuk informasi terperinci tentang konsep tersebut, lihat spesifikasi USB di Dokumen USB.
Pengembang driver harus memiliki pengalaman pengkodian dalam bahasa pemrograman C++ dan memahami konsep penunjuk fungsi, fungsi panggilan balik, dan penanganan aktivitas. Jika menulis driver berdasarkan User-Mode Driver Framework, pengembang harus terbiasa dengan C++ dan COM.
Jalur pembelajaran untuk pengembang driver klien USB
Baca Spesifikasi USB 3.2.
- Pelajari tentang spesifikasi industri dan komponen yang berbeda (perangkat, pengontrol host, dan hub) arsitektur. Penting untuk memahami model aliran data, bagaimana host dan perangkat berkomunikasi satu sama lain, dan format permintaan yang diharapkan perangkat.
Dapatkan perangkat USB uji.
Memiliki perangkat USB dan spesifikasi perangkat kerasnya. Spesifikasi menjelaskan kemampuan perangkat dan perintah vendor yang didukung. Gunakan spesifikasi untuk menentukan fungsionalitas driver perangkat dan keputusan desain terkait.
Memiliki kit pembelajaran OSR USB FX2 jika baru dalam pengembangan driver USB. Kit adalah yang paling cocok untuk mempelajari sampel USB yang disertakan dalam set dokumentasi ini.
Memiliki perangkat Microsoft USB Test Tool (MUTT). Perangkat keras MUTT dapat dibeli dari Teknologi JJG. Perangkat belum menginstal firmware yang terinstal. Untuk menginstal firmware, unduh paket perangkat lunak MUTT. Untuk informasi selengkapnya, lihat dokumentasi yang disertakan dengan paket.
Pelajari tata letak perangkat USB dan deskriptor USB terkait.
- Jelaskan kemampuan perangkat Anda dengan membaca deskriptor konfigurasi, deskriptor antarmuka untuk setiap pengaturan alternatif yang didukung, dan deskriptor titik akhirnya. Dengan menggunakan USBView, pengembang dapat menelusuri semua pengontrol USB dan perangkat USB yang terhubung ke sana dan juga memeriksa konfigurasi perangkat.
Pilih model driver untuk mengembangkan driver klien USB
- Tentukan apakah driver harus menjadi driver kustom atau gunakan salah satu driver yang disediakan Microsoft berdasarkan desain perangkat target. Pilih model driver terbaik dan jelaskan fitur yang didukung oleh setiap model.
Tinjau tumpukan driver USB yang disediakan Microsoft dan konsep pengembangan driver.
- Driver sisi host USB di Windows.
- Konsep untuk Semua Pengembang Driver.
- Konsep untuk semua pengembang USB.
- Simpul perangkat dan tumpukan perangkat.
- Mengembangkan Driver dengan Windows Driver Foundation ditulis oleh Penny Orwick dan Guy Smith. Untuk informasi selengkapnya, lihat Mengembangkan Driver dengan WDF.
- Sampel driver USB.
- Pahami dasar-dasar cara kerja driver di sistem operasi Windows. Mengetahui dasar-dasarnya akan membantu membuat keputusan desain yang tepat dan menyederhanakan proses pengembangan.
- Membedakan antara mode pengguna dan model arsitektur driver mode kernel.
- Pahami pemuatan driver dan cara Windows mengatur perangkat Plug and Play (PnP) di pohon perangkat dan simpul perangkat. Pengembang juga harus memahami bagaimana manajer PnP membangun tumpukan perangkat dan di mana driver dan objek perangkatnya ditempatkan di tumpukan perangkat.
Siapkan lingkungan pengembangan dan penelusuran kesalahan.
- Instal Windows Driver Kit (WDK) terbaru.
- Instal Microsoft Visual Studio.
- Siapkan untuk Penelusuran Kesalahan.
- Pastikan Header dan pustaka yang diperlukan oleh driver klien USB tersedia.
- Jika menulis debugging driver mode kernel pada komputer host dan target melalui jaringan Ethernet, kabel 1394, kabel debug USB 2.0 atau 3.0, atau kabel modem null harus dikonfigurasi.
- Jika menulis driver mode pengguna, debugger mode pengguna tersedia di lingkungan Microsoft Visual Studio. Pengembang harus terbiasa dengan cara melampirkan ke proses atau meluncurkan proses di bawah debugger.
Tulis driver pertama Anda.
- Cara menulis driver klien USB pertama Anda (KMDF).
- Cara menulis driver klien USB (UMDF) pertama Anda.
- Tulis, bangun, dan instal driver klien USB pertama Anda dengan menggunakan templat USB yang disertakan dengan Visual Studio 2012. Pengembang harus dapat menjelaskan driver kerangka kerja, perangkat, dan objek antrean dan memahami bagaimana kerangka kerja berkomunikasi dengan driver Anda.
Perluas driver Anda dengan mengirim permintaan transfer kontrol USB.
- Kirim permintaan kontrol standar dan perintah vendor ke perangkat Anda. Untuk informasi selengkapnya, lihat Cara mengirim transfer kontrol USB.
Perluas driver Anda untuk menggunakan objek target WDF USB I/O untuk melakukan transfer data USB.
- Perluas driver Anda untuk melakukan tugas umum seperti yang diuraikan dalam Tugas umum untuk driver klien USB.
Sumber Daya Komunitas untuk USB
Blog Tim Microsoft Windows USB Core
Lihat postingan yang ditulis oleh Tim USB Microsoft. Blog ini berfokus pada tumpukan driver USB Windows yang berfungsi dengan berbagai pengontrol USB Host dan hub USB yang ditemukan di PC Windows. Sumber daya yang berguna untuk pengembang driver klien USB dan perancang perangkat keras USB memahami implementasi tumpukan driver, menyelesaikan masalah umum, dan menjelaskan cara menggunakan alat untuk mengumpulkan jejak dan file log.
-
Daftar diskusi yang dikelola oleh OSR Online untuk pengembang driver mode kernel.
Windows Dev-Center untuk Pengembangan Perangkat Keras
Windows Driver Kit, pastikan produk Anda dapat diandalkan dan kompatibel dengan Windows melalui Windows Hardware Lab Kit, pelajari sampel driver Windows.
Topik terkait
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