老化測試中的充電測試
做了幾天,終於把這個充電測試的部分完成了,列印的LOG是正確的,也在下位機上反覆測試了。下面程式碼是主要部分,希望在以後能學到更多知識,完成更多的專案。
void sys_ageing_charge_test_chk(void)
{
if(SYS_AGEING_TEST_MODE != sys_mng_info_ptr()->aging_test)
{
sys_bat_charge_on();
if(sys_battery_mng_ptr()->charge_on_time==0)
{
sys_battery_mng_ptr()->v_chargebat = sys_battery_mng_ptr()->v_bat*10;
}
if(++sys_battery_mng_ptr()->charge_on_time <12000 && sys_battery_mng_ptr()->v_chargebat<3900)
{
if(sys_battery_mng_ptr()->v_bat*10-sys_battery_mng_ptr()->v_chargebat>300)
{
uprintf(SYS,"enter ageing charge test ok!\r\n");
uprintf(SYS,"v_bat=%d\r\n",sys_battery_mng_ptr()->v_bat*10);
uprintf(SYS,"v_chargebat=%d\r\n",sys_battery_mng_ptr()->v_chargebat);
}
}
else if(sys_battery_mng_ptr()->v_bat*10-sys_battery_mng_ptr()->v_chargebat<300)
{
//gsm_drv_pwr_on(); //GSM power on
//gsm_drv_led_on();
//GSM_LED_CTRL(LED_STA_ON);
GSM_LED_ON();
GPS_LED_OFF();
OBD_LED_OFF();
uprintf(SYS,"enter ageing charge test err!\r\n");
sys_bat_charge_off();
}
}
}