Part Number:LP-CC2652RB
Hi Ti:
在 simple peripheral 例程中的 GAP_LINK_ESTABLISHED_EVENT 事件处理过程中,有如下代码片段:
if(numActive < MAX_NUM_BLE_CONNS) {// Start advertising since there is room for more connectionsGapAdv_enable(advHandleLegacy, GAP_ADV_ENABLE_OPTIONS_USE_MAX , 0);GapAdv_enable(advHandleLongRange, GAP_ADV_ENABLE_OPTIONS_USE_MAX , 0); } else {// Stop advertising since there is no room for more connectionsGapAdv_disable(advHandleLongRange, GAP_ADV_ENABLE_OPTIONS_USE_MAX , 0);GapAdv_disable(advHandleLegacy, GAP_ADV_ENABLE_OPTIONS_USE_MAX , 0); }
对于以上代码,我产生了一些疑问:
1. 连接建立之后,默认的 GapAdv 是 enable 还是 disable 呢?
2. 在以上代码中,enable过程是先 advHandleLegacy 然后 advHandleLongRange,而 disable 过程是先 advHandleLongRange 然后 advHandleLegacy。请问这个顺序是必须这样吗?
谢谢!
Kevin Qiu1:
1.连接数量没有超过MAX_NUM_BLE_CONNS时是 enable,超过了就是disable
2.没有严格要求,但是一般都是先关闭LongRange
,
junde deng:
谢谢
Kevin Qiu1 说:1.连接数量没有超过MAX_NUM_BLE_CONNS时是 enable,超过了就是disable
按这个说法,那上面的代码岂不是没有作用了(默认功能和代码功能重复)
可能是我表达的不太清楚,我的意思是在没有上面代码段的情况下,设备被连接上后是继续保持广播状态还是默认关闭广播状态呢?
,
Kevin Qiu1:
是有些不太清楚,没有上述代码,未建立连接时会有广播
一旦建立连接后,就没有广播了
,
junde deng:
多谢!