1# USB 2 3 4## 概述 5 6定义(USB)功能的标准API接口。 7 8该模块用于获取描述符、接口对象、请求对象和提交请求的自定义数据类型和函数。 9 10**起始版本:** 3.0 11 12 13## 汇总 14 15 16### 文件 17 18| 名称 | 描述 | 19| -------- | -------- | 20| [usb_info.h](usb__info_8h.md) | USB驱动订阅模块使用的数据类型。 | 21| [usbd_client.h](usbd__client_8h.md) | 声明标准USB驱动接口函数。 | 22| [usbd_subscriber.h](usbd__subscriber_8h.md) | USB驱动订阅模块。 | 23| [usbd_type.h](usbd__type_8h.md) | USB驱动模块接口定义中使用的自定义数据类型。 | 24 25 26### 类 27 28| 名称 | 描述 | 29| -------- | -------- | 30| struct [USBDeviceInfo](_o_h_o_s_1_1_u_s_b_1_1_u_s_b_device_info.md) | USB设备信息。 | 31| class [UsbInfo](_o_h_o_s_1_1_u_s_b_1_1_usb_info.md) | USB设备信息类。 | 32| class [UsbdClient](_o_h_o_s_1_1_u_s_b_1_1_usbd_client.md) | USB驱动客户端类。 | 33| class [UsbdSubscriber](_o_h_o_s_1_1_u_s_b_1_1_usbd_subscriber.md) | USB驱动订阅类。 | 34| struct [UsbDev](_o_h_o_s_1_1_u_s_b_1_1_usb_dev.md) | USB设备。 | 35| struct [UsbPipe](_o_h_o_s_1_1_u_s_b_1_1_usb_pipe.md) | 管道信息。 | 36| struct [UsbCtrlTransfer](_o_h_o_s_1_1_u_s_b_1_1_usb_ctrl_transfer.md) | USB控制传输。 | 37 38 39### 宏定义 40 41| 名称 | 描述 | 42| -------- | -------- | 43| [USB_MAX_INTERFACES](#usb_max_interfaces) 32 | USB设备最大接口数量 | 44 45 46### 类型定义 47 48| 名称 | 描述 | 49| -------- | -------- | 50| typedef void(\* [UsbdRequestCallback](#usbdrequestcallback)) (uint8_t \*requestArg) | 请求回调函数 | 51 52 53### 枚举 54 55| 名称 | 描述 | 56| -------- | -------- | 57| [UsbdBulkCbCmd](#usbdbulkcbcmd) { CMD_USBD_BULK_CALLBACK_READ , CMD_USBD_BULK_CALLBACK_WRITE } | 批量回调命令字。 | 58| [UsbdDeviceAction](#usbddeviceaction) { ACT_DEVUP = 0 , ACT_DEVDOWN , ACT_UPDEVICE , ACT_DOWNDEVICE } | 主机端和设备端插拔事件。 | 59 60 61### 变量 62 63| 名称 | 描述 | 64| -------- | -------- | 65| static const int32_t [USB_ENDPOINT_DIR_MASK](#usb_endpoint_dir_mask) = 0x80 | 从地址中提取USB Endpoint方向的位掩码 | 66| static const int32_t [USB_ENDPOINT_DIR_IN](#usb_endpoint_dir_in) = 0x80 | USB Endpoint从设备到主机的数据方向 | 67| static const int32_t [USB_ENDPOINT_DIR_OUT](#usb_endpoint_dir_out) = 0 | USB Endpoint从主机到设备的数据方向 | 68 69 70## 宏定义说明 71 72 73### USB_MAX_INTERFACES 74 75``` 76#define USB_MAX_INTERFACES 32 77``` 78 79**描述** 80 81USB设备最大接口数量 82 83 84## 类型定义说明 85 86 87### UsbdRequestCallback 88 89``` 90typedef void(* UsbdRequestCallback) (uint8_t *requestArg) 91``` 92 93**描述** 94 95请求回调函数 96 97 98## 枚举类型说明 99 100 101### UsbdBulkCbCmd 102 103``` 104enum UsbdBulkCbCmd 105``` 106 107**描述** 108 109批量回调命令字。 110 111**起始版本:** 3.0 112 113| 枚举值 | 描述 | 114| -------- | -------- | 115| CMD_USBD_BULK_CALLBACK_READ | 批量回调读取 | 116| CMD_USBD_BULK_CALLBACK_WRITE | 批量回调写入 | 117 118 119### UsbdDeviceAction 120 121``` 122enum UsbdDeviceAction 123``` 124 125**描述** 126 127主机端和设备端插拔事件。 128 129**起始版本:** 3.0 130 131| 枚举值 | 描述 | 132| -------- | -------- | 133| ACT_DEVUP | 主机端接入设备 | 134| ACT_DEVDOWN | 主机端拔出设备 | 135| ACT_UPDEVICE | 设备连接 | 136| ACT_DOWNDEVICE | 设备断开 | 137 138 139## 变量说明 140 141 142### USB_ENDPOINT_DIR_IN 143 144``` 145const int32_t USB_ENDPOINT_DIR_IN = 0x80 146``` 147 148**描述** 149 150USB Endpoint从设备到主机的数据方向 151 152 153### USB_ENDPOINT_DIR_MASK 154 155``` 156const int32_t USB_ENDPOINT_DIR_MASK = 0x80 157``` 158 159**描述** 160 161从地址中提取USB Endpoint方向的位掩码 162 163 164### USB_ENDPOINT_DIR_OUT 165 166``` 167const int32_t USB_ENDPOINT_DIR_OUT = 0 168``` 169 170**描述** 171 172USB Endpoint从主机到设备的数据方向 173