Tôi đã phát triển một thiết bị USB bằng LPC2148 và LPCUSB Ngăn xếp USB. Nó hoạt động tốt khi tôi đặt nó làm thiết bị HID (bàn phím), nhưng khi tôi đặt nó làm thiết bị tổng hợp, bộ lưu trữ (Thẻ SD Flash) và HID, nó chỉ hoạt động trên Windows XP. Tôi đã thử trong hai máy tính Windows 7 khác nhau và cả hai đều cho tôi thấy rằng thiết bị không thể khởi động (lỗi mã 10).
Tôi đã sử dụng hai phần mềm để theo dõi USB (USBTrace và USBlyzer) và không thể tìm thấy những gì đang xảy ra. Thiết bị được hiển thị như được cài đặt trên Win 7, ngoại trừ việc nó nói rằng nó không thể được khởi động trong các thuộc tính của thiết bị phần cứng. Vì vậy, có ai biết sự khác biệt giữa XP và Win7 khi xử lý thiết bị kết hợp USB không?
Đây là mô tả trong mã nguồn và bên dưới là đầu ra từ USBlyzer:
Connection Status Device connected Current Configuration 0 Speed Full (12 Mbit/s) Device Address 5 Number Of Open Pipes 0 * Device Descriptor Teleboard Offset Field Size Value Description 0 bLength 1 12h 1 bDescriptorType 1 01h Device 2 bcdUSB 2 0200h USB Spec 2.0 4 bDeviceClass 1 00h Class info in Ifc Descriptors 5 bDeviceSubClass 1 00h 6 bDeviceProtocol 1 00h 7 bMaxPacketSize0 1 40h 64 bytes 8 idVendor 2 FFFFh 10 idProduct 2 0003h 12 bcdDevice 2 0100h 1.00 14 iManufacturer 1 01h "Acme" 15 iProduct 1 02h "Testboard" 16 iSerialNumber 1 03h "ADR2012" 17 bNumConfigurations 1 01h * Configuration Descriptor 1 Configuration Descriptor 1 Offset Field Size Value Description 0 bLength 1 09h 1 bDescriptorType 1 02h Configuration 2 wTotalLength 2 0042h 4 bNumInterfaces 1 02h 5 bConfigurationValue 1 01h 6 iConfiguration 1 00h 7 bmAttributes 1 C0h Self Powered 4..0: Reserved ...00000 5: Remote Wakeup ..0..... No 6: Self Powered .1...... Yes 7: Reserved 1....... (bus-powered for 1.0) 8 bMaxPower 1 32h 100 mA * Interface Descriptor 0/0 Mass Storage, 2 Endpoints Offset Field Size Value Description 0 bLength 1 09h 1 bDescriptorType 1 04h Interface 2 bInterfaceNumber 1 00h 3 bAlternateSetting 1 00h 4 bNumEndpoints 1 02h 5 bInterfaceClass 1 08h Mass Storage 6 bInterfaceSubClass 1 06h SCSI Transparent Command Set 7 bInterfaceProtocol 1 50h Bulk-Only Transport 8 iInterface 1 00h * Endpoint Descriptor 85 5 In, Bulk, 64 bytes Offset Field Size Value Description 0 bLength 1 07h 1 bDescriptorType 1 05h Endpoint 2 bEndpointAddress 1 85h 5 In 3 bmAttributes 1 02h Bulk 1..0: Transfer Type ......10 Bulk 7..2: Reserved 000000.. 4 wMaxPacketSize 2 0040h 64 bytes 6 bInterval 1 00h * Endpoint Descriptor 02 2 Out, Bulk, 64 bytes Offset Field Size Value Description 0 bLength 1 07h 1 bDescriptorType 1 05h Endpoint 2 bEndpointAddress 1 02h 2 Out 3 bmAttributes 1 02h Bulk 1..0: Transfer Type ......10 Bulk 7..2: Reserved 000000.. 4 wMaxPacketSize 2 0040h 64 bytes 6 bInterval 1 00h * Interface Descriptor 1/0 HID, 1 Endpoint Offset Field Size Value Description 0 bLength 1 09h 1 bDescriptorType 1 04h Interface 2 bInterfaceNumber 1 01h 3 bAlternateSetting 1 00h 4 bNumEndpoints 1 01h 5 bInterfaceClass 1 03h HID 6 bInterfaceSubClass 1 00h 7 bInterfaceProtocol 1 01h 8 iInterface 1 00h * HID Descriptor Offset Field Size Value Description 0 bLength 1 09h 1 bDescriptorType 1 21h HID 2 bcdHID 2 0110h 1.10 4 bCountryCode 1 00h 5 bNumDescriptors 1 01h 6 bDescriptorType 1 22h Report 7 wDescriptorLength 2 0040h 64 bytes * Endpoint Descriptor 81 1 In, Interrupt, 32 ms Offset Field Size Value Description 0 bLength 1 07h 1 bDescriptorType 1 05h Endpoint 2 bEndpointAddress 1 81h 1 In 3 bmAttributes 1 03h Interrupt 1..0: Transfer Type ......11 Interrupt 7..2: Reserved 000000.. 4 wMaxPacketSize 2 0008h 8 bytes 6 bInterval 1 20h 32 ms * String Descriptor Offset Field Size Value Description 0 bLength 1 04h 1 bDescriptorType 1 03h String 2 wLANGID[0] 2 0409h English (United States)