工具/软件:
您好的团队、
我们正在研究 simple_peripheral 示例中的 simple_peripheral.c、并想知道在什么情况下我们会在 GAP_LINK_INSTABLE_EVENT 情况下(即 pEvent->GAP.hdr.status!=成功)作为外设角色到达 else 语句?
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.
工具/软件:
您好的团队、
我们正在研究 simple_peripheral 示例中的 simple_peripheral.c、并想知道在什么情况下我们会在 GAP_LINK_INSTABLE_EVENT 情况下(即 pEvent->GAP.hdr.status!=成功)作为外设角色到达 else 语句?
您好!
source\ti\ble5stack\inc\gap.h 中的 gapEstLinkReqEvent_t 文档提到以下内容:
/**
*@ref GAP_LINK_RESISTED_EVENT 消息格式。
*
*此消息将在链接建立时发送到应用程序(状态为
*成功)。 @中心、这在 2 μ s ref GapInit_connect 或之后
*@ref GapInit_connectWl 成功完成。 对于外设、此消息
发送*表示已创建链接。
*
* LL_STATUS_SUCCESS 以外的其他内容的 ReasonCode(连接状态完成)
*在以下情况下是可能的:
*- LL_STATUS_ERROR_UNKNOWN_HANDLE(0x02 ):作为主控,连接
*创建已取消。
*- LL_STATUS_ERROR_DIRECTED_ADV_TIMEOUT (0x3C):作为从器件、定向
*广告在没有建立连接的情况下结束。
*- LL_STATUS_ERROR_UNACCEPTAD_CONN_INTERVAL (0x3B):从器件接收到 A
*连接请求与无效的连接参数组合。
*
* ReasonCode 错误(上面的一个)被转换为 bleGAPConnNotAcceptable (0x31) 的数据包状态。
* ReasonCode 成功转换为 HCI_Success 的数据包状态。
*/
此文档指示 pEvent->GAP.HDR.status 可能具有除 Success 以外的其他状态、但不会发送到应用程序。 因此、不必检查数据包的状态、但这仍然是一个很好的习惯、以防将来此行为发生变化。
此致、
Lea