1e41f4b71Sopenharmony_ci# usb_ddk_api.h
2e41f4b71Sopenharmony_ci
3e41f4b71Sopenharmony_ci
4e41f4b71Sopenharmony_ci## 概述
5e41f4b71Sopenharmony_ci
6e41f4b71Sopenharmony_ci声明用于主机侧访问设备的USB DDK接口。
7e41f4b71Sopenharmony_ci
8e41f4b71Sopenharmony_ci**起始版本:**
9e41f4b71Sopenharmony_ci
10e41f4b71Sopenharmony_ci10
11e41f4b71Sopenharmony_ci
12e41f4b71Sopenharmony_ci**相关模块:**
13e41f4b71Sopenharmony_ci
14e41f4b71Sopenharmony_ci[USB DDK](_usb_ddk.md)
15e41f4b71Sopenharmony_ci
16e41f4b71Sopenharmony_ci
17e41f4b71Sopenharmony_ci## 汇总
18e41f4b71Sopenharmony_ci
19e41f4b71Sopenharmony_ci
20e41f4b71Sopenharmony_ci### 函数
21e41f4b71Sopenharmony_ci
22e41f4b71Sopenharmony_ci| 名称 | 描述 |
23e41f4b71Sopenharmony_ci| -------- | -------- |
24e41f4b71Sopenharmony_ci| [OH_Usb_Init](_usb_ddk.md#oh_usb_init) (void) | 初始化DDK。 |
25e41f4b71Sopenharmony_ci| [OH_Usb_Release](_usb_ddk.md#oh_usb_release) (void) | 释放DDK。 |
26e41f4b71Sopenharmony_ci| [OH_Usb_GetDeviceDescriptor](_usb_ddk.md#oh_usb_getdevicedescriptor) (uint64_t deviceId, struct [UsbDeviceDescriptor](_usb_device_descriptor.md) \*desc) | 获取设备描述符。 |
27e41f4b71Sopenharmony_ci| [OH_Usb_GetConfigDescriptor](_usb_ddk.md#oh_usb_getconfigdescriptor) (uint64_t deviceId, uint8_t configIndex, struct [UsbDdkConfigDescriptor](_usb_ddk_config_descriptor.md) \*\*const config) | 获取配置描述符。请在描述符使用完后使用[OH_Usb_FreeConfigDescriptor()](_usb_ddk.md#oh_usb_freeconfigdescriptor)释放描述符,否则会造成内存泄露。 |
28e41f4b71Sopenharmony_ci| [OH_Usb_FreeConfigDescriptor](_usb_ddk.md#oh_usb_freeconfigdescriptor) (const struct [UsbDdkConfigDescriptor](_usb_ddk_config_descriptor.md) \*const config) | 释放配置描述符,请在描述符使用完后释放描述符,否则会造成内存泄露。 |
29e41f4b71Sopenharmony_ci| [OH_Usb_ClaimInterface](_usb_ddk.md#oh_usb_claiminterface) (uint64_t deviceId, uint8_t interfaceIndex, uint64_t \*[interfaceHandle](usb__ddk__types_8h.md#interfacehandle)) | 声明接口。 |
30e41f4b71Sopenharmony_ci| [OH_Usb_ReleaseInterface](_usb_ddk.md#oh_usb_releaseinterface) (uint64_t [interfaceHandle](usb__ddk__types_8h.md#interfacehandle)) | 释放接口。 |
31e41f4b71Sopenharmony_ci| [OH_Usb_SelectInterfaceSetting](_usb_ddk.md#oh_usb_selectinterfacesetting) (uint64_t [interfaceHandle](usb__ddk__types_8h.md#interfacehandle), uint8_t settingIndex) | 激活接口的备用设置。 |
32e41f4b71Sopenharmony_ci| [OH_Usb_GetCurrentInterfaceSetting](_usb_ddk.md#oh_usb_getcurrentinterfacesetting) (uint64_t [interfaceHandle](usb__ddk__types_8h.md#interfacehandle), uint8_t \*settingIndex) | 获取接口当前激活的备用设置。 |
33e41f4b71Sopenharmony_ci| [OH_Usb_SendControlReadRequest](_usb_ddk.md#oh_usb_sendcontrolreadrequest) (uint64_t [interfaceHandle](usb__ddk__types_8h.md#interfacehandle), const struct [UsbControlRequestSetup](_usb_control_request_setup.md) \*setup, uint32_t [timeout](usb__ddk__types_8h.md#timeout), uint8_t \*data, uint32_t \*dataLen) | 发送控制读请求,该接口为同步接口。 |
34e41f4b71Sopenharmony_ci| [OH_Usb_SendControlWriteRequest](_usb_ddk.md#oh_usb_sendcontrolwriterequest) (uint64_t [interfaceHandle](usb__ddk__types_8h.md#interfacehandle), const struct [UsbControlRequestSetup](_usb_control_request_setup.md) \*setup, uint32_t [timeout](usb__ddk__types_8h.md#timeout), const uint8_t \*data, uint32_t dataLen) | 发送控制写请求,该接口为同步接口。 |
35e41f4b71Sopenharmony_ci| [OH_Usb_SendPipeRequest](_usb_ddk.md#oh_usb_sendpiperequest) (const struct [UsbRequestPipe](_usb_request_pipe.md) \*pipe, [UsbDeviceMemMap](_usb_device_mem_map.md) \*devMmap) | 发送管道请求,该接口为同步接口。中断传输和批量传输都使用该接口发送请求。 |
36e41f4b71Sopenharmony_ci| [OH_Usb_SendPipeRequestWithAshmem](_usb_ddk.md#oh_usb_sendpiperequestwithashmem) (const struct [UsbRequestPipe](_usb_request_pipe.md) \*pipe, [DDK_Ashmem](_ddk_ashmem.md) \*ashmem) | 发送共享内存的管道请求,该接口为同步接口。中断传输和批量传输都使用该接口发送请求。 |
37e41f4b71Sopenharmony_ci| [OH_Usb_CreateDeviceMemMap](_usb_ddk.md#oh_usb_createdevicememmap) (uint64_t deviceId, size_t size, [UsbDeviceMemMap](_usb_device_mem_map.md) \*\*devMmap) | 创建缓冲区。请在缓冲区使用完后,调用[OH_Usb_DestroyDeviceMemMap()](_usb_ddk.md#oh_usb_destroydevicememmap)销毁缓冲区,否则会造成资源泄露。 |
38e41f4b71Sopenharmony_ci| [OH_Usb_DestroyDeviceMemMap](_usb_ddk.md#oh_usb_destroydevicememmap) ([UsbDeviceMemMap](_usb_device_mem_map.md) \*devMmap) | 销毁缓冲区。请在缓冲区使用完后及时销毁缓冲区,否则会造成资源泄露。 |
39