Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035
00036
00037
00043 #ifndef _DESCRIPTORS_H_
00044 #define _DESCRIPTORS_H_
00045
00046
00047 #include <LUFA/Drivers/USB/USB.h>
00048
00049 #include <avr/pgmspace.h>
00050
00051
00053 #define CDC_NOTIFICATION_EPNUM 2
00054
00056 #define CDC_TX_EPNUM 3
00057
00059 #define CDC_RX_EPNUM 4
00060
00062 #define CDC_NOTIFICATION_EPSIZE 8
00063
00065 #define CDC_TXRX_EPSIZE 16
00066
00067
00072 typedef struct
00073 {
00074 USB_Descriptor_Configuration_Header_t Config;
00075 USB_Descriptor_Interface_t CDC_CCI_Interface;
00076 USB_CDC_Descriptor_FunctionalHeader_t CDC_Functional_Header;
00077 USB_CDC_Descriptor_FunctionalACM_t CDC_Functional_ACM;
00078 USB_CDC_Descriptor_FunctionalUnion_t CDC_Functional_Union;
00079 USB_Descriptor_Endpoint_t CDC_NotificationEndpoint;
00080 USB_Descriptor_Interface_t CDC_DCI_Interface;
00081 USB_Descriptor_Endpoint_t CDC_DataOutEndpoint;
00082 USB_Descriptor_Endpoint_t CDC_DataInEndpoint;
00083 } USB_Descriptor_Configuration_t;
00084
00085
00086 uint16_t CALLBACK_USB_GetDescriptor(const uint16_t wValue,
00087 const uint8_t wIndex,
00088 const void** const DescriptorAddress)
00089 ATTR_WARN_UNUSED_RESULT ATTR_NON_NULL_PTR_ARG(3);
00090
00091 #endif
00092