Poniżej masz gotowe pytanie po angielsku na forum MPS:
Hello,
I am using the MP2722 in a single-cell Li-Po application. The system is powered from SYS, the battery is connected to BATT/BATTSNS,
I would like to use the MP2722 status registers to detect a low battery condition and put my host MCU into deep sleep.
My configuration:
REG06h SYS_MIN[2:0] = 100b
VSYS_MIN = 3.588 V, default setting
VIN is absent:
REG12h = 0b00000110
VIN_GD = 0
VIN_RDY = 0
VSYS_STAT = 1
WATCHDOG_FAULT = 1
Measured voltages:
BATT pin: approximately 3.20 V
BATTSNS pin: approximately 3.20 V
SYS pin: approximately 3.15 V
According to the datasheet, REG12h.VSYS_STAT is described as:
0: VBATT < VSYS_MIN
1: VBATT > VSYS_MIN
Since the measured battery voltage is around 3.20 V and VSYS_MIN is configured to 3.588 V, I expected VSYS_STAT to be 0. However, it remains 1 (V_IN is absent)
I also found in the datasheet that when the input source is absent, the BATTFET turns fully on and passes battery power to the system through a low-impedance path. The VSYS_MIN + VTRACK regulation seems to apply when an input source is present and the buck converter has started.
Could you please clarify the intended behavior of VSYS_STAT?
My questions are:
-
Is
REG12h.VSYS_STATvalid only whenVINis present and the buck converter is operating? -
Should
VSYS_STATbe ignored whenVIN_GD = 0? -
Is it expected that
VSYS_STAT = 1even whenVBATT < VSYS_MIN, if the system is running only from the battery? -
What is the recommended register/status bit for detecting low battery in battery-only operation?
-
Should I use
REG16h.BATT_LOW_STATinstead, or is an external ADC measurement ofVBATTrecommended for host deep-sleep decisions?