请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
器件型号:CC1352P7工具/软件:
你好我的朋友,
我尝试在运行时更新广播数据。
我使用的是简单外设示例、我的 SDK 版本为 8.30.01.01
我根据在在线资源(如在线资源)上找到的内容执行了以下功能。
int peripheral_update_adv_data(void) {
int ret = GapAdv_disable(advHandleLegacy);
if (ret != 0) {
return -10;
}
uint8_t new_advData[] = {
// Flags: General Discoverable, BR/EDR not supported
0x02, GAP_ADTYPE_FLAGS,
GAP_ADTYPE_FLAGS_BREDR_NOT_SUPPORTED | GAP_ADTYPE_FLAGS_GENERAL,
// Custom 128-bit UUID (0x07)
0x11, GAP_ADTYPE_128BIT_COMPLETE, 0xF0, 0xDE, 0xBC, 0x9A, 0x78, 0x56,
0x34, 0x12, 0x78, 0x56, 0x34, 0x12, 0x78, 0x56, 0x34, 0x12,
// Appearance (0x19)
0x03, GAP_ADTYPE_APPEARANCE, 0x52, 0x05,
// TX Power Level (0x0A)
0x02, GAP_ADTYPE_POWER_LEVEL, 0,
// Manufacturer-specific data (0xFF)
0x02, GAP_ADTYPE_MANUFACTURER_SPECIFIC, 0x42};
// Load advertising data for set #1 that is statically allocated
ret = GapAdv_prepareLoadByHandle(advHandleLegacy,
GAP_ADV_FREE_OPTION_DONT_FREE);
if (ret != 0) {
return -9;
}
ret = GapAdv_loadByHandle(advHandleLegacy, GAP_ADV_DATA_TYPE_ADV,
sizeof(new_advData), new_advData);
if (ret != 0) {
return -11;
}
ret = GapAdv_enable(advHandleLegacy, GAP_ADV_ENABLE_OPTIONS_USE_MAX, 0);
if (ret != 0) {
return -12;
}
return 0;
}由于某种原因、如果我调用此功能(我通过按下按钮来执行此操作)、我将不再在手机上看到广告(nrf connect 应用程序)
您能帮助我解决这个问题吗?
此外、我还使用 DMM。