准备工具
一块 bl702 开发板 + 手机 app
软件实现
BLE PDS31 软件实现
软件代码见 examples/ble/ble_pds
BLE PDS31 function 需要开启freertos tickless 功能 , 见 components/freertos/portable/gcc/risc-v/bl702/FreeRTOSConfig.h
在 ble_start_adv 函数中, adv_name 设置这次广播的设备名称,设备就开始进行广播
广播开始之后, 在 bt_enable_cb 中, pds_start = true 是允许进入PDS31
连接成功后,在 ble_tp_connected 函数, pds_start = false 会关闭pds31.
如果想要连接成功后,继续进入PDS31,需要板子上带有external xtal 32K. 配置以下设置, 当connection interval > 100ms 的时候,会进入PDS31.
pds31 唤醒时钟源配置,见 bsp/board/bl706_iot/clock_config.h
连接成功后进入PDS31配置,见 examples/ble/ble_pds/ble_peripheral_tp_server.c
编译和烧录
命令行编译
烧录
详见 BLDevCube 烧录工具指南
实验现象
手机连接 bl702
连接成功,如下图所示
进入PDS31 显示
原作者:BL_MCU_SDK 开发指南
|