伦伦影院久久影视,天天操天天干天天射,ririsao久久精品一区 ,一本大道香蕉大久在红桃,999久久久免费精品国产色夜,色悠悠久久综合88,亚洲国产精品久久无套麻豆,亚洲香蕉毛片久久网站,一本一道久久综合狠狠老

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

觸覺智能RK3576開發板OpenHarmony開源鴻蒙系統USB控制傳輸功能示例

觸覺智能 ? 2025-09-30 16:31 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

本文介紹OpenHarmony開源鴻蒙系統USB控制傳輸功能實現及相關代碼示例,基于觸覺智能RK3576開發板Purple Pi OH2演示。

OpenHarmony的USB通信介紹

實現OpenHarmony開源鴻蒙設備與外部USB設備之間的連接管理、數據收發及設備信息交互,支持對USB 設備的枚舉、配置及數據傳輸控制,適用于各類USB接口進行設備通信的場景。如AHD高清攝像頭、密碼鍵盤、檢測模塊等。

USB控制傳輸主要用于主機(Host)和設備(Device)進行設備狀態的獲取和設置,進行設備屬性狀態的的控制。根據設備支持的端點類型支持控制傳輸讀和寫。

示例環境:

1、僅支持開源鴻蒙OpenHarmony L2標準系統上運行;

2、本示例已適配 API version 12 版本 SDK(兼容 API version 8 及以上版本);

3、本示例為Stage模型,需要使用DevEco Studio 5.0.2 Release及以上版本才可編譯運行。;

核心功能模塊實現邏輯

USB通信流程整體可分為3塊組成:設備枚舉→設備連接→數據傳輸/接收,流程圖示:

wKgZPGjblNuARTImAANnBoKUGwo596.png

各流程示例代碼,請繼續瀏覽下文。

設備枚舉模塊

負責掃描并識別當前連接的 USB 設備,獲取設備的基本信息(如設備ID、廠商 ID、產品 ID、接口類型等),基于 OpenHarmony 的 USB 服務接口實現設備列表的動態更新。代碼示例:

// 獲取USB設備列表 private getUsbDevices(): void { try { this.deviceList = usbManager.getDevices(); if (this.deviceList.length === 0) { this.log = '未檢測到USB設備'; } else { this.log = `找到 ${this.deviceList.length} 個USB設備`; } this.selectedDeviceIndex = -1; this.interfaces = []; this.endpoints = []; this.selectedInterfaceIndex = -1; this.selectedEndpointIndex = -1; this.isDeviceSelected = false; this.isReceiving = false; } catch (error) { this.log = `獲取設備列表失敗: ${error}`; console.error("獲取USB設備列表異常: ", error); } }

連接管理模塊

處理 USB 設備的連接與斷開邏輯,包括權限校驗、設備掛載狀態監測及連接狀態回調通知,確保設備連接的穩定性。代碼示例:

// 選擇設備 private async selectDevice(index: number): Promise { this.selectedDeviceIndex = index; this.selectedInterfaceIndex = -1; this.selectedEndpointIndex = -1; this.interfaces = []; this.endpoints = []; this.isDeviceSelected = false; this.isReceiving = false; try { let deviceName: string = this.deviceList[index].name;

// 申請操作指定設備的權限 let hasRight: boolean = await usbManager.requestRight(deviceName); console.info("usb device request right result: " + hasRight); if (!hasRight) { this.log = 'USB設備權限獲取失敗'; return; }


數據傳輸模塊

實現與 USB 設備的雙向數據傳輸,支持批量傳輸。主機→USB 設備進行數據發送,適用于向 USB 設備發送配置命令、控制參數等場景,需選擇 OUT方向端點(端點地址 direction=0),流程包括:解析用戶輸入的16進制數據、建立設備通信管道、聲明目標接口、調用 usbManager.bulkTransfer() 發送數據。代碼示例

// 發送數據到設備 private async sendDataToDevice(): Promise { if (this.selectedDeviceIndex === -1 || this.selectedInterfaceIndex === -1 || this.selectedEndpointIndex === -1) { this.log = '請先選擇設備、接口和端點'; this.showSendDataDialog = false; return; } if (!this.sendDataContent.trim()) { this.log = '發送數據不能為空'; return; }

數據接收模塊

USB 設備→主機進行數據發送,適用于從 USB 設備獲取狀態數據、采集數據等場景,需選擇 IN 方向端點(端點地址 direction=0x80),流程包括:建立設備通信管道、聲明目標接口、循環調用 usbManager.bulkTransfer() 讀取數據、解析數據為十六進制格式并展示。代碼示例:

// 開始接收數據 private async startReceiveData(): Promise { if ( this.selectedDeviceIndex === -1 || this.selectedInterfaceIndex === -1 || this.selectedEndpointIndex === -1) { this.log = '請先選擇設備、接口和端點'; return ; }

更多代碼示例,請關注深圳觸覺智能電子發燒友

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • usb
    usb
    +關注

    關注

    60

    文章

    8449

    瀏覽量

    285076
  • 外設
    +關注

    關注

    0

    文章

    43

    瀏覽量

    12101
  • 鴻蒙開發板
    +關注

    關注

    1

    文章

    31

    瀏覽量

    4854
  • OpenHarmony
    +關注

    關注

    33

    文章

    3960

    瀏覽量

    21194
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    基于RK3576開發板的TF卡槽使用說明

    RK3576開發板使用TF卡槽
    的頭像 發表于 05-07 09:24 ?2085次閱讀
    基于<b class='flag-5'>RK3576</b><b class='flag-5'>開發板</b>的TF卡槽使用說明

    基于RK3576開發板的PWN使用說明

    RK3576開發板使用PWN教程及Demo
    的頭像 發表于 05-07 14:07 ?2366次閱讀
    基于<b class='flag-5'>RK3576</b><b class='flag-5'>開發板</b>的PWN使用說明

    基于RK3576開發板的RTC使用說明

    文章主要展示RK3576開發板的RTC信息和快速上手例程
    的頭像 發表于 05-07 15:04 ?2346次閱讀
    基于<b class='flag-5'>RK3576</b><b class='flag-5'>開發板</b>的RTC使用說明

    基于RK3576開發板的人臉識別算法

    RK3576開發板展示人臉識別算法例程和API說明
    的頭像 發表于 05-07 16:48 ?2800次閱讀
    基于<b class='flag-5'>RK3576</b><b class='flag-5'>開發板</b>的人臉識別算法

    【米爾RK3576開發板評測】+項目名稱【米爾RK3576開發板評測】一個視頻和你共同認識一下米爾RK3576開發板

    的6TOPS算力開發板之一,已支持最新安卓14系統。 總體來說米爾RK3576開發板是值得大家花時間和精力去研究的一塊非常不錯的開發板
    發表于 12-18 20:50

    【作品合集】米爾RK3576開發板測評

    米爾RK3576開發板測評作品合集 產品介紹: RK3576 是瑞芯微一款面向AI市場推出的高性能處理器,它配備了四核Cortex-A72和四 核Cortex-A53 的 CPU,集成了6TOPS
    發表于 09-11 10:19

    米爾RK3576開發板特惠活動!

    近日,米爾電子發布基于瑞芯微RK3576核心開發板,RK3576作為國產熱門處理器,其高性能數據處理能力、領先的AI智能分析、強大的擴展
    的頭像 發表于 11-12 01:00 ?2278次閱讀
    米爾<b class='flag-5'>RK3576</b><b class='flag-5'>開發板</b>特惠活動!

    如何在開源鴻蒙OpenHarmony開啟SELinux模式?RK3566鴻蒙開發板演示

    本文介紹開源鴻蒙OpenHarmony系統下,開啟/關閉SELinux權限的方法,觸覺智能Pur
    的頭像 發表于 11-18 19:03 ?1491次閱讀
    如何在<b class='flag-5'>開源</b><b class='flag-5'>鴻蒙</b><b class='flag-5'>OpenHarmony</b>開啟SELinux模式?<b class='flag-5'>RK</b>3566<b class='flag-5'>鴻蒙</b><b class='flag-5'>開發板</b>演示

    OpenHarmony屬性信息怎么修改?觸覺智能RK3566鴻蒙開發板來演示

    本文介紹開源鴻蒙OpenHarmony系統下,修改產品屬性信息的方法,觸覺智能Purple Pi
    的頭像 發表于 11-27 09:31 ?1509次閱讀
    <b class='flag-5'>OpenHarmony</b>屬性信息怎么修改?<b class='flag-5'>觸覺</b><b class='flag-5'>智能</b><b class='flag-5'>RK</b>3566<b class='flag-5'>鴻蒙</b><b class='flag-5'>開發板</b>來演示

    OpenHarmony怎么修改DPI密度值?觸覺智能RK3566鴻蒙開發板演示

    開源鴻蒙OpenHarmony系統下,修改DPI密度值的方法,觸覺智能Purple Pi OH
    的頭像 發表于 12-24 11:46 ?1576次閱讀
    <b class='flag-5'>OpenHarmony</b>怎么修改DPI密度值?<b class='flag-5'>觸覺</b><b class='flag-5'>智能</b><b class='flag-5'>RK</b>3566<b class='flag-5'>鴻蒙</b><b class='flag-5'>開發板</b>演示

    Linux系統更換開機logo方法教程,觸覺智能RK3562開發板演示

    本文介紹Linux系統更換開機logo方法教程,通用RK3566、RK3568、RK3588、RK3576
    的頭像 發表于 01-06 10:53 ?1577次閱讀
    Linux<b class='flag-5'>系統</b>更換開機logo方法教程,<b class='flag-5'>觸覺</b><b class='flag-5'>智能</b><b class='flag-5'>RK</b>3562<b class='flag-5'>開發板</b>演示

    觸覺智能RK3576開發板通過OpenHarmony5.0 XTS認證

    觸覺智能作為開源鴻蒙南向硬件廠家,旗下RK3576開發板及其核心
    的頭像 發表于 10-21 12:48 ?1023次閱讀
    <b class='flag-5'>觸覺</b><b class='flag-5'>智能</b><b class='flag-5'>RK3576</b><b class='flag-5'>開發板</b>通過<b class='flag-5'>OpenHarmony</b>5.0 XTS認證

    迅為如何在RK3576上部署YOLOv5;基于RK3576構建智能門禁系統

    迅為如何在RK3576開發板上部署YOLOv5;基于RK3576構建智能門禁系統
    的頭像 發表于 11-25 14:06 ?1854次閱讀
    迅為如何在<b class='flag-5'>RK3576</b>上部署YOLOv5;基于<b class='flag-5'>RK3576</b>構建<b class='flag-5'>智能</b>門禁<b class='flag-5'>系統</b>

    RK3576基于UVC協議USB攝像頭配置指南,手把手教你搞定

    瑞芯微RK3576芯片平臺基于UVC協議,配置USB攝像頭實現即插即用的適配采集功能,基于觸覺智能RK3
    的頭像 發表于 01-16 17:11 ?918次閱讀
    <b class='flag-5'>RK3576</b>基于UVC協議<b class='flag-5'>USB</b>攝像頭配置指南,手把手教你搞定

    RK3576開發板OpenGL性能大起底,這數據我真的服了

    瑞芯微RK3576芯片作為一款中高端的八核Arm架構嵌入式處理器,集成Mali-G52MC3的GPU。本次OpenGL性能測試,基于觸覺智能RK3576
    的頭像 發表于 01-16 17:20 ?1650次閱讀
    <b class='flag-5'>RK3576</b><b class='flag-5'>開發板</b>OpenGL性能大起底,這數據我真的服了