USB_InterfaceDescriptor_TypeDef Struct Reference

USB Interface Descriptor.

#include <em_usb.h>

Data Fields

uint8_t bLength
 Size of this descriptor in bytes.
 
uint8_t bDescriptorType
 Constant INTERFACE Descriptor Type.
 
uint8_t bInterfaceNumber
 Number of this interface.
 
uint8_t bAlternateSetting
 Value used to select this alternate setting for the interface identified in the prior field.
 
uint8_t bNumEndpoints
 Number of endpoints used by this interface (excluding endpoint zero).
 
uint8_t bInterfaceClass
 Class code (assigned by the USB-IF).
 
uint8_t bInterfaceSubClass
 Subclass code (assigned by the USB-IF).
 
uint8_t bInterfaceProtocol
 Protocol code (assigned by the USB).
 
uint8_t iInterface
 Index of string descriptor describing this interface.
 

USB Interface Descriptor.

Field Documentation

◆ bLength

uint8_t USB_InterfaceDescriptor_TypeDef::bLength

Size of this descriptor in bytes.


◆ bDescriptorType

uint8_t USB_InterfaceDescriptor_TypeDef::bDescriptorType

Constant INTERFACE Descriptor Type.


◆ bInterfaceNumber

uint8_t USB_InterfaceDescriptor_TypeDef::bInterfaceNumber

Number of this interface.

Zero-based value identifying the index in the array of concurrent interfaces supported by this configuration.

◆ bAlternateSetting

uint8_t USB_InterfaceDescriptor_TypeDef::bAlternateSetting

Value used to select this alternate setting for the interface identified in the prior field.


◆ bNumEndpoints

uint8_t USB_InterfaceDescriptor_TypeDef::bNumEndpoints

Number of endpoints used by this interface (excluding endpoint zero).

If this value is zero, this interface only uses the Default Control Pipe.

◆ bInterfaceClass

uint8_t USB_InterfaceDescriptor_TypeDef::bInterfaceClass

Class code (assigned by the USB-IF).

A value of zero is reserved for future standardization. If this field is set to FFH, the interface class is vendor-specific. All other values are reserved for assignment by the USB-IF.

◆ bInterfaceSubClass

uint8_t USB_InterfaceDescriptor_TypeDef::bInterfaceSubClass

Subclass code (assigned by the USB-IF).

These codes are qualified by the value of the bInterfaceClass field. If the bInterfaceClass field is reset to zero, this field must also be reset to zero. If the bInterfaceClass field is not set to FFH, all values are reserved forassignment by the USB-IF.

◆ bInterfaceProtocol

uint8_t USB_InterfaceDescriptor_TypeDef::bInterfaceProtocol

Protocol code (assigned by the USB).

These codes are qualified by the value of the bInterfaceClass and the bInterfaceSubClass fields. If an interface supports class-specific requests, this code identifies the protocols that the device uses as defined by the specification of the device class. If this field is reset to zero, the device does not use a class-specific protocol on this interface. If this field is set to FFH, the device uses a vendor-specific protocol for this interface

◆ iInterface

uint8_t USB_InterfaceDescriptor_TypeDef::iInterface

Index of string descriptor describing this interface.