日B视频 亚洲,啪啪啪网站一区二区,91色情精品久久,日日噜狠狠色综合久,超碰人妻少妇97在线,999青青视频,亚洲一区二卡,让本一区二区视频,日韩网站推荐

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

觸覺智能RK3576開發(fā)板OpenHarmony開源鴻蒙系統(tǒng)USB控制傳輸功能示例

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

掃碼添加小助手

加入工程師交流群

本文介紹OpenHarmony開源鴻蒙系統(tǒng)USB控制傳輸功能實(shí)現(xiàn)及相關(guān)代碼示例,基于觸覺智能RK3576開發(fā)板Purple Pi OH2演示。

OpenHarmony的USB通信介紹

實(shí)現(xiàn)OpenHarmony開源鴻蒙設(shè)備與外部USB設(shè)備之間的連接管理、數(shù)據(jù)收發(fā)及設(shè)備信息交互,支持對(duì)USB 設(shè)備的枚舉、配置及數(shù)據(jù)傳輸控制,適用于各類USB接口進(jìn)行設(shè)備通信的場(chǎng)景。如AHD高清攝像頭、密碼鍵盤、檢測(cè)模塊等。

USB控制傳輸主要用于主機(jī)(Host)和設(shè)備(Device)進(jìn)行設(shè)備狀態(tài)的獲取和設(shè)置,進(jìn)行設(shè)備屬性狀態(tài)的的控制。根據(jù)設(shè)備支持的端點(diǎn)類型支持控制傳輸讀和寫。

示例環(huán)境:

1、僅支持開源鴻蒙OpenHarmony L2標(biāo)準(zhǔn)系統(tǒng)上運(yùn)行;

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

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

核心功能模塊實(shí)現(xiàn)邏輯

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

wKgZPGjblNuARTImAANnBoKUGwo596.png

各流程示例代碼,請(qǐng)繼續(xù)瀏覽下文。

設(shè)備枚舉模塊

負(fù)責(zé)掃描并識(shí)別當(dāng)前連接的 USB 設(shè)備,獲取設(shè)備的基本信息(如設(shè)備ID、廠商 ID、產(chǎn)品 ID、接口類型等),基于 OpenHarmony 的 USB 服務(wù)接口實(shí)現(xiàn)設(shè)備列表的動(dòng)態(tài)更新。代碼示例:

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

連接管理模塊

處理 USB 設(shè)備的連接與斷開邏輯,包括權(quán)限校驗(yàn)、設(shè)備掛載狀態(tài)監(jiān)測(cè)及連接狀態(tài)回調(diào)通知,確保設(shè)備連接的穩(wěn)定性。代碼示例:

// 選擇設(shè)備 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;

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


數(shù)據(jù)傳輸模塊

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

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

數(shù)據(jù)接收模塊

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

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

更多代碼示例,請(qǐng)關(guān)注深圳觸覺智能電子發(fā)燒友

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • usb
    usb
    +關(guān)注

    關(guān)注

    60

    文章

    8480

    瀏覽量

    286033
  • 外設(shè)
    +關(guān)注

    關(guān)注

    0

    文章

    44

    瀏覽量

    12117
  • 鴻蒙開發(fā)板
    +關(guān)注

    關(guān)注

    1

    文章

    31

    瀏覽量

    4869
  • OpenHarmony
    +關(guān)注

    關(guān)注

    33

    文章

    3977

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    基于RK3576開發(fā)板的PWN使用說明

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

    基于RK3576開發(fā)板的RTC使用說明

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

    基于RK3576開發(fā)板的人臉識(shí)別算法

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

    【米爾RK3576開發(fā)板評(píng)測(cè)】+項(xiàng)目名稱【米爾RK3576開發(fā)板評(píng)測(cè)】一個(gè)視頻和你共同認(rèn)識(shí)一下米爾RK3576開發(fā)板

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

    【作品合集】米爾RK3576開發(fā)板測(cè)評(píng)

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

    米爾RK3576開發(fā)板特惠活動(dòng)!

    近日,米爾電子發(fā)布基于瑞芯微RK3576核心開發(fā)板,RK3576作為國(guó)產(chǎn)熱門處理器,其高性能數(shù)據(jù)處理能力、領(lǐng)先的AI智能分析、強(qiáng)大的擴(kuò)展
    的頭像 發(fā)表于 11-12 01:00 ?2467次閱讀
    米爾<b class='flag-5'>RK3576</b><b class='flag-5'>開發(fā)板</b>特惠活動(dòng)!

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

    本文介紹開源鴻蒙OpenHarmony系統(tǒng)下,開啟/關(guān)閉SELinux權(quán)限的方法,觸覺智能Pur
    的頭像 發(fā)表于 11-18 19:03 ?1626次閱讀
    如何在<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'>開發(fā)板</b>演示

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

    本文介紹開源鴻蒙OpenHarmony系統(tǒng)下,修改產(chǎn)品屬性信息的方法,觸覺智能Purple Pi
    的頭像 發(fā)表于 11-27 09:31 ?1692次閱讀
    <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'>開發(fā)板</b>來演示

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

    開源鴻蒙OpenHarmony系統(tǒng)下,修改DPI密度值的方法,觸覺智能Purple Pi OH
    的頭像 發(fā)表于 12-24 11:46 ?1765次閱讀
    <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'>開發(fā)板</b>演示

    Linux系統(tǒng)更換開機(jī)logo方法教程,觸覺智能RK3562開發(fā)板演示

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

    觸覺智能RK3576開發(fā)板通過OpenHarmony5.0 XTS認(rèn)證

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

    迅為如何在RK3576上部署YOLOv5;基于RK3576構(gòu)建智能門禁系統(tǒng)

    迅為如何在RK3576開發(fā)板上部署YOLOv5;基于RK3576構(gòu)建智能門禁系統(tǒng)
    的頭像 發(fā)表于 11-25 14:06 ?1996次閱讀
    迅為如何在<b class='flag-5'>RK3576</b>上部署YOLOv5;基于<b class='flag-5'>RK3576</b>構(gòu)建<b class='flag-5'>智能</b>門禁<b class='flag-5'>系統(tǒng)</b>

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

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

    RK3576開發(fā)板OpenGL性能大起底,這數(shù)據(jù)我真的服了

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

    維護(hù)成本直降!RK3576核心/開發(fā)板OTA升級(jí)功能詳解,觸覺智能瑞芯微RK方案商

    觸覺智能旗下瑞芯微RK3576核心/開發(fā)板產(chǎn)品方案,已新增支持【OTA升級(jí)功能】。下文將為大家
    的頭像 發(fā)表于 04-21 10:30 ?237次閱讀
    維護(hù)成本直降!<b class='flag-5'>RK3576</b>核心<b class='flag-5'>板</b>/<b class='flag-5'>開發(fā)板</b>OTA升級(jí)<b class='flag-5'>功能</b>詳解,<b class='flag-5'>觸覺</b><b class='flag-5'>智能</b>瑞芯微<b class='flag-5'>RK</b>方案商
    江源县| 汝州市| 湄潭县| 织金县| 伊宁市| 桃源县| 曲水县| 岚皋县| 宝山区| 苗栗县| 花莲市| 南川市| 六枝特区| 镇江市| 灵石县| 长寿区| 温州市| 衡山县| 鄂温| 大英县| 林口县| 新竹市| 贵南县| 丰城市| 宁都县| 永川市| 观塘区| 新营市| 五寨县| 克拉玛依市| 昆山市| 西平县| 镇雄县| 察隅县| 芜湖市| 青河县| 甘南县| 察哈| 繁峙县| 武城县| 永兴县|