蓝牙主机端有没有获取协议栈状态的API?
时间:10-02
整理:3721RD
点击:
simpleBLECentral中都是在等待ICALL的消息推动状态,蓝牙主机端能不能主动查询协议栈的连接状态?
he hr,
是的,是木有的。这是比较合理的协议实现架构,毕竟连接成功与否是由底层的链路决定的。
如果你一定要,你可以在central.c 中,在case GAP_LINK_ESTABLISHED_EVENT: 后面自己加个全局变量表示连接成功,然后你上面应用根据你自己的需要去查询这个全局变量。
在连接一个从机时根据消息判断还算稳定,但是如果需求主机同时连接多个从机时很容易出现混乱情况
hi Y ,如果我扫描到一个设备,但是这个设备在连接建立过程中突然断电了,底层会回复连接超时时间吗?如果没有怎么判断连接超时?
he hr,
突然断电,是会有supervision timeout这么个事件的。
如果一定时间没有得到对方的同步信息,底层是会向上报连接断开的事件,同时指明原因是超时断开。
这个supervision timeout就是在connect request请求定的。
嗯嗯 谢谢,我之前调试时发现即使外设连接中掉电,协议栈返回连接超时之后但是协议栈并没有停止连接的请求。如何让协议栈停止连接?