This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

蓝牙5.1连接速度最快可以到多少?



现在在基于CC2652的SDK做AOA的项目。测试发现,蓝牙连接的时间需要180ms左右。

请教下,

1.现在的SDK,在协议栈上实现连接的最短时间可以到多少毫秒?

2.AOA的应用层rtls_matster.c中,从RTLSMaster_processRTLSConnReq()开始连接到RTLSMaster_processL2CAPSignalEvent()收到L2CAP_CHANNEL_ESTABLISHED_EVT事件,在180ms-300ms左右。connInterval设置成7.5ms。

这个180ms-300msms有 没有可能是RTOS的性能造成的影响,比如纯在任务切换等?还是纯粹协议栈实现完成连接的时间?

3.另外下面这段代码,通过打印ICall_getTicks()系统的tick,可以算出,三段GapInit_setPhyParam设置函数,就会占用20ms时间,有没有中间有其他不需要执行的多余参数设置?

static void RTLSMaster_processRTLSConnReq(bleConnReq_t *bleConnReq)
{
  // Sanity check
  if (!bleConnReq)
  {
      return;
  }
  static char setPhyParam_flag = 0;
  px_trace("[px] conncet start 1 %d",ICall_getTicks());
  //Set connection interval and supervision timeout
  if(!setPhyParam_flag)
  {
  GapInit_setPhyParam(INIT_PHY_1M | INIT_PHY_2M | INIT_PHY_CODED, INIT_PHYPARAM_CONN_INT_MAX, bleConnReq->connInterval);
  GapInit_setPhyParam(INIT_PHY_1M | INIT_PHY_2M | INIT_PHY_CODED, INIT_PHYPARAM_CONN_INT_MIN, bleConnReq->connInterval);
  GapInit_setPhyParam(INIT_PHY_1M | INIT_PHY_2M | INIT_PHY_CODED, INIT_PHYPARAM_SUP_TIMEOUT, DEFAULT_UPDATE_CONN_TIMEOUT);
  setPhyParam_flag = 1;
  }
  px_trace("[px] conncet start 2 %d",ICall_getTicks());
  GapInit_connect(bleConnReq->addrType & MASK_ADDRTYPE_ID, bleConnReq->addr, DEFAULT_INIT_PHY, 0);
  px_trace("[px] conncet start 3 %d",ICall_getTicks());
}