USB_Descriptor_Device_t PROGMEM DeviceDescriptor =\r
{\r
.Header = {.Size = sizeof(USB_Descriptor_Device_t), .Type = DTYPE_Device},\r
USB_Descriptor_Device_t PROGMEM DeviceDescriptor =\r
{\r
.Header = {.Size = sizeof(USB_Descriptor_Device_t), .Type = DTYPE_Device},\r
.ManufacturerStrIndex = 0x01,\r
.ProductStrIndex = 0x02,\r
.ManufacturerStrIndex = 0x01,\r
.ProductStrIndex = 0x02,\r
- .SerialNumStrIndex = NO_DESCRIPTOR,\r
- \r
- .NumberOfConfigurations = 1\r
+ .SerialNumStrIndex = USE_INTERNAL_SERIAL,\r
+ \r
+ .NumberOfConfigurations = FIXED_NUM_CONFIGURATIONS\r
};\r
\r
/** Configuration descriptor structure. This descriptor, located in FLASH memory, describes the usage\r
};\r
\r
/** Configuration descriptor structure. This descriptor, located in FLASH memory, describes the usage\r
.ConfigurationNumber = 1,\r
.ConfigurationStrIndex = NO_DESCRIPTOR,\r
.ConfigurationNumber = 1,\r
.ConfigurationStrIndex = NO_DESCRIPTOR,\r
.ConfigAttributes = (USB_CONFIG_ATTR_BUSPOWERED | USB_CONFIG_ATTR_SELFPOWERED),\r
\r
.MaxPowerConsumption = USB_CONFIG_POWER_MA(100)\r
.ConfigAttributes = (USB_CONFIG_ATTR_BUSPOWERED | USB_CONFIG_ATTR_SELFPOWERED),\r
\r
.MaxPowerConsumption = USB_CONFIG_POWER_MA(100)\r
.CDC1_ManagementEndpoint = \r
{\r
.Header = {.Size = sizeof(USB_Descriptor_Endpoint_t), .Type = DTYPE_Endpoint},\r
.CDC1_ManagementEndpoint = \r
{\r
.Header = {.Size = sizeof(USB_Descriptor_Endpoint_t), .Type = DTYPE_Endpoint},\r
.EndpointSize = CDC_NOTIFICATION_EPSIZE,\r
.PollingIntervalMS = 0xFF\r
},\r
.EndpointSize = CDC_NOTIFICATION_EPSIZE,\r
.PollingIntervalMS = 0xFF\r
},\r
.InterfaceStrIndex = NO_DESCRIPTOR\r
},\r
\r
.CDC1_DataOutEndpoint = \r
{\r
.Header = {.Size = sizeof(USB_Descriptor_Endpoint_t), .Type = DTYPE_Endpoint},\r
.InterfaceStrIndex = NO_DESCRIPTOR\r
},\r
\r
.CDC1_DataOutEndpoint = \r
{\r
.Header = {.Size = sizeof(USB_Descriptor_Endpoint_t), .Type = DTYPE_Endpoint},\r
.EndpointSize = CDC_TXRX_EPSIZE,\r
.PollingIntervalMS = 0x00\r
},\r
.EndpointSize = CDC_TXRX_EPSIZE,\r
.PollingIntervalMS = 0x00\r
},\r
.CDC1_DataInEndpoint = \r
{\r
.Header = {.Size = sizeof(USB_Descriptor_Endpoint_t), .Type = DTYPE_Endpoint},\r
.CDC1_DataInEndpoint = \r
{\r
.Header = {.Size = sizeof(USB_Descriptor_Endpoint_t), .Type = DTYPE_Endpoint},\r
.EndpointSize = CDC_TXRX_EPSIZE,\r
.PollingIntervalMS = 0x00\r
},\r
.EndpointSize = CDC_TXRX_EPSIZE,\r
.PollingIntervalMS = 0x00\r
},\r
.CDC2_ManagementEndpoint = \r
{\r
.Header = {.Size = sizeof(USB_Descriptor_Endpoint_t), .Type = DTYPE_Endpoint},\r
.CDC2_ManagementEndpoint = \r
{\r
.Header = {.Size = sizeof(USB_Descriptor_Endpoint_t), .Type = DTYPE_Endpoint},\r
.EndpointSize = CDC_NOTIFICATION_EPSIZE,\r
.PollingIntervalMS = 0xFF\r
},\r
.EndpointSize = CDC_NOTIFICATION_EPSIZE,\r
.PollingIntervalMS = 0xFF\r
},\r
.CDC2_DataOutEndpoint = \r
{\r
.Header = {.Size = sizeof(USB_Descriptor_Endpoint_t), .Type = DTYPE_Endpoint},\r
.CDC2_DataOutEndpoint = \r
{\r
.Header = {.Size = sizeof(USB_Descriptor_Endpoint_t), .Type = DTYPE_Endpoint},\r
.EndpointSize = CDC_TXRX_EPSIZE,\r
.PollingIntervalMS = 0x00\r
},\r
.EndpointSize = CDC_TXRX_EPSIZE,\r
.PollingIntervalMS = 0x00\r
},\r
.CDC2_DataInEndpoint = \r
{\r
.Header = {.Size = sizeof(USB_Descriptor_Endpoint_t), .Type = DTYPE_Endpoint},\r
.CDC2_DataInEndpoint = \r
{\r
.Header = {.Size = sizeof(USB_Descriptor_Endpoint_t), .Type = DTYPE_Endpoint},\r
.EndpointSize = CDC_TXRX_EPSIZE,\r
.PollingIntervalMS = 0x00\r
}\r
.EndpointSize = CDC_TXRX_EPSIZE,\r
.PollingIntervalMS = 0x00\r
}\r
USB_Descriptor_String_t PROGMEM LanguageString =\r
{\r
.Header = {.Size = USB_STRING_LEN(1), .Type = DTYPE_String},\r
USB_Descriptor_String_t PROGMEM LanguageString =\r
{\r
.Header = {.Size = USB_STRING_LEN(1), .Type = DTYPE_String},\r
USB_Descriptor_String_t PROGMEM ManufacturerString =\r
{\r
.Header = {.Size = USB_STRING_LEN(11), .Type = DTYPE_String},\r
USB_Descriptor_String_t PROGMEM ManufacturerString =\r
{\r
.Header = {.Size = USB_STRING_LEN(11), .Type = DTYPE_String},\r
USB_Descriptor_String_t PROGMEM ProductString =\r
{\r
.Header = {.Size = USB_STRING_LEN(13), .Type = DTYPE_String},\r
USB_Descriptor_String_t PROGMEM ProductString =\r
{\r
.Header = {.Size = USB_STRING_LEN(13), .Type = DTYPE_String},\r