XP và Win7 có gì khác biệt khi xử lý thiết bị kết hợp USB?


3

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) 
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.