嗨对话,
我正在连续对DA14583进行扫描测试代码,我发现功耗超出了我的想象。周围是5.07mA。有什么方法可以降低功率吗?
我的扫描部分正在做以下操作:
cmd->角色= gap_observer_sca;
void app_scan(void)
{
struct gapm_start_scan_cmd *cmd = ke_msg_alloc(gapm_start_scan_cmd,
task_gapm,task_app,
gapm_start_scan_cmd);
cmd-> op.code = 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扫描平均电流时的峰值电流,如果将间隔设置为与窗户相同的间隔,则将具有大约AVG电流与峰值电流一样大。尝试在间隔和窗口上使用不同的值进行试验,并确保间隔等于或小于窗口。这应该降低您的功耗。
谢谢mt_dialog
感谢您的回复,我的申请情况已广播了几次不同的软件包,然后我致电app_adv_stop()关闭广播。我关闭广播后,系统是否入睡?我需要做更多的事情来优化能源成本吗?
嗨liuluan002,
如果您已经启用了睡眠模式,并且没有其他BLE事件可供580服务,则是的,当没有持续的活动时,您的设备应入睡。它将定期每10秒醒来一次,然后重新入睡,如果您调用Arch_ble_ext_wakeup_on(),则可以抑制该觉醒。除此之外,我不认为还有其他事情要做。
谢谢mt_dialog