TI论坛
直播中

h1654155275.5994

7年用户 281经验值
私信 关注
[问答]

为什么CC2541修改为不可连接不能立即生效?

大家好
最近开发CC2541蓝牙程序时遇到一个问题:
                    2541可以修改为只广播不连接的状态,但是修改后不能立即生效。连接后才能生效。感觉怪怪的。
                    比如:刚开始可以连接,1min后执行下面两行代码
                    static uint8 advType = GAP_ADTYPE_ADV_NONCONN_IND;   // use non-connectable advertisements
                    GAPRole_SetParameter( GAPROLE_ADV_EVENT_TYPE, sizeof( uint8 ), &advType );
执行后不可以变为不可连接状态,需要手机连接后才行。或者把这段代码放在void SimpleBLEPeripheral_Init( uint8 task_id )中才可以。
想请问一下各位大侠,是不是有一个更新参数的函数,更新后就可以了。
谢谢

回帖(3)

蒋美燕

2019-10-15 10:20:51
 GAPRole_SetParameter生效有个延迟,需要在建立连接一段时间后才发送请求
如果想要立即生效,请使用GAPRole_SendUpdateParam 
举报

h1654155275.5994

2019-10-15 10:29:30
引用: bctwerwer 发表于 2019-10-15 10:42
 GAPRole_SetParameter生效有个延迟,需要在建立连接一段时间后才发送请求
如果想要立即生效,请使用GAPRole_SendUpdateParam 

Viki Shi 
谢谢您的回复,我这边尝试了一下关闭广播
                                                          修改参数
                                                         延迟1s钟
                                                          打开广播
就可以了,协议栈部分理解还不是很清楚,谢谢您的指导
举报

蒋美燕

2019-10-15 10:40:09
引用: uuwjjfsf 发表于 2019-10-15 10:51
Viki Shi 
谢谢您的回复,我这边尝试了一下关闭广播
                                                          修改参数

不客气:)
举报

更多回帖

发帖
×
20
完善资料,
赚取积分