Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Gunakan driver USB yang disediakan Microsoft (Usbser.sys) untuk perangkat kontrol kelas perangkat komunikasi dan komunikasi (CDC). Gunakan driver yang disertakan dengan Windows bila memungkinkan.
Penting
Artikel ini untuk produsen perangkat kontrol CDC. Jika Anda adalah pelanggan yang mengalami masalah USB, lihat Memperbaiki masalah USB-C di Windows
Usbser.sys diimplementasikan menggunakan Kerangka Kerja DriverKernel-Mode. Driver mendukung Plug and Play, dan fitur manajemen daya seperti USB Selective Suspend.
Aplikasi Universal Windows Platform (UWP) dapat menggunakan API yang disediakan oleh namespace Windows.Devices.SerialCommunication , yang memungkinkan aplikasi untuk berbicara dengan perangkat CDC.
penginstalan Usbser.sys
Muat driver dalam kotak yang disediakan Microsoft (Usbser.sys) untuk komunikasi dan perangkat kontrol CDC Anda.
Catatan
Jika Anda mencoba menginstal driver kelas perangkat USB yang disertakan dalam Windows, Anda tidak perlu mengunduh driver. Windows menginstal pengandar ini secara otomatis. Jika Windows tidak menginstal pengandar, hubungi produsen perangkat. Untuk daftar driver kelas perangkat USB yang disertakan dalam Windows, lihat Driver kelas perangkat USB yang disertakan dalam Windows.
Usbser.inf terletak di %Systemroot%\INF
direktori. File informasi penyiapan (INF) ini memuat Usbser.sys sebagai objek perangkat fungsi (FDO) di tumpukan perangkat. Jika perangkat Anda termasuk dalam kelas komunikasi dan perangkat kontrol CDC, Usbser.sys dimuat secara otomatis. Anda tidak perlu menulis file INF Anda sendiri untuk mereferensikan driver. Windows memuat driver berdasarkan kecocokan ID yang kompatibel, mirip dengan driver kelas perangkat USB lainnya yang disertakan dalam Windows.
USB\Class_02
USB\Class_02&SubClass_02
Untuk memuat Usbser.sys secara otomatis, atur kode kelas ke 02 dan kode subkelas ke 02 di Deskriptor Perangkat. Dengan pendekatan ini, Anda tidak perlu mendistribusikan file INF untuk perangkat Anda karena sistem menggunakan Usbser.inf. Untuk informasi selengkapnya, lihat Definisi kelas untuk Perangkat Komunikasi 1.2.
Jika perangkat Anda menentukan kode kelas 02 tetapi kode subkelas selain 02, Usbser.sys tidak dimuat secara otomatis. Manajer Plug and Play mencoba menemukan driver. Jika Windows tidak menemukan pengandar yang cocok, perangkat mungkin tidak memiliki pengandar yang dimuat. Anda mungkin perlu memuat driver Anda sendiri atau menulis file INF yang merujuk pada driver bawaan lainnya.
Jika perangkat Anda menentukan kode kelas dan subkelas 02, dan Anda ingin memuat driver lain alih-alih Usbser.sys, tulis file INF. Dalam file INF, tentukan ID perangkat keras perangkat dan driver yang akan diinstal.
Mengonfigurasi penangguhan selektif untuk Usbser.sys
Usbser.sys mendukung USB Selective Suspend. Driver ini memungkinkan perangkat USB-ke-serial yang terpasang memasuki status daya rendah saat tidak digunakan, sementara sistem tetap dalam status S0. Saat komunikasi dengan perangkat dilanjutkan, perangkat meninggalkan status ditangguhkan dan melanjutkan status kerja. Fitur ini dinonaktifkan secara default, tetapi dapat diaktifkan dan dikonfigurasi dengan mengatur entri IdleUsbSelectiveSuspendPolicy di bawah kunci registri ini:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\USB\<hardware id>\<instance id>\Device Parameters
Untuk mengonfigurasi fitur manajemen daya Usbser.sys, atur parameter IdleUsbSelectiveSuspendPolicy ke:
Nilai | Perilaku |
---|---|
0x00000001 |
Masukkan penangguhan selektif saat diam, yaitu, ketika tidak ada transfer data aktif ke atau dari perangkat. |
0x00000000 |
Masukkan penangguhan selektif hanya ketika tidak ada handle yang terbuka pada perangkat. |
Tambahkan entri tersebut dengan salah satu dari dua cara:
Tulis INF yang mereferensikan INF penginstalan dan tambahkan entri registri di HW. Bagian AddReg .
Jelaskan entri registri dalam deskriptor fitur OS properti yang diperluas. Tambahkan bagian properti kustom yang mengatur bidang bPropertyName ke string Unicode:
IdleUsbSelectiveSuspendPolicy
. Atur wPropertyNameLength ke 62 byte. Atur bidang bPropertyData ke0x00000001
atau0x00000000
. Nilai properti disimpan sebagai bilangan bulat little-endian 32-bit.Untuk informasi selengkapnya, lihat Microsoft OS Descriptors.
Mengembangkan aplikasi Windows untuk perangkat USB CDC
Aplikasi Windows mengirim permintaan ke Usbser.sys dengan menggunakan namespace Windows.Devices.SerialCommunication . Namespace mendefinisikan kelas Windows Runtime yang berkomunikasi dengan perangkat USB CDC melalui port serial atau abstraksi port serial. Kelas ini memungkinkan Anda menemukan perangkat serial, membaca dan menulis data, dan mengontrol properti khusus serial untuk kontrol aliran, seperti mengatur laju baud dan status sinyal.