我需要状态1的时候广播间隔是500ms,状态2的时候广播间隔是100ms,使用
GAP_SetParamValue(TGAP_DISC_ADV_INT_MIN, MS1_TO_SYSTEM_TIME(500));
GAP_SetParamValue(TGAP_DISC_ADV_INT_MAX, MS1_TO_SYSTEM_TIME(500));
修改不成功,请问应该怎么办
我需要状态1的时候广播间隔是500ms,状态2的时候广播间隔是100ms,使用
GAP_SetParamValue(TGAP_DISC_ADV_INT_MIN, MS1_TO_SYSTEM_TIME(500));
GAP_SetParamValue(TGAP_DISC_ADV_INT_MAX, MS1_TO_SYSTEM_TIME(500));
修改不成功,请问应该怎么办
您好,先关广播,修改广播间隔的配置,再打开广播。
开/关广播调用如下两行接口即可。
uint8_t initial_advertising_enable = TRUE; //FALSE
GAPRole_SetParameter(GAPROLE_ADVERT_ENABLED, sizeof(uint8_t), &initial_advertising_enable);
void modify_adv_interval(unsigned int ms)
{
uint8_t initial_advertising_enable = TRUE;
initial_advertising_enable = FALSE;
GAPRole_SetParameter(GAPROLE_ADVERT_ENABLED, sizeof(uint8_t), &initial_advertising_enable);
GAP_SetParamValue(TGAP_DISC_ADV_INT_MIN, MS1_TO_SYSTEM_TIME(ms));
GAP_SetParamValue(TGAP_DISC_ADV_INT_MAX, MS1_TO_SYSTEM_TIME(ms));
?initial_advertising_enable = TRUE;
GAPRole_SetParameter(GAPROLE_ADVERT_ENABLED, sizeof(uint8_t), &initial_advertising_enable);
}
修改没有生效呀
你好,关闭广播后再开启广播的话,需要等到报等待广播状态后再开启,不可以关闭后直接再打开。
在等待广播处开启广播: if(pEvent->gap.opcode == GAP_END_DISCOVERABLE_DONE_EVENT) { PRINT("Waiting for advertising..\n"); uint8_t initial_advertising_enable = TRUE; GAPRole_SetParameter(GAPROLE_ADVERT_ENABLED, sizeof(uint8_t), &initial_advertising_enable);开启广播 }