5 * th9x - http://code.google.com/p/th9x
6 * er9x - http://code.google.com/p/er9x
7 * gruvin9x - http://code.google.com/p/gruvin9x
9 * License GPLv2: http://www.gnu.org/licenses/gpl-2.0.html
11 * This program is free software; you can redistribute it and/or modify
12 * it under the terms of the GNU General Public License version 2 as
13 * published by the Free Software Foundation.
15 * This program is distributed in the hope that it will be useful,
16 * but WITHOUT ANY WARRANTY; without even the implied warranty of
17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18 * GNU General Public License for more details.
21 /* Define to prevent recursive inclusion -------------------------------------*/
26 /* Includes ------------------------------------------------------------------*/
30 /** @addtogroup STM32_USB_OTG_DEVICE_LIBRARY
34 /** @defgroup USB_DESC
35 * @brief general defines for the usb device library file
39 /** @defgroup USB_DESC_Exported_Defines
42 #define USB_DEVICE_DESCRIPTOR_TYPE 0x01
43 #define USB_CONFIGURATION_DESCRIPTOR_TYPE 0x02
44 #define USB_STRING_DESCRIPTOR_TYPE 0x03
45 #define USB_INTERFACE_DESCRIPTOR_TYPE 0x04
46 #define USB_ENDPOINT_DESCRIPTOR_TYPE 0x05
47 #define USB_SIZ_DEVICE_DESC 18
48 #define USB_SIZ_STRING_LANGID 4
55 /** @defgroup USBD_DESC_Exported_TypesDefinitions
64 /** @defgroup USBD_DESC_Exported_Macros
71 /** @defgroup USBD_DESC_Exported_Variables
74 extern const uint8_t USBD_DeviceDesc
[USB_SIZ_DEVICE_DESC
];
75 extern uint8_t USBD_StrDesc
[USB_MAX_STR_DESC_SIZ
];
76 extern const uint8_t USBD_OtherSpeedCfgDesc
[USB_LEN_CFG_DESC
];
77 extern const uint8_t USBD_DeviceQualifierDesc
[USB_LEN_DEV_QUALIFIER_DESC
];
78 extern const uint8_t USBD_LangIDDesc
[USB_SIZ_STRING_LANGID
];
79 extern const USBD_DEVICE USR_desc
;
84 /** @defgroup USBD_DESC_Exported_FunctionsPrototype
89 uint8_t * USBD_USR_DeviceDescriptor( uint8_t speed
, uint16_t *length
);
90 uint8_t * USBD_USR_LangIDStrDescriptor( uint8_t speed
, uint16_t *length
);
91 uint8_t * USBD_USR_ManufacturerStrDescriptor ( uint8_t speed
, uint16_t *length
);
92 uint8_t * USBD_USR_ProductStrDescriptor ( uint8_t speed
, uint16_t *length
);
93 uint8_t * USBD_USR_SerialStrDescriptor( uint8_t speed
, uint16_t *length
);
94 uint8_t * USBD_USR_ConfigStrDescriptor( uint8_t speed
, uint16_t *length
);
95 uint8_t * USBD_USR_InterfaceStrDescriptor( uint8_t speed
, uint16_t *length
);
97 #ifdef USB_SUPPORT_USER_STRING_DESC
98 uint8_t * USBD_USR_USRStringDesc (uint8_t speed
, uint8_t idx
, uint16_t *length
);
99 #endif /* USB_SUPPORT_USER_STRING_DESC */
105 #endif // _USBD_DESC_H_
114 /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/