Example #1
0
    1,                                          // bNumConfigurations
};

#pragma data_alignment=4
const Int8U UsbFS_Cfg0[] =
{
// Configuration Descriptor
    // bLength
    sizeof(UsbStandardConfigurationDescriptor_t),
    // bDescriptorType
    UsbDescriptorConfiguration,
    // wTotalLength
    _2BL(sizeof(UsbStandardConfigurationDescriptor_t)+
    (2 * sizeof(UsbStandardInterfaceDescriptor_t))+
    sizeof(CDC_HeaderFuncDescriptor_t)+
    sizeof(CDC_CallManagementFuncDescriptor_t)+
    sizeof(CDC_AbstrCtrlFuncDescriptor_t)+
    (sizeof(CDC_UnionFuncDescriptor_t)+1)+
    (3 * sizeof(UsbStandardEpDescriptor_t))),
    // bNumInterfaces
    2,
    // bConfigurationValue
    1,
    // iConfiguration
    0,
    // bmAttributes
    UsbConfigurationCommmonAttr,
    // bMaxPower
    UsbConfigPower_mA(100),

// Interface Descriptors AbstractControlModel
Example #2
0
    0x26,0xff,0x00,           // Logical Maximum (255)
    
    0x09,0x01,                // Usage 1
    0x75,0x08,                // Report Size 8-bits
    0x95,70,                  // Report Count 70-bytes
    0xB1,0x02,                // Feature (Data,Var,Abs)
    
  0xC0       // End collection
};

#pragma data_alignment=4
const Int8U UsbHidDescriptor[] =
{
  sizeof(UsbHidDescriptor_t),
  Hid,
  _2BL(0x0111),
  0,                                  // country code
  1,                                  // num of RepDiscriptors
  HidReport,                          // type of RepDiscriptors 
  _2BL(sizeof(HidReportDescriptor))   // len of RepDiscriptor
};

#pragma data_alignment=4
const UsbStandardInterfaceDescriptor_t UsbStandardInterfaceDescriptor[] =
{
  sizeof(UsbStandardInterfaceDescriptor_t),
  UsbDescriptorInterface,
  0,
  0,
  0,  // num end points
  UsbDeviceClassHumanInterface,