打印
[蓝牙]

CC2640R2F BLE 开发之如何更新连接参数

[复制链接]
577|20
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
八层楼|  楼主 | 2019-12-31 15:06 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
写在前面
蓝牙的连接参数主要是指:

更新模式(paramUpdateEnable)
最小连接间隔(minConnInterval)
最大连接间隔(maxConnInterval)
潜伏个数(slaveLatency)
连接超时时间(timeoutMultiplier)
例程:examples\rtos\CC2640R2_LAUNCHXL\blestack\simple_peripheral
相关说明1、更新模式(paramUpdateEnable)

说明:


设置API:

GAPRole_SetParameter(GAPROLE_PARAM_UPDATE_ENABLE, sizeof(uint8_t), &value);

获取当前参数API:GAPRole_GetParameter(GAPROLE_PARAM_UPDATE_ENABLE,&value);


2、最小连接间隔(minConnInterval)

设置API:

GAPRole_SetParameter(GAPROLE_MIN_CONN_INTERVAL, sizeof(uint16_t), &value);

获取当前参数API:GAPRole_GetParameter(GAPROLE_PARAM_UPDATE_ENABLE,&value);


3、最大连接间隔(maxConnInterval)

设置API:

GAPRole_SetParameter(GAPROLE_MAX_CONN_INTERVAL, sizeof(uint16_t), &value);

获取当前参数API:GAPRole_GetParameter(GAPROLE_MAX_CONN_INTERVAL,&value);


4、潜伏个数(slaveLatency)

设置API:

GAPRole_SetParameter(GAPROLE_SLAVE_LATENCY, sizeof(uint16_t), &value);

获取当前参数API:GAPRole_GetParameter(GAPROLE_SLAVE_LATENCY,&value);


5、连接超时时间(timeoutMultiplier)

设置API:

GAPRole_SetParameter(GAPROLE_TIMEOUT_MULTIPLIER, sizeof(uint16_t), &value);

获取当前参数API:GAPRole_GetParameter(GAPROLE_TIMEOUT_MULTIPLIER,&value);


执行更新连接参数

以上API设置只是加载相关数值,并不会发起更新,调用以下API主从机就会发起协商更新连接参数(如果参数符合要求)

更新参数要求:


每次更新必须有且一个参数与当前的参数不一致,如下代码所示,最好每次的连接超时时间要改变一下,不然会返回0x18,

timeoutMultiplier > (1+slaveLatency) * maxConnInterval * 2,timeoutMultiplier 应为100 ms的倍数,范围为100 ms至32.0 s,最好把余量放大点。


int8_t enableUpdateRequest = TRUE;

GAPRole_SetParameter( GAPROLE_PARAM_UPDATE_REQ,sizeof(uint8_t), &enableUpdateRequest)



更新参数执行限制条件


  if ((gapRole_ConnInterval < pConnParams->minConnInterval)   ||

       (gapRole_ConnInterval > pConnParams->maxConnInterval)   ||

       (gapRole_ConnSlaveLatency != pConnParams->slaveLatency) ||

       (gapRole_ConnTimeout  != pConnParams->timeoutMultiplier))

  {

  //执行更新操作

  }



5595e0af30dd8eed.png (356.15 KB )

5595e0af30dd8eed.png

使用特权

评论回复

相关帖子

沙发
kkzz| | 2020-1-2 13:00 | 只看该作者
ble开发 怎么在后台   

使用特权

评论回复
板凳
hudi008| | 2020-1-2 13:01 | 只看该作者
是否支持BLE开发?   

使用特权

评论回复
地板
lzmm| | 2020-1-2 13:01 | 只看该作者
BLE开发是用CSR的1010模块好还是TI的2541  

使用特权

评论回复
5
minzisc| | 2020-1-2 13:01 | 只看该作者
蓝牙开发 ble 难吗   

使用特权

评论回复
6
selongli| | 2020-1-2 13:01 | 只看该作者
蓝牙ble方案哪个公司设计的好  

使用特权

评论回复
7
fentianyou| | 2020-1-2 13:01 | 只看该作者
CC2541与CC2640有什么实际区别?

使用特权

评论回复
8
xiaoyaodz| | 2020-1-2 13:02 | 只看该作者
CC2640 端口捕获怎么设置  

使用特权

评论回复
9
febgxu| | 2020-1-2 13:02 | 只看该作者
有协议栈的话应该选哪个协议栈  

使用特权

评论回复
10
sdlls| | 2020-1-2 13:02 | 只看该作者
如何CC2640修改广播的名字  

使用特权

评论回复
11
pixhw| | 2020-1-2 13:02 | 只看该作者
CC2640怎么开启串口bootloader  

使用特权

评论回复
12
febgxu| | 2020-1-2 13:02 | 只看该作者
怎么设置cc2640的spi通信  

使用特权

评论回复
13
kkzz| | 2020-1-2 13:02 | 只看该作者
进入ble范围自动提醒

使用特权

评论回复
14
xiaoyaodz| | 2020-1-2 13:02 | 只看该作者
在IAR中如何设置相对路径CC2640  

使用特权

评论回复
15
hudi008| | 2020-1-2 13:02 | 只看该作者
安卓蓝牙遥控器属于ble开发吗

使用特权

评论回复
16
fentianyou| | 2020-1-2 13:02 | 只看该作者
手机可以连接CC2640吗  

使用特权

评论回复
17
lzmm| | 2020-1-2 13:02 | 只看该作者
iBeacon和BLE的区别?   

使用特权

评论回复
18
selongli| | 2020-1-2 13:02 | 只看该作者
BLE开发,如何持续读取设备端的数据?  

使用特权

评论回复
19
minzisc| | 2020-1-2 13:02 | 只看该作者
ble开发板 怎样连接电脑  

使用特权

评论回复
20
pixhw| | 2020-1-2 13:02 | 只看该作者
如何测试CC2640的BLE射频指标  

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

83

主题

4106

帖子

2

粉丝