休眠过程中关掉LDO4.

来源:互联网 发布:windows 最高级别权限 编辑:程序博客网 时间:2024/05/21 19:25

Bug描述:系统在待机的时候,电流为1-2mA,但是如果加上扫描头,发现待机电流为40mA。客户无法接受,要该。

解决方法: 只能在待机的时候把给扫描头供电的LDO关掉。在唤醒的时候,开启。

查了下电源管理芯片LP3972,发现可以通过配置寄存器来控制LDO4的输出与否。

具体的做法是:系统待机及唤醒,均要调用OEMPowerOff()函数,那我只要在void OEMPowerOff()的函数里面增加相关的关闭和打开LDO4的操作即可。LDO4的控制位在相关寄存器的第四位。

打开LDO4的操作如下:

UINT8 ucValue = 0;
// image power  on pmic
// ldo4  to 3.3v
PMICLIB_Read(LP3972_REG_L34VCR, &ucValue);
ucValue |=0xf0;
PMICLIB_Write(LP3972_REG_L34VCR, ucValue);

 

反之亦然,关闭LDO4的操作如下:

PMICLIB_Read(LP3972_REG_L34VCR, &ucValue);
ucValue &= 0x0F;
PMICLIB_Write(LP3972_REG_L34VCR, ucValue);
原创粉丝点击