一、前言
前面几篇体验了开箱、环境搭建、开发、基础外设的使用等,本次体验一下开发板的主要无线功能之一:BLE开发。作为功能强劲的BLE SoC芯片,WBZ451具备BLE和ZigBee等主流的无线近距离通信协议。文中描述其用户自定义Customer Service方式进行交互的设计。Demo的主要功能是按钮按下,切换LED状态,并上报状态给App,而App则可以下发指令,改变RGB LED亮起时的颜色(通过RGB三个字节各自的颜色配置)。
二、准备
三、代码及运行
可以看到项目包含的组件就比较多而复杂了。其中包括
可以重点关注几点
其中就包括了:
Device Name设备名称:此处DEMO为Microchip,另外还可以配置名称可配重写
Advertising广播部分:包括了是否开启扩展广播,广播功率,广播周期,广播信道配置,广播包内容
扫描应答的数据内容与广播的内容基本相同,一般可以选择较长的数据放在扫描应答中,以节省广播功耗
在GATT配置中应将Enable Client Role去掉。
在GAP Role选择时,需要选择Peripheral从机设备
其余选择默认值即可。
其中又包括了:
四、编译下载运行
运行之后板载蓝色单独LED亮起,RGB灯灭
按下按钮,独立LED和RGB灯分别在亮灭之间切换。
打开Light Blue,可以扫描到名称为microchip的设备
点击链接,成功之后可以看到对应的服务被发现。
此时点开 ADVERTISEMENT DATA后面的show按钮,可以看到完整的扫描数据内容,其中包括了Local Name广播包中的设备名称
而点开第一个Characteristic,然后可以点击其后的Listen for notification即可使能Notify,即订阅成功。
此时按下开发板上的按钮,除了板子上的LED亮灭之后还可以看到App上收到了开发板报上来的0x01和0x00了。
点开第二个Characteristic,可以看到初始值0x00FF00,此时我们可以写入0x0000FF,也就是开发板上按下按钮之后RGB亮蓝灯
此时按下按钮,RGB亮的颜色变成蓝色
如果想让RGB亮起颜色变成红色,则写入0xFF0000即可,如下两图。
五、小结
从上面整个方法和流程来看,Microchip的这套MPLAB X结合MCC Harmony的方式还是非常强大的,尤其是结合图形化的开发方式,可快速设计出所需要的外设,BLE的各项配置等等,可以免去很多的底层开发,而更加关注于产品应用的设计开发。
本帖最后由 Tristan_C 于 2023-8-26 17:03 编辑引用: Jacktang 发表于 2023-8-27 21:46 结合图形化的开发方式,可快速设计出所需要的外设,BLE的各项配置,这种玩法挺好,实用
要是MPLAB X结合mcc能不要那么卡就更好了