NRF52832设置一直广播

发布时间 2023-06-23 12:44:50作者: 花无缺Andyi

使用历程nRF5_SDK_13.0中的ble_app_uart

路径nRF5_SDK_13.0.0_04a0bfd\examples\ble_peripheral\ble_app_uart

通过修改广播的发现模式设置nrf52832一直广播

BLE_GAP_ADV_FLAGS_LE_ONLY_LIMITED_DISC_MODE:有限可发现模式,不支持BR/EDR。
BLE_GAP_ADV_FLAGS_LE_ONLY_GENERAL_DISC_MODE:一般可发现模式,不支持BR/EDR。

有限可发现模式和一般可发现模式的主要区别是:

有限可发现模式有时间的限制,一般维持的时间是30秒,而一般可发现模式没有时间的限制。

有限可发现模式广播的间隔比一般可发现模式小。 从时间的限制上,我们可以看出有限可发现模式对连接的迫切性和目的性比一般可发现模式高,一个处于有限可发现模式的设备正在广播,那么他一定是刚被用户操作过并且极希望被连接。 一般情况下,设备首次开机、按下连接按钮,设备进入有限可发现模式比较合适。如果在有限可发现模式时间内没有被连接,可以转入一般可发现模式。 如果我们希望设备在没有被连接时一直保持广播,那么应该使用一般可发现模式,因为一般可发现模式是没有时间限制的。

在advertising_init()函数中修改,

将 advdata.flags = BLE_GAP_ADV_FLAGS_LE_ONLY_LIMITED_DISC_MODE

修改为 advdata.flags= BLE_GAP_ADV_FLAGS_LE_ONLY_GENERAL_DISC_MODE

 

然后修改广播超时时间为0

#define APP_ADV_TIMEOUT_IN_SECONDS      0

如图