0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

触觉智能RK3576开发板OpenHarmony开源鸿蒙蓝牙BLE主机实现方案

触觉智能 2026-01-27 08:12 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

本文介绍OpenHarmony开源鸿蒙系统的BLE(低功耗蓝牙)主机实现示例,基于触觉智能RK3576开发板Purple Pi OH2演示。

为了回馈电子发烧友对触觉智能的支持,现购买触觉智能RK3576开发板享秒杀活动,数量有限先到先得!

OpenHarmony的BLE系统API

通过OpenHarmony的ble与bluetoothManager系统API,实现蓝牙状态管理、设备扫描、连接控制、数据收发等核心功能。方案采用ArkTS语言开发,通过响应式状态管理实现UI与业务逻辑的联动,适用于需要与BLE从设备进行通信物联网场景。

本示例使用@ohos.bluetooth.ble(蓝牙ble模块), 提供了对蓝牙操作和管理的方法。本模块首批接口API version 10开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。接口中涉及的UUID服务,可以通过工具函数util.generateRandomUUID生成。

wKgZO2l4AuGAd_4BAAFEFvRSsXs448.png
  • 相关权限

ohos.permission.ACCESS_BLUETOOTH

ohos.permission.MANAGE_BLUETOOTH

ohos.permission.USE_BLUETOOTH

ohos.permission.DISCOVER_BLUETOOTH

ohos.permission.LOCATION

ohos.permission.APPROXIMATELY_LOCATION

依赖:不涉及

  • 约束与限制

1.本示例仅支持标准系统上运行;

2.本示例已适配API version 12版本SDK;

3. 本示例为Stage模型,本示例需要使用DevEco Studio 5.0.2 Release及以上版本才可编译运行。

4.本示例所配置的权限ohos.permission.MANAGE_BLUETOOTH为system_basic级别(相关权限级别可通过权限定义列表系统应用可用权限查看),需要手动配置对应级别的权限签名(具体操作可查看自动化签名方案zh-cn/application-dev/security/hapsigntool-overview.md· OpenHarmony/docs - Gitee.com) 。

5. 本示例所配置的权限ohos.permission.MANAGE_BLUETOOTH为system_basic级别,需要使用Full SDK 如何替换full-SDK。

BLE主机核心功能模块解析

  • 蓝牙状态管理

负责监测和控制蓝牙开关状态,确保BLE功能正常启用。

状态跟踪:通过isBluetoothEnabled(ObservedPropertySimplePU类型)实时记录蓝牙启用状态,支持 UI 响应式更新。

状态检查与切换,通过checkAndEnableBluetooth方法实现:

调用bluetoothManager.getState()获取当前蓝牙状态(STATE_OFF/STATE_ON/STATE_TURNING_ON等)。

若蓝牙未开启(STATE_OFF),调用bluetoothManager.enableBluetooth()发送开启请求。

记录操作日志(如 “蓝牙已开启”“蓝牙正在开启中”),便于问题排查。

  • BLE设备扫描

实现对周围BLE从设备的扫描、结果去重与管理。

扫描状态控制:

通过isScanning(ObservedPropertySimplePU)标记扫描是否正在进行。

扫描逻辑通过startBLEScan方法实现:

1、前置检查

扫描前验证蓝牙是否处于STATE_ON状态,未开启则提示用户先启用蓝牙。

2、结果处理

通过ble.on('BLEDeviceFind')监听扫描结果,对新发现的设备

(ble.ScanResult)进行去重(基于deviceId),避免重复添加。

3、结果存储

扫描到的设备列表通过scanResults

(ObservedPropertyObjectPU>)管理,支持 UI 实时展示。

  • 设备连接与GATT服务管理

负责与 BLE 从设备建立连接,并管理 GATT(通用属性配置文件)服务与特征值。

连接状态跟踪:通过isConnected

(ObservedPropertySimplePU)标记连接状态,connectedClient(ble.GattClientDevice)存储当前连接的 GATT 客户端实例。

服务发现:连接成功后,通过deviceServices

(ObservedPropertyObjectPU>)

存储从设备提供的 GATT 服务列表,支持后续特征值操作。

特征值管理:

oselectedCharacteristic:跟踪当前选中的特征值 UUID,用于数据读写。

onotifiedCharacteristics:记录已启用通知的特征值列表,支持实时接收从设备推送的数据。

  • 数据收发与日志管理

实现与 BLE 从设备的数据交互,并记录关键操作日志。

数据接收:通过receivedData(实时数据)和receivedDataHistory(历史记录)存储从设备发送的数据,支持 UI 展示。

数据发送:通过inputText获取用户输入的发送数据,结合选中的特征值(selectedCharacteristic)向从设备写入数据。

日志管理:

logMessages(ObservedPropertyObjectPU>)记录所有关键操作(如蓝牙状态变化、扫描结果、连接事件等),便于调试与用户反馈。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 蓝牙
    +关注

    关注

    119

    文章

    6431

    浏览量

    179551
  • BLE
    BLE
    +关注

    关注

    13

    文章

    822

    浏览量

    66665
  • OpenHarmony
    +关注

    关注

    33

    文章

    3984

    浏览量

    21458
  • rk3576
    +关注

    关注

    1

    文章

    315

    浏览量

    1721
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    维护成本直降!RK3576核心/开发板OTA升级功能详解,触觉智能瑞芯微RK方案

    触觉智能旗下瑞芯微RK3576核心/开发板产品方案,已新增支持【OTA升级功能】。下文将为大家
    的头像 发表于 04-21 10:30 393次阅读
    维护成本直降!<b class='flag-5'>RK3576</b>核心<b class='flag-5'>板</b>/<b class='flag-5'>开发板</b>OTA升级功能详解,<b class='flag-5'>触觉</b><b class='flag-5'>智能</b>瑞芯微<b class='flag-5'>RK</b><b class='flag-5'>方案</b>商

    RK3576开发板OpenGL性能大起底,这数据我真的服了

    瑞芯微RK3576芯片作为一款中高端的八核Arm架构嵌入式处理器,集成Mali-G52MC3的GPU。本次OpenGL性能测试,基于触觉智能RK3576
    的头像 发表于 01-16 17:20 1899次阅读
    <b class='flag-5'>RK3576</b><b class='flag-5'>开发板</b>OpenGL性能大起底,这数据我真的服了

    迅为如何在RK3576上部署YOLOv5;基于RK3576构建智能门禁系统

    迅为如何在RK3576开发板上部署YOLOv5;基于RK3576构建智能门禁系统
    的头像 发表于 11-25 14:06 2079次阅读
    迅为如何在<b class='flag-5'>RK3576</b>上部署YOLOv5;基于<b class='flag-5'>RK3576</b>构建<b class='flag-5'>智能</b>门禁系统

    触觉智能RK3576开发板通过OpenHarmony5.0 XTS认证

    触觉智能作为开源鸿蒙南向硬件厂家,旗下RK3576开发板及其核心
    的头像 发表于 10-21 12:48 1287次阅读
    <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核心/开发板RT-Linux系统实时性及硬件中断延迟测试

    本文介绍瑞芯微RK3576芯片平台RT-Linux系统实时性及硬件中断延迟测试,基于触觉智能RK3576开发板PurplePiOH2演示。L
    的头像 发表于 09-30 16:52 2285次阅读
    <b class='flag-5'>RK3576</b>核心<b class='flag-5'>板</b>/<b class='flag-5'>开发板</b>RT-Linux系统实时性及硬件中断延迟测试

    触觉智能RK3576开发板OpenHarmony开源鸿蒙系统USB控制传输功能示例

    本文介绍OpenHarmony开源鸿蒙系统的USB控制传输功能实现及相关代码示例,基于触觉智能
    的头像 发表于 09-30 16:31 1917次阅读
    <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><b class='flag-5'>开源</b><b class='flag-5'>鸿蒙</b>系统USB控制传输功能示例

    如何移植EtherCAT Igh--基于米尔RK3576开发板

    本文将介绍基于米尔电子MYD-LR3576开发板(米尔基于瑞芯微RK3576开发板)的端移植EtherCATIgh
    的头像 发表于 09-26 08:04 1w次阅读
    如何移植EtherCAT Igh--基于米尔<b class='flag-5'>RK3576</b><b class='flag-5'>开发板</b>

    【作品合集】米尔RK3576开发板测评

    测试 作者:鲁治驿【米尔RK3576开发板免费体验】测评综合解析 【米尔RK3576开发板免费体验】集成MQ-2烟雾传感器和ADS1263模块实现
    发表于 09-11 10:19

    【作品合集】灵眸科技EASY EAI Orin Nano(RK3576开发板测评

    Orin Nano(RK3576开发板试用体验】使用Linux posix文件读取接口和LVGL的animimg(图像动画)控件实现动画播放以及.. 【EASY EAI Orin Nano(
    发表于 09-09 09:59

    瑞芯微RK3576平台FFmpeg硬件编解码移植及性能测试实战攻略 触觉智能RK3576开发板演示

    本文介绍瑞芯微RK3576平台,FFmpeg硬件编解码移植及性能测试方法。演示设备:触觉智能RK3576开发板FFmpeg简介与实测数据FF
    的头像 发表于 09-08 13:58 1653次阅读
    瑞芯微<b class='flag-5'>RK3576</b>平台FFmpeg硬件编解码移植及性能测试实战攻略 <b class='flag-5'>触觉</b><b class='flag-5'>智能</b><b class='flag-5'>RK3576</b><b class='flag-5'>开发板</b>演示

    瑞芯微RK3576RK3576S有什么区别,性能参数配置与型号差异解析

    、物联网等商用AIoT领域。(瑞芯微RK3576RK3576S芯片框图)触觉智能作为专业的瑞芯微方案商,基于
    的头像 发表于 08-14 23:57 2879次阅读
    瑞芯微<b class='flag-5'>RK3576</b>与<b class='flag-5'>RK3576</b>S有什么区别,性能参数配置与型号差异解析

    触觉智能RK3506开发板通过OpenHarmony 5.1 XTS认证,引领鸿蒙开发新标杆!

    触觉智能作为瑞芯微专业方案商与开源鸿蒙南向硬件厂家,旗下RK3506
    的头像 发表于 08-14 23:49 2101次阅读
    <b class='flag-5'>触觉</b><b class='flag-5'>智能</b><b class='flag-5'>RK</b>3506<b class='flag-5'>开发板</b>通过<b class='flag-5'>OpenHarmony</b> 5.1 XTS认证,引领<b class='flag-5'>鸿蒙</b><b class='flag-5'>开发</b>新标杆!

    如何在RK3576开发板端编译OpenCV并搭建应用

    本文将介绍基于米尔电子MYD-LR3576开发板(米尔基于瑞芯微RK3576开发板)的端编译OpenCV及环境搭建
    的头像 发表于 08-08 08:04 3771次阅读
    如何在<b class='flag-5'>RK3576</b><b class='flag-5'>开发板</b>上<b class='flag-5'>板</b>端编译OpenCV并搭建应用

    告别“人工盯屏”时代丨基于RK3576开发板的电梯AI智能监控方案

    基于RK3576的电梯AI监控方案,采用高精度AI算法实现7×24小时监管,0.3秒识别电动车入梯、儿童独处等20+高危行为,即时预警,实现“事前预防”。硬件搭载6Tops NPU的
    的头像 发表于 07-23 15:02 1287次阅读
    告别“人工盯屏”时代丨基于<b class='flag-5'>RK3576</b><b class='flag-5'>开发板</b>的电梯AI<b class='flag-5'>智能</b>监控<b class='flag-5'>方案</b>

    迅为RK3576核心高算力AI开发板开启智能应用新时代

    迅为RK3576核心高算力AI开发板开启智能应用新时代
    的头像 发表于 06-10 14:13 1943次阅读
    迅为<b class='flag-5'>RK3576</b>核心<b class='flag-5'>板</b>高算力AI<b class='flag-5'>开发板</b>开启<b class='flag-5'>智能</b>应用新时代