|
上次创建完工程,留了个点灯的尾巴,这次给完成。 在IOC工程界面添加服务一个服务,会增加一个服务配置的窗口
打开SERVER1的配置界面,修改UUID便于手机端辨识,还有Service name。再添加一个特征,也同样修改下UUID和名称,打算控制LED,1个字节的Value就可以。
完成以上就可以更新代码了。烧录后在手机APP中搜索到XX-STTM32并连接后查看是否有刚才配置的服务和特征
到这里完成了一半。因为此时打开写属性,调试信息里并没有输出任何内容,需要手动添加代码。查找工程,可以看到新增加的BLE App代码文件
打开ld2.c文件查找相关内容,函数不多,可以很快定位到该服务的事件处理函数如下
从以上代码能够看出收到服务端的写特征数据时会再调用LD2_Notification(¬ification);函数,同时传入notification结构体,我们要提取的数据也在这个结构体里面。所有找到LD2_Notification函数,添加对playload值的提取和点灯代码。
在串口调试助手中也打印出来收到的写特征值。如下
不过倒是有个问题,Service name在手机客户端都显示unknow,一时没找到原因。 |
经验分享 | STM32CubeIDE 调试神技:条件断点与观察点,搞定长周期复现疑难杂症
实战经验 | 使用STM32CubeIDE调试Zephyr RTOS
STM32CubeIDE 2.0.0:解耦STM32Cube MX与优化后的项目工作流程
详解STM32单片机的堆栈
经验分享 | 基于STM32CubeIDE的指定存储话题
【亮点速览】同步升级工具链 + 快速重置按钮 + 增量烧录!STM32CubeIDE for Visual Studio Code开发工具更新
效率与探索之间:STM32CubeMX与STM32CubeAI试用有感
STM32单片机进行除零运算,为何程序不崩溃?
从照明到楼宇:STM32WBx5 BLE Mesh 落地指南
STM32WB ZigBee 配网:从“按键入网”到“安全运营”的六边形战士养成记
微信公众号
手机版
Solved: Re: Naming BLE service on STM32WB - STMicroelectronics Community