尊敬的团队:
我可以在插入 VIN 的情况下读取正确的 VBAT 电压、但仅在插入电池的情况下会获得错误的 VBAT 电压。
我还想将 ADC_COMP1设置为监测低于3.4V 的 VBAT;如果满足标准、将通知用户电池电量不足状态。
我可以获得 ADC_COMP1中断、但 ADC 读取的 VBAT 电压不正确。
示例:
VIN 已插入- VBAT ADC 读数为3.9V
VIN 未插电- 然后我将获得 ADC_COMP1中断(标志2 = 0xC0)、VBAT ADC 读数2.7V、实际 VBAT 电压约为3.9V
[初始化寄存器]
BQ25155_RegWrite (BQ25155_MASK2、0x31);//ADC_READY、COMP1
BQ25155_RegWrite (BQ25155_ADCCTRL0、0x00);//首先禁用 ADC
BQ25155_RegWrite (BQ25155_ADCCTRL1、0x00);
BQ25155_RegWrite (BQ25155_ADCALARM_COMP1_M、0x91);//将 ADC COMP1设置为 VBAT 低阈值 MSB
BQ25155_RegWrite (BQ25155_ADCALARM_COMP1_L、0x10);//将 ADC COMP1设置为 VBAT 低阈值、低于3.4V
BQ25155_RegWrite (BQ25155_ADCALARM_COMP2_M、0x00);
BQ25155_RegWrite (BQ25155_ADCALARM_COMP2_L、0x00);
BQ25155_RegWrite (BQ25155_ADCALARM_COMP3_M、0x00);
BQ25155_RegWrite (BQ25155_ADCALARM_COMP3_L、0x00);
BQ25155_RegWrite (BQ25155_ADC_READ_EN、0x08);//启用 VBAT ADC 读取
BQ25155_RegWrite (BQ25155_ADCCTRL0、0xC3);//启用 ADC 测量周期1min
[日志输出]
bq25155_GET_BATTERY_VOLTGE_NOW - 0x7758、VBAT:2797096
低 VBAT:2797096uV、LOW_BATT_VOLT:3400000uV
标志2 - 0x80
bq25155_GET_BATTERY_VOLTGE_NOW - 0x76F1、VBAT:2787666
低 VBAT:2787666uV、LOW_BATT_VOLT:3400000uV
标志2 - 0x80
bq25155_GET_BATTERY_VOLTGE_NOW - 0x7674、VBAT:2776222
低 VBAT:2776222uV、LOW_BATT_VOLT:3400000uV
BR
Peter