按照标准协议栈,在连接状态下,事件间隔时处于PM2状态,电流应该在1uA左右,但我的设备测试电流达870uA,通过抓包,截图如下:
问题:在蓝牙连接状态下,功耗偏大的原因是什么?
另外,在蓝牙断开情况下,电流很小,在1uA左右
user5014962:
按照标准协议栈,在连接状态下,事件间隔时处于PM2状态,电流应该在几uA,但我的设备测试电流达870uA,通过抓包,截图如下:
PS:当连接断开后,广播间隔期间,电流在10uA左右,应该进入了MP2
Viki Shi:
蓝牙连接的时候本身就是很耗费电流的,所以省电流的方式是无任务时即进入睡眠
user5014962:
回复 Viki Shi:
谢谢关注,我还是不太理解,通过如下两步我想更改连接间隔时间(但没有成功):
1.使能更新请求:#define DEFAULT_ENABLE_UPDATE_REQUEST TRUE
2.设置最大最小连接间隔(我理解就是有数据传输时用最小间隔,无数据传输时用最大间隔)
#define DEFAULT_DESIRED_MIN_CONN_INTERVAL 80 //100ms
#define DEFAULT_DESIRED_MAX_CONN_INTERVAL 3200 //4s
但是我通过抓包发现,连接间隔时间一直保持在30ms(无论是否有数据传输):
无数据传输时:
有数据传输时:
Viki Shi:
回复 user5014962:
连接参数的修改请参考FAQ: http://processors.wiki.ti.com/index.php/BLE_-_FAQ#Parameter_update_request
另外也有个比较详细的中文文档,供参考:http://blog.csdn.net/zzfenglin/article/details/51304084
user5014962:
回复 Viki Shi:
谢谢!之前看过此类文章,我现在怀疑是IOS有限制,拒绝了我的参数更新,但不知道限制是什么?
Viki Shi:
回复 user5014962:
这个确实有可能, 不同手机对连接参数的定义不一样,建议到IOS网站查找具体规定