×

用uPSD进行低速USB设计

消耗积分:5 | 格式:rar | 大小:736 | 2009-06-26

郝埃连

分享资料个

TABLE OF CONTENTS
Table 1. Current Types of USB  . . . 1
Table 2. μPSD USB Family (February 2004). 1
IAP USB Demonstration Program  . . . 5
Table 3. USB Demonstration Program Revision History  5
Hardware Design   . . . 6
Figure 1. USB Input/Output Design inside the μPSD32xxA  6
Figure 2. Typical USB Connection Circuit for 5V (μPSD32xx) Systems. . . . 6
Possible Frequencies for μPSD with Low-speed USB 7
Table 4. μPSD32xx USB SFR Register Map. 7
Software Design 8
Table 5. List of Header Files  . . . . . 8
Table 6. List of C Source Files . . . . 8
USB Communication Flow   8
Figure 3. USB Host/Device Detailed Communication Flow View  9
Endpoints Supported by μPSD32xx  9
Table 7. Supported Endpoints  . . . 10
Data Structures and Data-flow  . . 10
Table 8. USB Demonstration Program Data Structures  . 10
USB Bus Level Interface   . 10
Bus Enumeration   . 11
Endpoint0  . 12
Endpoint1 (LCD display mirror)  . 12
Table 9. Endpoint Packet Byte Function Assignment  . 12
USB Setup Packet Handling – Standard Device Requests  . 12
USB Requests in the USB Demonstration Program . . . . 13
Table 10. Descriptor Type (the high byte of wValue in the Get_Descriptor request)  13
Table 11. Valid Types of Class Descriptor. . . 13
Get_Descriptor Request   . 13
Table 12. Components of a Get_Descriptor Request  . . 14
Get_Report Request   . . . . 14
Table 13. Components of a Get_Report Request  . . . . . 14
SET_Report Request   . . . . 14
Table 14. Components of a SET_Report Request  . . . . 15
USB Descriptors    . 15
Figure 4. USB and HID Descriptor Structure 15
GET_Descriptor Request Servicing Routine   16
Descriptors 16
Example of USB Descriptors for HID Class Devices  17
Table 15. Device Descriptor  . . . . . 18
Table 16. Configuration Descriptor  19
Table 17. Interface Descriptor  . . . . 19
Table 18. HID Descriptor   . . 20
Table 19. Endpoint Descriptor  . . . . 20
Table 20. Report Descriptor  21
High Level Interface   . . . . 22
HID Level Interface   . . . . . 22
SUSPEND Mode and RESUME Mode Handling Mechanism  23
USB Disconnect on Demand Feature . . . . 24
Important Rules when Starting to Design USB Applications with μPSD32xxA . 25
Differences between USB 1.1 Hosts and Some USB 2.0 High-speed Hosts  25
Figure 5. Traffic on USB (μPSD32xxA connected to USB1.1 Host, or to an Intel 82801DBx Type USB
2.0 Host) 25
Figure 6. Traffic on USB (μPSD32xxA connected to an NEC 720100A Type USB 2.0 Host) . . . . 26
USB Interrupt must have the Highest Priority Interrupt Level  . 26
Table 21. Description of the IP Bits  27
Table 22. Description of the IPA Bits  . 27
Length of USB Interrupt Service Routine . 28
Table 23. Oscillator Frequencies Suitable for Applications with USB . . . . . 28
Figure 7. USB Demonstration Program USB Drivers Immunity versus Length of USB ISR (with respect
to Oscillator Frequency)28
Difference between Relative and Absolute Register Usage  28
Table 24. Suggested Assignment of Register Banks  . . 30
USB may Generate Spurious Interrupts when the Device is Plugged in  . . . 30
μPSD USB IP sometimes Triggers an Interrupt but no Bit of UISTA is Set  . 30
μPSD USB IP Generates Interrupts with an Undocumented Flag. . . . . 30
USB State Machine does not Clear the STALL0 Bit when a SETUP Packet is Received . . . . 30
The Number of Data Bytes Received in a Data Packet can be Greater than Eight  . . . 31
C Source and Assembler Output can have Different Functionality . . . 31
Question: So How Must I Write My Drivers?  . 32
Question: Must I Enable and Service End-of-Packet Interrupt Requests?  . 32
Question: Is the Length of USB ISR Limited?  . . . . . 32
Limits Set by the Specification:  . . . 32
Table 25. Examples of Limits set by USB Standards  . . 32
Known limits:   . . . 33
Conclusion:  33
Question: My Device with μPSD is not Properly Detected by Windows  . . . 33
Figure 8. USB ISR Response Time  . 33
Figure 9. USB ISR Response Time - Detail . 34
Problems with Windows98 and Multiple-function USB Devices 34
Symptoms  . 34
Cause  . . . . 34
Conclusion . 34
Status  . . . . 34
More Information   35
Conclusion  . . . 36
References  . . . 36
APPENDIX A.USBISR    37
APPENDIX B.OnTransmitEP1   39
APPENDIX C.OnSetupPacket   40
APPENDIX D.OnGetDescriptor  . . . . . 41
APPENDIX E.ReportDesc   . . . 42
APPENDIX F.DeviceDesc   . . . 43
APPENDIX G.Language, Manufacture and Product Strings  . . . 45
APPENDIX H.High Level Interface  . . 47
APPENDIX I. OnReportReceived  . . . 48
APPENDIX J.OnUSBSuspend  49
APPENDIX K.ReConnectUSB   50
APPENDIX L.Glossary    51
Table 26. Terms and Abbreviations 51
Revision History  . . . 53

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

评论(0)
发评论

下载排行榜

全部0条评论

快来发表一下你的评论吧 !