Dela via


Arbeta med USB-gränssnitt

Ramverket representerar varje USB-gränssnitt som ett usb-gränssnittsobjekt för ramverk. När en drivrutin skapar ett ramverks-USB-enhetsobjektskapar ramverket ett ramverks-USB-gränssnittsobjekt för varje USB-gränssnitt som enhetens första USB-konfiguration innehåller.

De flesta USB-enheter har bara ett gränssnitt och gränssnittet har bara en alternativ inställning. Drivrutiner för sådana enheter behöver vanligtvis inte använda de objektmetoder som ramverkets USB-gränssnittsobjekt definierar.

Om drivrutinen har stöd för USB-enheter som tillhandahåller flera gränssnitt eller alternativa inställningar gör gränssnittsobjektmetoder att drivrutinen kan utföra följande åtgärder:

Att erhålla gränssnittsinformation

När drivrutinen har anropat WdfUsbTargetDeviceCreateWithParameterskan den anropa WdfUsbTargetDeviceGetInterface för att hämta ett handtag till ramverkets USB-gränssnittsobjekt som representerar ett av enhetens USB-gränssnitt. Sedan kan drivrutinen anropa flera metoder som USB-gränssnittsobjektet definierar för att hämta information om USB-gränssnittet.

Din drivrutin kan anropa följande metoder när som helst efter att ha anropat WdfUsbTargetDeviceCreateWithParameters:

WdfUsbInterfaceGetInterfaceNumber
Returnerar DET USB-gränssnittsnummer som är associerat med ett USB-gränssnittsobjekt.

WdfUsbInterfaceGetDescriptor
Hämtar den USB-gränssnittsbeskrivning som är associerad med någon av de alternativa inställningarna för ett USB-gränssnitt.

WdfUsbInterfaceGetNumEndpoints
Returnerar antalet slutpunkter som är associerade med någon av de alternativa inställningarna för ett USB-gränssnitt.

WdfUsbInterfaceGetEndpointInformation
Hämtar information om en slutpunkt och dess associerade ledning.

Din drivrutin kan anropa följande metoder när den har anropat WdfUsbTargetDeviceSelectConfig:

WdfUsbInterfaceGetConfiguredSettingIndex
Returnerar ett indexvärde som identifierar den alternativa inställning som för närvarande är vald för ett USB-gränssnitt.

WdfUsbInterfaceGetNumConfiguredPipes
Returnerar antalet rör som har konfigurerats för ett angivet USB-enhetsgränssnitt.

WdfUsbInterfaceGetConfiguredPipe
Returnerar en referens till ramverkets pipe-objekt som är associerat med ett angivet USB-enhetsgränssnitt och rörindex.

Välja en alternativ inställning för ett USB-gränssnitt

När en drivrutin har anropat WdfUsbTargetDeviceCreateWithParameterskan drivrutinen anropa WdfUsbInterfaceGetNumSettings för att hämta antalet alternativa inställningar som ett USB-gränssnitt stöder.

När en drivrutin har anropat WdfUsbTargetDeviceSelectConfig för att välja en konfiguration för en USB-enhet kan drivrutinen anropa WdfUsbInterfaceSelectSetting för att välja en alternativ inställning för ett av konfigurationens USB-gränssnitt.

Enhetens alternativa inställningar måste numreras sammanhängande, från och med noll.

Relaterad information finns i Så här väljer du en alternativ inställning i ett USB-gränssnitt.