你好帮我
我正在使用“Extended_sleep”演示(da1468x_da15xxx_sdk_1.0.10.1072)
我在工作时需要使用1V8P。当输入“PM_Mode_extended_Sleep”时,我需要关闭1V8P
但是使用函数“pm_set_sleep_mode(pm_mode_extended_sleep)”无法关闭1v8p。
我在“sys_power_mgr.c”文件中找到 - >“apply_wfi”函数仅在“pm_mode_hibernation”时关闭电源
第1510行--------------------------------------------------------------------------------------
if(pm_current_sleep_mode == pm_mode_hibernation){
/ *自系统将关闭1V8和1V8P
*通过再充电电池(其中a
*重置/重启将发出发生的情况
* VBUS_IRQN)或更换电池。
* /
hw_cpm_ldo_io_ret_off();
}
----------------------------------------------------------------------------------------------------
因此,我在睡眠模式下添加一个函数以关闭1V8P,如下所示
-------------------------------------------------------------------------------
if(pm_current_sleep_mode == pm_mode_extended_sleep){
/ *关闭1v8p * /
UINT32_T REG = CRG_TOP-> LDO_CTRL2_REG;
if(dg_configuse_bod == 1){
REG_CLR_BIT(CRG_TOP,BOD_CTRL2_REG,BOD_1V8_PA_EN);
}
REG_SET_FIELD(CRG_TOP,LDO_CTRL2_REG,LDO_1V8_PA_RET_DISABLE,REG,1);
reg_clr_field(crg_top,ldo_ctrl2_reg,ldo_1v8_pa_on,reg);
REG_SET_FIELD(CRG_TOP,LDO_CTRL2_REG,LDO_1V8_PA_RET_DISABLE,REG,1);
crg_top-> ldo_ctrl2_reg = reg;
}
-------------------------------------------------------------------------------
但奇怪的事情发生了
当睡眠进入时,看看以下图片是1V8P:
我不能上画画
也就是说,尽管它进入睡眠模式,但它不会停止自动打开1V8P,然后自动关闭。
功耗跳跃0.5mA和0.15mA ......
如何解决这个问题?
非常感谢!
非常感谢我解决这个问题,
我把每个“DG_CONFIGPOWER_1V8P == 1”添加我的标志“(DG_CONFIGPOWER_1V8P == 1)&&(shut_down_1v8p_power == false)”
然后,当我输入睡眠模式时,我将此标志放在位置1,1V8P关闭。
但库函数不关闭1V8P功能。
建议添加未来的SDK〜
你好呀,
谢谢你的迹象。
问候,pm_dialog