Aracılığıyla paylaş


USB seri sürücüsü (Usbser.sys)

İletişim ve iletişim cihaz sınıfı (CDC) denetim cihazlarınız için Microsoft tarafından sağlanan USB sürücüsünü (Usbser.sys) kullanın. Mümkün olduğunda Windows ile birlikte gelen sürücüleri kullanın.

Önemli

Bu makale CDC denetim cihazları üreticilerine yöneliktir. USB sorunları yaşayan bir müşteriyseniz bkz. Windows'ta USB-C sorunlarını düzeltme

Usbser.sys ,Kernel-Mode Driver Framework kullanılarak uygulanır. Sürücü Tak Çalıştır'ı ve USB Seçmeli Askıya Alma gibi güç yönetimi özelliklerini destekler.

Evrensel Windows Platformu (UWP) uygulamaları , Windows.Devices.SerialCommunication ad alanı tarafından sağlanan API'leri kullanabilir ve uygulamaların CDC cihazlarıyla konuşmasına olanak tanır.

Usbser.sys yükleme

İletişimleriniz ve CDC denetim cihazınız için Microsoft tarafından sağlanan yerleşik sürücüyü (Usbser.sys) yükleyin.

Uyarı

Windows'a dahil bir USB cihaz sınıfı sürücüsü yüklemeye çalışıyorsanız, sürücüyü indirmeniz gerekmez. Windows bu sürücüleri otomatik olarak yükler. Windows sürücüyü yüklemezse cihaz üreticisine başvurun. Windows'a dahil edilen USB cihaz sınıfı sürücülerinin listesi için bkz. Windows'ta bulunan USB cihaz sınıfı sürücüleri.

Usbser.inf dizininde %Systemroot%\INF bulunur. Bu kurulum bilgileri (INF) dosyası, cihaz yığınında işlevsel aygıt nesnesi (FDO) olarak Usbser.sys yükler. Cihazınız iletişimlere ve CDC denetimi cihaz sınıfına aitse Usbser.sys otomatik olarak yüklenir. Sürücüye referans vermek için kendi INF dosyanızı yazmanız gerekmez. Windows, Windows'ta bulunan diğer USB cihaz sınıfı sürücülerine benzer şekilde, sürücüyü uyumlu bir kimlik eşleşmesine göre yükler.

USB\Class_02

USB\Class_02&SubClass_02

Usbser.sys otomatik olarak yüklemek için, cihaz tanımlayıcısında sınıf kodunu 02 ve alt sınıf kodunu 02 olarak ayarlayın. Bu yaklaşımla, sistem Usbser.inf kullandığından cihazınız için INF dosyalarını dağıtmanız gerekmez. Daha fazla bilgi için bkz. İletişim Cihazları 1.2 için sınıf tanımları.

Cihazınız sınıf kodu 02'yi belirtiyorsa ancak 02 dışında bir alt sınıf kodu belirtiyorsa Usbser.sys otomatik olarak yüklenmez. Tak Çalıştır yöneticisi bir sürücü bulmaya çalışır. Windows uygun bir sürücü bulamazsa, cihazda yüklü bir sürücü olmayabilir. Kendi sürücünüzü yüklemeniz veya başka bir yerleşik sürücüye başvuran bir INF dosyası yazmanız gerekebilir.

Cihazınız 02'nin sınıf ve alt sınıf kodlarını belirtiyorsa ve Usbser.sysyerine başka bir sürücü yüklemek istiyorsanız, bir INF dosyası yazın. INF dosyasında, cihazın donanım kimliğini ve yüklenecek sürücüyü belirtin.

Usbser.sys için seçmeli askıya alma yapılandırması

Usbser.sysUSB Seçmeli Askıya Alma'nı destekler. Bu sürücü, sistem S0 durumunda kalırken, bağlı USB'den seriye cihazın kullanılmadığında düşük güç durumuna geçmesine izin verir. Cihazla iletişim devam ettiğinde, cihaz askıya alma durumundan çıkar ve çalışma durumunu sürdürür. Özellik varsayılan olarak devre dışıdır, ancak bu kayıt defteri anahtarının altındaki IdleUsbSelectiveSuspendPolicy girişi ayarlanarak etkinleştirilebilir ve yapılandırılabilir:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\USB\<hardware id>\<instance id>\Device Parameters

Usbser.sysgüç yönetimi özelliklerini yapılandırmak için IdleUsbSelectiveSuspendPolicy parametresini şu şekilde ayarlayın:

Değer Davranış
0x00000001 Boştayken, yani cihaza veya cihazdan etkin veri aktarımı olmadığında seçmeli askıya geçin.
0x00000000 Cihazda açık tanıtıcı bulunmadığında seçmeli askıya alma moduna geçin.

Bu girdiyi iki yoldan biriyle ekleyin:

  1. Yükleme INF'sine başvuran bir INF yazın ve kayıt defteri girdisini HW.AddReg bölümüne ekleyin.

  2. Genişletilmiş özellikler işletim sistemi özellik tanımlayıcısında kayıt defteri girdisini açıklayın. bPropertyName alanını Unicode dizesine ayarlayan özel bir özellik bölümü ekleyin: IdleUsbSelectiveSuspendPolicy. wPropertyNameLength değerini 62 bayt olarak ayarlayın. bPropertyData alanını 0x00000001 veya 0x00000000 olarak ayarlayın. Özellik değerleri, küçük endian 32 bit tamsayılar olarak depolanır.

    Daha fazla bilgi için bkz. Microsoft İşletim Sistemi Tanımlayıcıları.

USB CDC cihazı için Windows uygulamaları geliştirme

Bir Windows uygulaması, Windows.Devices.SerialCommunication ad alanını kullanarak Usbser.sys istekleri gönderir. Ad alanı, bir USB CDC cihazıyla bir seri bağlantı noktası veya bir seri bağlantı noktasının soyutlaması aracılığıyla iletişim kuran Windows Çalışma Zamanı sınıflarını tanımlar. Sınıflar, seri cihazları bulmanıza, verileri okumanıza ve yazmanıza ve akış denetimi için baud hızını ve sinyal durumlarını ayarlama gibi seriye özgü özellikleri denetlemenize olanak tanır.