|
|
关闭bt广播接口:bool gap_br_set_bt_scan_mode(int mode, int duration) 关bt广播的方式和注意点:
以下场景,蓝牙协议栈会打开BR广播,上层应用用关闭广播方式实现关闭蓝牙时,需要在以下逻辑之后再关闭广播,可以在回调函数【typedef void (*gap_scan_mode_changed_callback)(int mode);】中,判断是关闭蓝牙场景且上报的是打开广播且是acl断连时,再关闭广播
1、断连之后,如果有配对信息,会把BR广播模式设置成可连接,如果没有配对信息,会把BR广播模式设置成可扫描可连接
2、配置蓝牙地址接口,会把BR广播模式设置成可扫描可连接 mode设置成【GAP_SCAN_MODE_NONE】,就关闭广播,设置成【GAP_SCAN_MODE_CONNECTABLE】,只可被连接不可被扫描,设置成【GAP_SCAN_MODE_CONNECTABLE_GENERAL_DISCOVERABLE】,是既可被连接也可被扫描
原则:减少唤醒次数,缩短唤醒时长
1、修改gsensor与心率唤醒周期400->960 ,可优化 62.3 +77.3 = 139.6 ua
2、合并中断减少唤醒次数优化
3、BT连接后关闭BT广播 可优化 70ua
4、关闭a核,b核日志可优化 50-60ua
5、硬浮点打开,I2C数据通信方式
6、佩戴检测策略,检测佩戴以后就通过光学检测
7、屏幕加swtich ,屏幕待机时断电,加ldo,0.2rmb成本,可优化15ua
|
|