Explorar o código

如果小于0.1C放电,多判断10倍的次数,才能欠压

Signed-off-by: huhui <huhui@sharkgulf.com>
huhui %!s(int64=4) %!d(string=hai) anos
pai
achega
9a5e8c4e74
Modificáronse 1 ficheiros con 7 adicións e 1 borrados
  1. 7 1
      Application/app/sox/health.c

+ 7 - 1
Application/app/sox/health.c

@@ -254,7 +254,13 @@ void check_voltage_state(void) {
 	}else{ 
 		//check sigle cell's voltage for discharger
 		_health.charger_over_voltage = _health.sigle_cell_over_voltage = 0;
-		
+		if (abs(measure_value()->load_current) >= (MAX_HA/10.0f)) { //大于0.1C放电
+			_sigle_cell_discharger_lower_vol.max_count = 100;
+			_discharger_lower_voltage.max_count = 20;
+		}else { //小于0.1C放电多判断几次
+			_sigle_cell_discharger_lower_vol.max_count = 1000;
+			_discharger_lower_voltage.max_count = 200;
+		}
 		if ((bms_state_get()->cell_min_vol <= min_discharger_cell_vol[_health.is_work_temp_normal])){
 			if (judge_debounce(!_health.sigle_cell_lower_voltage, &_sigle_cell_discharger_lower_vol)){
 				_health.sigle_cell_lower_voltage = 1;