Condividi tramite


Uso delle interfacce USB

Il framework rappresenta ogni interfaccia USB come oggetto interfaccia USB del framework. Quando un driver crea un oggetto dispositivo USB framework, il framework crea un oggetto interfaccia USB del framework per ogni interfaccia USB contenuta nella prima configurazione USB del dispositivo.

La maggior parte dei dispositivi USB ha una sola interfaccia e l'interfaccia ha una sola impostazione alternativa. I driver per tali dispositivi in genere non devono usare i metodi oggetto definiti dall'oggetto interfaccia USB del framework.

Se il driver supporta dispositivi USB che forniscono più interfacce o impostazioni alternative, i metodi dell'oggetto interfaccia consentono al driver di eseguire le operazioni seguenti:

Recupero delle informazioni sull'interfaccia

Dopo che il driver ha chiamato WdfUsbTargetDeviceCreateWithParameters, può chiamare WdfUsbTargetDeviceGetInterface per ottenere un handle a un oggetto interfaccia USB del framework che rappresenta una delle interfacce USB del dispositivo. Il driver può quindi chiamare diversi metodi definiti dall'oggetto interfaccia USB per ottenere informazioni sull'interfaccia USB.

Il driver può chiamare i metodi seguenti in qualsiasi momento dopo aver chiamato WdfUsbTargetDeviceCreateWithParameters:

WdfUsbInterfaceGetInterfaceNumber
Restituisce il numero di interfaccia USB associato a un oggetto interfaccia USB.

WdfUsbInterfaceGetDescriptor
Recupera il descrittore di interfaccia USB associato a una delle impostazioni alternative di un'interfaccia USB.

WdfUsbInterfaceGetNumEndpoints
Restituisce il numero di endpoint associati a una delle impostazioni alternative di un'interfaccia USB.

WdfUsbInterfaceGetEndpointInformation
Recupera informazioni su un endpoint e sulla relativa pipe associata.

Il driver può chiamare i metodi seguenti dopo aver chiamato WdfUsbTargetDeviceSelectConfig:

WdfUsbInterfaceGetConfiguredSettingIndex
Restituisce un valore di indice che identifica l'impostazione alternativa attualmente selezionata per un'interfaccia USB.

WdfUsbInterfaceGetNumConfiguredPipes
Restituisce il numero di pipe configurate per un'interfaccia dispositivo USB specificata.

WdfUsbInterfaceGetConfiguredPipe
Restituisce un handle all'oggetto pipe del framework associato a un'interfaccia del dispositivo USB e a un indice pipe specificati.

Selezione di un'impostazione alternativa per un'interfaccia USB

Dopo che un driver ha chiamato WdfUsbTargetDeviceCreateWithParameters, il driver può chiamare WdfUsbInterfaceGetNumSettings per ottenere il numero di impostazioni alternative supportate da un'interfaccia USB.

Dopo che un driver ha chiamato WdfUsbTargetDeviceSelectConfig per selezionare una configurazione per un dispositivo USB, il driver può chiamare WdfUsbInterfaceSelectSetting per selezionare un'impostazione alternativa per una delle interfacce USB della configurazione.

Le impostazioni alternative del dispositivo devono essere numerate in modo contiguo, a partire da zero.

Per informazioni correlate, vedere Come selezionare un'impostazione alternativa in un'interfaccia USB.