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

cc2640r2f multi_role工程,如何加快发现从机特征值的时间

我使用的是multi_role工程,修改了multi_role_processGATTDiscEvent(gattMsgEvent_t *pMsg)函数,使该函数连续发现5个特征值。

我观察到该函数发现每个特征值的时间差不多都是1S。

请问如何加快发现从机特征值时间,使它能在最短时间内发现指定特征值?

Kevin Qiu1:

看下这里
// Default service discovery timer delay in ms
#define DEFAULT_SVC_DISCOVERY_DELAY1000
要延时一定时间,否则会读取特征值失败

user4045619:

回复 Kevin Qiu1:

我改成100试了一下结果还是一样的。这个宏定义没有起作用,这是为什么呢?

Kevin Qiu1:

回复 user4045619:

减小连接间隔试试

user4045619:

回复 Kevin Qiu1:

我用的是multi_role工程,请问该如何设置呢?
是下面这里吗?
// Dummy parameters to use for connection updates
gapRole_updateConnParams_t updateParams =
{.connHandle = INVALID_CONNHANDLE,.minConnInterval = 80,.maxConnInterval = 150,.slaveLatency = 0,.timeoutMultiplier = 200
};

Kevin Qiu1:

回复 user4045619:

是的,注意连接间隔不能太小

user4045619:

回复 Kevin Qiu1:

不管是改大还是改小发现特征值的时间仍然是1s

Kevin Qiu1:

回复 user4045619:

你是通过什么方式测得发现特征值的时间是1S

user4045619:

回复 Kevin Qiu1:

使用串口打印出来的,每发现一个特征值就打印出一句话,输出是下面这样的
[[2020-07-21 15:47:09.634]# RECV ASCII>StartChar Finding
[2020-07-21 15:47:10.137]# RECV ASCII>
connIndex:00
discState:03
SimpleChar Found
[2020-07-21 15:47:11.121]# RECV ASCII>
connIndex:00
discState:04
SimpleChar Found
[2020-07-21 15:47:12.371]# RECV ASCII>
connIndex:00
discState:05
SimpleChar Found
[2020-07-21 15:47:13.386]# RECV ASCII>
connIndex:00
discState:06
SimpleChar Found
[2020-07-21 15:47:14.386]# RECV ASCII>
connIndex:00
discState:07
SimpleChar Found

Kevin Qiu1:

回复 user4045619:

你是用两块板子进行测试的吗?看一下这里的回复:e2e.ti.com/…/924194

ALVIN:

回复 user4045619:

获取特征值受限于连接间隔,可以在connect 成功后,发起连接间隔更新,获取特征过程类似于下图。

赞(0)
未经允许不得转载:TI中文支持网 » cc2640r2f multi_role工程,如何加快发现从机特征值的时间
分享到: 更多 (0)