harmony 鸿蒙USB服务子系统使用指导

2022-08-09 浏览 (1165)

USB服务子系统使用指导

下面使用步骤以bulktransfer为例。

使用步骤

  1. 获取usb service实例

    static OHOS::USB::UsbSrvClient &g_usbClient = OHOS::USB::UsbSrvClient::GetInstance();
    
  2. 获取usb设备列表

    std::vector<OHOS::USB::UsbDevice> deviceList;
    int32_t ret = g_usbClient.GetDevices(deviceList);
    
  3. 申请设备权限

    int32_t ret = g_usbClient.RequestRight(device.GetName());
    
  4. 打开设备

    USBDevicePipe pip;
    int32_t et = g_usbClient.OpenDevice(device, pip);
    
  5. 配置设备接口

    ret = g_usbClient.ClaimInterface(pip, interface, true); //interface为deviceList中device的interface。
    
  6. 数据传输

    srvClient.BulkTransfer(pipe, endpoint, vdata, timeout);
    

    pipe为打开设备后的数据传输通道,endpoint为device中数据传输的端点,vdata是需要传输或读取的二进制数据块,timeout为传输超时时长。

  7. 关闭设备

    ret = g_usbClient.Close(pip);
    

你可能感兴趣的鸿蒙文章

harmony 鸿蒙subsystems

harmony 鸿蒙AI框架开发指导

harmony 鸿蒙应用特权配置指南

harmony 鸿蒙开发实例

harmony 鸿蒙搭建环境

harmony 鸿蒙开发指导

harmony 鸿蒙概述

harmony 鸿蒙ArkCompiler开发指导

harmony 鸿蒙appspawn应用孵化组件

harmony 鸿蒙bootstrap服务启动组件

  • 所属分类: 后端技术
  • 本文标签: 鸿蒙 软件
  • 版权声明: 本文链接 https://seaxiang.com/blog/046ea75a810c434a96fda90080e5c1c3