嗨,对话框中,
我正在测试我的代码对DA14583的连续扫描,我发现的东西的功耗比我想象的要多。大约是5。07毫安。有什么办法可以减少功率吗?
我的扫描部分是做以下事情的:
cmd - >角色= GAP_OBSERVER_SCA;
空白app_scan(空白)
{
struct gapm_start_scan_cmd *cmd = KE_MSG_ALLOC(gapm_start_scan_cmd,
TASK_GAPM TASK_APP,
gapm_start_scan_cmd);
cmd - > op。代码= GAPM_SCAN_PASSIVE;
cmd - >间隔= 8000;
cmd窗口- > = 8000;
cmd - >模式= GAP_GEN_DISCOVERY;
cmd - > filt_policy = SCAN_ALLOW_ADV_ALL;
cmd - > filter_duplic = SCAN_FILT_DUPLIC_DIS;
//发送消息
ke_msg_send (cmd);
}
谢谢你!
设备:
嗨liuluan002,
大约5mA是峰值电流时,580是扫描的平均电流应该更少,如果你设置你的间隔相同的窗口,你将有大约一个平均电流大的峰值电流。尝试在间隔和窗口上使用不同的值,并确保您的间隔等于或小于您的窗口。这将降低您的功耗。
由于MT_dialog
谢谢你的回复,我的应用程序情况广播了几次不同的包,然后我关闭广播调用app_adv_stop()。我关掉广播后系统会休眠吗?我需要做更多的事情来优化能源成本吗?
嗨liuluan002,
如果你开启了睡眠模式,并且没有其他BLE事件让580服务,是的,当没有持续的活动时,你的设备应该进入睡眠状态。它会每10秒周期性地醒来,然后回到睡眠状态,如果您调用arch_ble_ext_wakeup_on(),您可以抑制这种唤醒。除此之外,我想没有别的事可做了。
由于MT_dialog