• 易迪拓培训,专注于微波、射频、天线设计工程师的培养
首页 > 无线通信 > 技术讨论 > 如何把CC2541的连接周期改大一点?

如何把CC2541的连接周期改大一点?

录入:edatop.com     点击:
想把CC2541的连接周期改大一点,可是修改DEFAULT_DESIRED_MAX_CONN_INTERVAL那几个参数,怎么改都没效果,查了论坛说要增加 函数GAPRole_SendUpdateParam(),我把它放在初始化GAPRole_SetParameter后,如下:
GAPRole_SetParameter( GAPROLE_PARAM_UPDATE_ENABLE, sizeof( uint8 ), &enable_update_request );
GAPRole_SetParameter( GAPROLE_MIN_CONN_INTERVAL, sizeof( uint16 ), &desired_min_interval );
GAPRole_SetParameter( GAPROLE_MAX_CONN_INTERVAL, sizeof( uint16 ), &desired_max_interval );
GAPRole_SetParameter( GAPROLE_SLAVE_LATENCY, sizeof( uint16 ), &desired_slave_latency );
GAPRole_SetParameter( GAPROLE_TIMEOUT_MULTIPLIER, sizeof( uint16 ), &desired_conn_timeout );
GAPRole_SendUpdateParam(DEFAULT_DESIRED_MIN_CONN_INTERVAL,DEFAULT_DESIRED_MAX_CONN_INTERVAL,
DEFAULT_DESIRED_SLAVE_LATENCY,DEFAULT_DESIRED_CONN_TIMEOUT,1);
我也尝试加在状态变化回调函数里GAPROLE_CONNECTED后,也没有效果,请问各位,这个函数怎么用?
我是用IOS7.1测试的,连接周期一直是30ms,能否帮忙解答下,谢谢!

// Whether to enable automatic parameter update request when a connection is formed
#define DEFAULT_ENABLE_UPDATE_REQUEST         TRUE
uint8 enable_update_request = DEFAULT_ENABLE_UPDATE_REQUEST;
GAPRole_SetParameter( GAPROLE_PARAM_UPDATE_ENABLE, sizeof( uint8 ), &enable_update_request );
这样做试试,机制是 允许从机向主机发送参数更新请求,从机端接到更新请求会允许,这个方法是SimplePeripheral工程里用的,我们是用这种方法实现连接参数更改的。

设置这两个参数,实测可行。
GAP_SetParamValue( TGAP_CONN_EST_INT_MIN, 400 );//设置连接最小时间间隔 400*1.25ms=0.5s
GAP_SetParamValue( TGAP_CONN_EST_INT_MAX, 800 );//设置连接最大时间间隔 400*1.25ms=1s

上一篇:CC1101做到百分之百接收到数据吗?
下一篇:Zigbee终端如何定时接收数据和休眠?

手机天线设计培训教程详情>>

手机天线设计培训教程 国内最全面、系统、专业的手机天线设计培训课程,没有之一;是您学习手机天线设计的最佳选择...【More..

射频和天线工程师培训课程详情>>

  网站地图