TI中文支持网
TI专业的中文技术问题搜集分享网站

cc2640r2f多主机连接同一个从机从问问题

实验现象:

1。a主机扫描到(从机_M) 的mac连接成功

2。b主机同时也扫描到(从机_M)的mac连接超时

3。问题:b主机在扫描其它从机(从机_N)时,mac能扫描到,但总是连接不上。此时如果让(从机_M)重新广播,这时候b主机就能连上(从机_M)

4。总结:通过以上实验当b主机扫描到了从机_M时,好像一直记住了从机_M的mac,其它从机的mac能描到但不去连接或者连接不上。更重要的是触发连接是通过 multi_role_enqueueMsg(MR_START_CONNECT_EVT,NULL);往队列里面丢消息,最终调用此函数

void mr_doConnect(void)
{
uint8_t status;
GAPRole_CancelDiscovery();//1909 连接之前关闭监听
// Connect to current device in scan result
status = GAPRole_EstablishLink(DEFAULT_LINK_HIGH_DUTY_CYCLE,
DEFAULT_LINK_WHITE_LIST,
label_parameter.addrType, label_parameter.label_mac);
#ifdef MYDEBUG //
UartTask_Write(label_parameter.label_mac, 6); //add lhj 190903
UartTask_Write(&status,1);
#endif}连不成功,消息感觉也没有从队列中去除,mr_doConnect函数一直在执行,直到扫描到从机_M的mac才能成功连接。出现以上现象不知道是哪里没有处理好嘛?

5。在测试过程中:/ Connect to current device in scan result
status = GAPRole_EstablishLink(DEFAULT_LINK_HIGH_DUTY_CYCLE,
DEFAULT_LINK_WHITE_LIST,
label_parameter.addrType, label_parameter.label_mac);函数只要被调用一次好像一直在在执行。

Alvin Chen:

能否用抓包文件说明

huijun li:

回复 Alvin Chen:

我测试一下,后面补上,抓包数据看不太懂主要。可能的原因有哪些啊。

Alvin Chen:

回复 huijun li:

因为理论上这些互不影响。所以要看抓包,到底连接的地址是谁,不能连接的code是多少要看抓包。

赞(0)
未经允许不得转载:TI中文支持网 » cc2640r2f多主机连接同一个从机从问问题
分享到: 更多 (0)