void motor_rtctl_get_input_voltage_current(float* out_voltage, float* out_current) { if (out_voltage) { *out_voltage = motor_adc_convert_input_voltage(_state.input_voltage_raw); } if (out_current) { *out_current = motor_adc_convert_input_current(_state.input_current); } }
void motor_rtctl_get_input_voltage_current(float* out_voltage, float* out_current) { int volt = 0, curr = 0; if (motor_rtctl_get_state() == MOTOR_RTCTL_STATE_IDLE) { const struct motor_adc_sample smpl = motor_adc_get_last_sample(); volt = smpl.input_voltage; curr = smpl.input_current; } else { volt = _state.input_voltage; curr = _state.input_current; } if (out_voltage) { *out_voltage = motor_adc_convert_input_voltage(volt); } if (out_current) { *out_current = motor_adc_convert_input_current(curr); } }