求助:cc2640主机从机连接参数问题
cc2640的主机与从机的连接参数更新都为FALSE,我看别人的帖子说此时主从连接时用的是主机的连接参数,那么我想请问一下主机的默认连接参数是多少?是在哪个文件里面?
另外:主机、从机都#define DEFAULT_ENABLE_UPDATE_REQUEST FALSE情况下,主机与从机连接成功之后,我手动关闭从机,主机要等待大约20s
才能知道连接断开,断开的原因是:0x08----连接超时。请问这个20s的时间是在哪里设置的?
连接参数的话,您可以在simple_central.c文件内进行设置。
关闭从机的话,您可以调用GAPRole_TerminateConnection();
我知道主机程simpleBLEcentral.c中有很多与连接参数是的宏定义,我全局查找了一下,这些参数并没有被调用。而我也没有调用GAPCentralRole_UpdateLink函数
去更新参数。那么默认的连接参数是在哪里?
需要说明的是:
主从机连接时,首先使用的是主机端默认的连接参数。
1)如果从机端禁止参数更新,则之后的通信都将使用主机端默认的连接参数。
2)如果从机端允许参数更新,则在主从机连接后的几秒内,从机会向主机端发送连接参数更新请求。
如果从机的连接参数符合主机端的连接标准,则更新参数;
如果从机的连接参数不符合主机端的连接标准,则不更新参数。
而且这些连接参数都是在底层被调用的,用户无法看到。但若是您需要更新连接参数的话,主机端直接更新参数使用函数GAPCentralRole_UpdateLink,从机端使用GAPRole_SendUpdateParam。
另外您可以看一下
// Connection Pause Peripheral time value (in seconds) #define DEFAULT_CONN_PAUSE_PERIPHERAL 6 //有时当CC2541断开连接时,主机端过几秒才会断开,此时将此数值改小可让主机快速发现断开连接
请问模块主机端的连接标准和IOS的连接标准一致吗?
苹果对connection interval的要求, 还有其他的连接参数要求, 比如slave latency, supervision timeout, 如果不满足这些, IOS设备会拒绝.
The connection parameter request may be rejected if it does not comply with all of these rules:
Interval Max * (Slave Latency + 1) ≤ 2 seconds
Interval Min ≥ 20 ms
Interval Min + 20 ms ≤ Interval Max
Slave Latency ≤ 4
connSupervisionTimeout ≤ 6 seconds
Interval Max * (Slave Latency + 1) * 3 < connSupervisionTimeout
我的主机端也是c2640模块,连接参数也有这些要求吗?谢谢
只有在和IOS设备通信时才要遵循这些要求
谢谢