我曾尝试使用以下命令从外设示例中的应用程序断开连接://HCI_EXT_DisconnectImmedCmd ();//HCI_EXT_DisconnectImmedCmd (pPkted);//GAP_TerminateLinkReq (pPkted、HCI_disconnect_reme_user_term);
但是、即使在执行这些命令之后、连接也不会终止。 外设示例中是否有命令或方法断开与应用的连接?
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.
我曾尝试使用以下命令从外设示例中的应用程序断开连接://HCI_EXT_DisconnectImmedCmd ();//HCI_EXT_DisconnectImmedCmd (pPkted);//GAP_TerminateLinkReq (pPkted、HCI_disconnect_reme_user_term);
但是、即使在执行这些命令之后、连接也不会终止。 外设示例中是否有命令或方法断开与应用的连接?
您好!
感谢您与我们联系。
请您指定您正在使用的 SDK 版本、示例和堆栈版本(即 BLEStack 或 BLE 5 堆栈)?
一般而言、终止连接的正确方法是调用 GAP_TerminateLinkReq (因为 HCI_EXT_DisconnectImmedCmd 不会缓慢地终止连接)。
根据您提供的小代码片段、您似乎没有 使用正确的参数调用函数 GAP_TerminateLinkReq。 我鼓励您首先仔细检查这些内容。
此致、
您好、您的 SDK 版本是"simplelink_cc2640r2_sdk_3_10_00_15"、您使用此GAP_TerminateLinkReq
函数终止低功耗蓝牙(BLE)连接。 但是、连接似乎没有按预期终止。
在代码中、您gapEstLinkReqEvent_t *pPkt
在GAP_LINK_ESTABLISHED_EVENT
案例中将用作局部变量、然后将其分配给、pPkt
而无需再次将其声明为全局变量。 GAP_LINK_ESTABLISHED_EVENT
案例的新代码分配pPkt
给传入pMsg
。
要解决此问题、应确保将pPkt
变量声明为全局变量并正确设置、并且应在事件处理程序中始终对其进行更新。
您曾提到eventClock
GAP_TerminateLinkReq(pPkt)
在读取 UART 命令时使用 TO 调用。 但是、连接似乎仍未按预期终止。
如需更多帮助、我建议您提供有关完整代码以及终止 BLE 连接的特定条件的更多信息。 调试和使用日志输出来跟踪执行流程也有助于确定问题的根本原因。