Microchip® Advanced Software Framework

 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages

The following structures provide predefined USB interface descriptors.

It must be used to define the final USB descriptors.

Data Structures

struct  udi_hid_mouse_desc_t
 Interface descriptor structure for HID mouse. More...
 
struct  udi_hid_mouse_report_desc_t
 Report descriptor for HID mouse. More...
 

Macros

#define UDI_HID_MOUSE_DESC
 Content of HID mouse interface descriptor for all speed. More...
 
#define UDI_HID_MOUSE_EP_SIZE   8
 By default no string associated to this interface. More...
 

#define UDI_HID_MOUSE_DESC
Value:
{\
.iface.bLength = sizeof(usb_iface_desc_t),\
.iface.bDescriptorType = USB_DT_INTERFACE,\
.iface.bInterfaceNumber = UDI_HID_MOUSE_IFACE_NUMBER,\
.iface.bAlternateSetting = 0,\
.iface.bNumEndpoints = 1,\
.iface.bInterfaceClass = HID_CLASS,\
.iface.bInterfaceSubClass = HID_SUB_CLASS_BOOT,\
.iface.bInterfaceProtocol = HID_PROTOCOL_MOUSE,\
.iface.iInterface = UDI_HID_MOUSE_STRING_ID,\
.hid.bLength = sizeof(usb_hid_descriptor_t),\
.hid.bDescriptorType = USB_DT_HID,\
.hid.bcdHID = LE16(USB_HID_BDC_V1_11),\
.hid.bCountryCode = USB_HID_NO_COUNTRY_CODE,\
.hid.bNumDescriptors = USB_HID_NUM_DESC,\
.hid.bRDescriptorType = USB_DT_HID_REPORT,\
.hid.wDescriptorLength = LE16(sizeof(udi_hid_mouse_report_desc_t)),\
.ep.bLength = sizeof(usb_ep_desc_t),\
.ep.bDescriptorType = USB_DT_ENDPOINT,\
.ep.bEndpointAddress = UDI_HID_MOUSE_EP_IN,\
.ep.bmAttributes = USB_EP_TYPE_INTERRUPT,\
.ep.wMaxPacketSize = LE16(UDI_HID_MOUSE_EP_SIZE),\
.ep.bInterval = 10,\
}
#define UDI_HID_MOUSE_EP_IN
Endpoint number used by HID mouse interface.
Definition: udi_hid_mouse_conf.h:55
#define HID_SUB_CLASS_BOOT
Interface subclass support BOOT protocol.
Definition: usb_protocol_hid.h:60
HID Descriptor.
Definition: usb_protocol_hid.h:116
#define USB_HID_NUM_DESC
Numeric expression specifying the number of class descriptors Note: Always at least one i...
Definition: usb_protocol_hid.h:143
Definition: usb_protocol_hid.h:86
#define LE16(x)
Definition: compiler.h:886
Definition: usb_protocol.h:194
Definition: usb_protocol.h:193
#define USB_HID_NO_COUNTRY_CODE
Definition: usb_protocol_hid.h:147
#define HID_CLASS
Definition: usb_protocol_hid.h:52
Standard USB interface descriptor structure.
Definition: usb_protocol.h:446
Report descriptor for HID mouse.
Definition: udi_hid_mouse.h:75
Definition: usb_protocol_hid.h:87
#define USB_HID_BDC_V1_11
Numeric expression identifying the HID Class Specification release (here V1.11)
Definition: usb_protocol_hid.h:140
#define UDI_HID_MOUSE_IFACE_NUMBER
Interface number.
Definition: udi_hid_mouse_conf.h:58
Standard USB endpoint descriptor structure.
Definition: usb_protocol.h:461
Definition: usb_protocol.h:252
#define HID_PROTOCOL_MOUSE
Protocol mouse standard.
Definition: usb_protocol_hid.h:70
#define UDI_HID_MOUSE_EP_SIZE
By default no string associated to this interface.
Definition: udi_hid_mouse.h:86

Content of HID mouse interface descriptor for all speed.

#define UDI_HID_MOUSE_EP_SIZE   8

By default no string associated to this interface.

HID mouse endpoints size