Hello,
I have a few questions regarding the nPM1300 current measurements:
-
As far as I understand, there are two ways to trigger a current measurement:
- By writing to the
TASKIBATMEASURE
register (mentioned only in the register documentation). - By enabling auto measurement through
ADCIBATMEASEN
and triggering a VBAT measurement usingTASKVBATMEASURE
.
Could you confirm if this understanding is correct?
- By writing to the
-
Once a measurement is completed, I believe the current measurement results can be found in:
ADCVBAT2RESULTMSB
- The
VBAT2RESULTLSB
field of theADCGP1RESULTLSBS
register.
Is this correct?
-
Regarding the conversion of measurements into a current value, the formula for this is not documented.
IBAT=(IBAT_ADC / 1023) × IFS_IBAT
Would the following formula be accurate?where:
IBAT_ADC
is the ADC value derived from the above registers.IFS_IBAT
is the full-scale current for IBAT measurement.
If this formula is incorrect, could you provide the correct one?
-
I found documentation about the full-scale current (
IFS_IBAT
) in section 7.1.8 of the PS v1.1.
Specifically, it seems dependent on the current flow direction returned in the bits `BCHARGERMODE` of register `ADCIBATMEASSTATUS`:- For a value of
01
(battery discharging), the full-scale current is calculated as: IFS_IBAT=(Weighted sum of registers BCHGISETDISCHARGEMSB and BCHGISETDISCHARGELSB) × 0.836 - For a value of
11
(battery charging), the full-scale current is: IFS_IBAT=(Weighted sum of registers BCHGISETMSB and BCHGISETLSB) × 1.25
I have a few questions here:
- Are
01
and11
binary values, and are these the only two possible values for BCHARGERMODE? I am currently reading 00. - When referring to the "weighted sum" of the respective charge and discharge current settings registers, does this include only the 10-bit value, or is there additional processing involved?
- For a value of
The voltage measurements are well-documented, but I found the current measurement documentation lacking.
Thank you for your assistance!