Go to the documentation of this file.
33 #include "usbd_ctlreq.h"
40 #define USBD_VENDOR_ID 0x0483
42 #define USBD_PRODUCT_ID 0x0123
44 #define USBD_DEVICE_REV 0x0100
47 #define USBD_MANUFACTURER_STR "STMicroelectronics"
48 #define USBD_PRODUCT_STR "STM32 RNDIS Demo"
49 #define USBD_SERIAL_NUMBER_STR "00000000123C"
50 #define USBD_CONFIGURATION_STR "RNDIS Configuration"
51 #define USBD_INTERFACE_STR "RNDIS Interface"
54 static uint8_t usbdStrDescriptor[USBD_MAX_STR_DESC_SIZ];
104 USB_DESC_TYPE_CONFIGURATION,
115 USB_DESC_TYPE_INTERFACE,
165 USB_DESC_TYPE_ENDPOINT,
174 USB_DESC_TYPE_INTERFACE,
186 USB_DESC_TYPE_ENDPOINT,
195 USB_DESC_TYPE_ENDPOINT,
236 desc->bDescriptorType = USB_DESC_TYPE_STRING;
237 desc->bString[0] = 0x0409;
242 return (uint8_t *) desc;
258 return usbdStrDescriptor;
274 return usbdStrDescriptor;
290 return usbdStrDescriptor;
306 return usbdStrDescriptor;
322 return usbdStrDescriptor;
const UsbDeviceDescriptor usbdDeviceDescriptor
USB device descriptor.
#define USB_EP3_MAX_PACKET_SIZE
uint8_t * usbdGetDeviceDescriptor(USBD_SpeedTypeDef speed, uint16_t *length)
Retrieve device descriptor.
#define CDC_INTERFACE_CLASS_COMMUNICATION
#define CDC_INTERFACE_SUBCLASS_ACM
#define USB_EP1_MAX_PACKET_SIZE
#define USBD_INTERFACE_STR
#define USB_EP0_MAX_PACKET_SIZE
#define CDC_HEADER_DESC_SUBTYPE
#define USB_DEVICE_SUBCLASS_CDC
#define CDC_ACM_DESC_SUBTYPE
#define CDC_INTERFACE_PROTOCOL_VENDOR_SPECIFIC
uint8_t * usbdGetManufacturerStrDescriptor(USBD_SpeedTypeDef speed, uint16_t *length)
Retrieve the manufacturer string descriptor.
#define CDC_INTERFACE_SUBCLASS_RNDIS
#define CDC_UNION_DESC_SUBTYPE
uint8_t * usbdGetProductStrDescriptor(USBD_SpeedTypeDef speed, uint16_t *length)
Retrieve the product string descriptor.
#define USBD_SERIAL_NUMBER_STR
uint8_t * usbdGetLangIdStrDescriptor(USBD_SpeedTypeDef speed, uint16_t *length)
Retrieve the languages supported by the device.
uint8_t * usbdGetInterfaceStrDescriptor(USBD_SpeedTypeDef speed, uint16_t *length)
Retrieve the interface string descriptor.
#define CDC_INTERFACE_CLASS_DATA
#define CDC_INTERFACE_SUBCLASS_DATA
#define USB_ENDPOINT_TYPE_INTERRUPT
#define CDC_INTERFACE_PROTOCOL_DATA
#define USB_DEVICE_CLASS_CDC
#define USB_DEVICE_PROTOCOL_CDC
#define USB_EP2_MAX_PACKET_SIZE
uint8_t * usbdGetSerialStrDescriptor(USBD_SpeedTypeDef speed, uint16_t *length)
Retrieve the serial number string descriptor.
#define CDC_INTERFACE_PROTOCOL_RNDIS
#define CDC_INTERFACE_CLASS_RNDIS
#define USB_ENDPOINT_TYPE_BULK
#define USBD_CONFIGURATION_STR
USBD_DescriptorsTypeDef usbdRndisDescriptors
USB descriptors.
CdcCallManagementDescriptor
#define USBD_MANUFACTURER_STR
#define USB_NO_REMOTE_WAKEUP
#define CDC_CALL_MANAGEMENT_DESC_SUBTYPE
uint8_t * usbdGetConfigStrDescriptor(USBD_SpeedTypeDef speed, uint16_t *length)
Retrieve the configuration string descriptor.
const UsbConfigDescriptors usbdConfigDescriptors
USB configuration descriptors.