Hallo,
Ich programmiere eine USB device funktionalität der LPC3250. Mein Device
muss CDC (Communication Device Class) beherschen. Als Treiber hab ich
Libusb und mein Gerät wurde erkannt. Das Problem ist dass der Host keine
SET_CONFIGURATION Anfrage schickt. daraus verstehe ich dass das Gerät
nicht richtig konfiguriert ist.
kann mir jemanden helfen und sagen was ich da falsch mache?
so sehen meine Deskriptoren aus:
// Device Descriptor
const unsigned char USB_DeviceDesc[] = {
USB_DEVICE_DESC_SIZE ,
USB_DEVICE_DESCRIPTOR_TYPE,
WBVAL(0x0200),
0x02,
0x00,
0x00,
MAX_PACKET_SIZE,
WBVAL(0x03EB),
WBVAL(0x204B),
WBVAL(0x0120),
0x01,
0x02,
0x00,
0x01,
};
/******Configuration descriptor*******/
const unsigned char USB_ConfigDesc[] = {
USB_CONFIGUARTION_DESC_SIZE,
USB_CONFIGURATION_DESCRIPTOR_TYPE,
WBVAL(0x0020),
0x02,
0x01,
0x03,
0xA0,
0x32,
//USB communication Interface Descriptor
USB_INTERFACE_DESC_SIZE,
USB_INTERFACE_DESCRIPTOR_TYPE,
0x01,
0x00,
0x01,
0x02,
0x02,
0x01,
0x04,
//Sample Communications Class Specific Interface Descriptor
0x05,
0x24,
0x00,
WBVAL(0x0110),
0x04,
0x24,
0x02,
0x0F,
0x05,
0x24,
0x06,
0x00,
0x01,
0x05,
0x24,
0x01,
0x03,
0x01,
//USB Standard Endpoint Descriptor
USB_ENDPOINT_DESC_SIZE,
USB_ENDPOINT_DESCRIPTOR_TYPE,
0x83,
0x03,
WBVAL(0x0040),
0x0A,
//USB Data Interface Descriptor
USB_INTERFACE_DESC_SIZE,
USB_INTERFACE_DESCRIPTOR_TYPE,
0x01,
0x00,
0x02,
0x0A,
0x00,
0x00,
0x05,
//USB Endpoint Descriptor
USB_ENDPOINT_DESC_SIZE,
USB_ENDPOINT_DESCRIPTOR_TYPE,
0x04,
0x02,
WBVAL(0x0040),
0x00,
//USB Endpoint Descriptor
USB_ENDPOINT_DESC_SIZE,
USB_ENDPOINT_DESCRIPTOR_TYPE,
0x85,
0x02,
WBVAL(0x0040),
0x00,
};
ich bedanke mich,
Amal