USB_Request_H.#1
上传用户:gxz1972
上传日期:2019-09-13
资源大小:323k
文件大小:4k
源码类别:

传真(Fax)编程

开发平台:

C/C++

  1. //-----------------------------------------------------------------------------
  2. // USB_Request.h
  3. //-----------------------------------------------------------------------------
  4. //-----------------------------------------------------------------------------
  5. // Copyright 2007 Vson Technology, Inc.
  6. // http://www.usbmcu.com
  7. //
  8. // Program Description:
  9. //
  10. //
  11. //
  12. //
  13. //
  14. // MCU:            C8051F347
  15. // Tool chain:     Keil C51 7.50 / Keil EVAL C51
  16. //                 Silicon Laboratories IDE version 2.6
  17. // Command Line:   
  18. // Project Name:   TR1000
  19. //
  20. //
  21. // Release 1.0
  22. //    -All changes by Brian Cai
  23. //    -24 JUL 2007
  24. //
  25. //
  26. #ifndef  _USB_REQUEST_H
  27. #define  _USB_REQUEST_H
  28. //-----------------------------------------------------------------------------
  29. // Global Constants
  30. //-----------------------------------------------------------------------------
  31. // Standard Request Codes
  32. #define  GET_STATUS              0x00
  33. #define  CLEAR_FEATURE           0x01
  34. #define  SET_FEATURE             0x03
  35. #define  SET_ADDRESS             0x05
  36. #define  GET_DESCRIPTOR          0x06
  37. #define  SET_DESCRIPTOR          0x07
  38. #define  GET_CONFIGURATION       0x08
  39. #define  SET_CONFIGURATION       0x09
  40. #define  GET_INTERFACE           0x0A
  41. #define  SET_INTERFACE           0x0B
  42. #define  SYNCH_FRAME             0x0C
  43. // bmRequestType Masks
  44. #define  CMD_MASK_DIR            0x80     // Request direction bit mask
  45. #define  CMD_MASK_TYPE           0x60     // Request type bit mask
  46. #define  CMD_MASK_RECIP          0x1F     // Request recipient bit mask
  47. #define  CMD_MASK_COMMON         0xF0     // Common request mask
  48. // bmRequestType Direction Field
  49. #define  CMD_DIR_IN              0x80     // IN Request
  50. #define  CMD_DIR_OUT             0x00     // OUT Request
  51. // bmRequestType Type Field
  52. #define  CMD_TYPE_STD            0x00     // Standard Request
  53. #define  CMD_TYPE_CLASS          0x20     // Class Request
  54. #define  CMD_TYPE_VEND           0x40     // Vendor Request
  55. // bmRequestType Recipient Field
  56. #define  CMD_RECIP_DEV           0x00     // Device Request
  57. #define  CMD_RECIP_IF            0x01     // Interface Request
  58. #define  CMD_RECIP_EP            0x02     // Endpoint Request
  59. #define  CMD_RECIP_OTHER         0x03     // Other Request
  60. // bmRequestType Common Commands
  61. #define  CMD_STD_DEV_OUT         0x00     // Standard Device Request OUT
  62. #define  CMD_STD_DEV_IN          0x80     // Standard Device Request IN
  63. #define  CMD_STD_IF_OUT          0x01     // Standard Interface Request OUT
  64. #define  CMD_STD_IF_IN           0x81     // Standard Interface Request IN
  65. // Standard Descriptor Types
  66. #define  DSC_DEVICE              0x01     // Device Descriptor
  67. #define  DSC_CONFIG              0x02     // Configuration Descriptor
  68. #define  DSC_STRING              0x03     // String Descriptor
  69. #define  DSC_INTERFACE           0x04     // Interface Descriptor
  70. #define  DSC_ENDPOINT            0x05     // Endpoint Descriptor
  71. #define  DSC_MASK_REMOTE         0x20     // Remote Wakeup Support Mask
  72.                                           // (bmAttributes Config Desc field)
  73. // Feature Selectors (used in set and clear feature commands)
  74. #define  DEVICE_REMOTE_WAKEUP    0x01     // Remote Wakeup selector
  75. #define  ENDPOINT_HALT           0x00     // Endpoint Halt selector
  76. //-----------------------------------------------------------------------------
  77. // Function Prototypes
  78. //-----------------------------------------------------------------------------
  79. void SetAddressRequest ();
  80. void SetFeatureRequest ();
  81. void ClearFeatureRequest ();
  82. void SetConfigurationRequest ();
  83. void SetInterfaceRequest();
  84. void GetStatusRequest ();
  85. void GetDescriptorRequest ();
  86. void GetConfigurationRequest ();
  87. void GetInterfaceRequest ();
  88. #endif                                 // F34X_USB_REQUEST_H 
  89. //-----------------------------------------------------------------------------
  90. // End Of File
  91. //-----------------------------------------------------------------------------