发布时间:2024-04-30 文章来源:深度系统下载 浏览:
我们曾给开发者们带来基于润和Neptune开发板(以下简称Neptune开发板)的键盘蓝牙模块DIY指南0.1版本,将有线键盘改造成蓝牙键盘,实现一个键盘被多操作系统/终端设备识别使用的功能。经过几个月的更新,这次我们为大家带来的是基于Neptune开发板的键盘蓝牙模块DIY指南v0.3版本,为大家带来几个重磅更新: 1. 支持搭载HarmonyOS系统手机“碰一碰”连接 2. 支持HUAWEI DevEco Device Tool一站式编译烧录 3. 在原有支持4种OS(HarmonyOS、Windows、Linux、Android)的基础上,新增初步支持ios 4. 从原有的支持最多2台设备增加到现在的支持最多5台设备自由切换 更多项目更新详情,可通过下方链接查看: https://gitee.com/openharmony-sig/vendor_oh_fun/tree/master/hihope_neptune-oh_hid 在之前的版本中,我们已经了解了硬件环境搭建和USB串口(CH340)获取相关信息,这一次让我们把重点放在开发者们最关注的“碰一碰”的实现和HUAWEI DevEco Device Tool一站式编译、烧录步骤上,让我们一起来了解吧~ 一、“碰一碰”的实现1、从体验角度诠释“碰一碰”实现 用户使用“碰一碰”实现蓝牙键盘连接的示意图如下:
1. 用户通过碰一碰NFC标签拉起FA应用; 2. 获取蓝牙设备(开发板)的MAC信息; 3. 同时,手机中的蓝牙扫描将获取到的蓝牙列表与开发板MAC信息进行比对; 4. 当匹配到相同开发板MAC信息将反馈连接蓝牙结果,连接该蓝牙设备; 5. 同时连接成功的结果将通过被拉起的FA应用通知用户,用户可在界面上看到成功连接的提示。效果可看视频: 2、从原理角度诠释“碰一碰”实现: 这个过程中,碰一碰NFC标签能拉起FA应用和获取开发板MAC地址的关键点在于FA应用信息和开发板MAC地址已经被写入到NFC标签中,用户打开手机上的NFC开关,手机在NFC标签时即可读取相关信息拉起FA应用并获取到开发板的MAC地址用于匹配。 但实际上被写入NFC标签的是FA应用的productid(需在华为官方“应用调测助手”APP中申请获得),申请完成后通过在华为快服务智慧平台(以下及图中均简略为HAG)创建、发布该FA服务,将productid与FA应用App包名关联,开发者将productid写入NFC标签中,当用户使用NFC标签碰一碰时,HAG端将通过productid查询对应的包名并将其拉起。 而蓝牙设备则是通过工具获取设备MAC地址码,将MAC地址码写入NFC标签,当用户使用NFC标签碰一碰时将获取到写入其中的MAC地址码,与手机当前蓝牙列表匹配并连接相同MAC地址的蓝牙设备。
下面让我们来详细解析一下这个过程,由于我们已有productid且服务已发布,我们将聚焦在如何实现FA应用信息及开发板MAC地址写入NFC标签的过程中。 3、从动手流程学习“碰一碰”实现 接下来就让我们来详细了解一下FA应用信息及开发板MAC地址写入NFC标签过程。 1. 了解写入NFC的数据样例结构 我们将为各位开发者提供一段用于写入到NFC的数据样例结构,开发者只需做很小部分的改动即可直接写入NFC标签中。 数据样例结构字符串如下: D20C1A6170702F68776F6E65686F702001004800393935330081060005200685919106286DCD824FEF 其中: 39393533表示9953的Ascill码,9953即是我们为该FA应用已经申请好的productid; 286DCD824FEF用于表示BLE设备硬件编码(MAC地址),后续我们将通过获取目标BLE设备的MAC地址并将其替换掉。 2. 获取BLE设备MAC地址 在“华为应用市场”安装“BLE调试助手”( 该工具用来获取目标BLE设备的MAC地址),打开改工具,找到蓝牙键盘,获取蓝牙键盘的MAC地址:286DCD7C0E67
3. 替换目标设备的MAC地址 将上一步中通过BLE调试助手获取的MAC地址:286DCD7C0E67替换样例的MAC地址:286DCD824FEF,组装后的字符串为: D20C1A6170702F68776F6E65686F702001004800393935330081060005200685919106286DCD7C0E67 |