SDAA062 September 2025 TMS320F28P559SJ-Q1
Each endpoint used by device contains a descriptor. The descriptor provides the endpoint address, the size of the endpoint, and the data transfer type used to access the endpoint.
In the TI USB composite device project, the endpoint descriptor structure is defined in usblib.h. The instance and values are initialized by BuildCompositeDescriptor in usbcomp.c called by USBDCompositeInit function. The key elements of an interface descriptor are shown in Table 2-4.
typedef struct
{
uint8_t bLength;
uint8_t bDescriptorType;
uint8_t bEndpointAddress;
uint8_t bmAttributes;
uint16_t wMaxPacketSize;
uint8_t bInterval;
}
PACKED tEndpointDescriptor;
| Key Elements | Description |
|---|---|
| bEndpointAddress | The address of the endpoint |
| wMaxPacketSize | Length of the endpoint |
| bInterval | How often in frames is this endpoint to be serviced by the host |