#ifndef _FOC_H__
#define _FOC_H__
#include "foc/foc_type.h"


void foc_init(void);
void foc_clear(void);
void set_dq_voltage(float d_v, float q_v);
void foc_pwm_start(bool start);
FError foc_start_motor(void);
FError foc_stop_motor(void);
int foc_hall_detect(float current, u16 *hall_table);
void foc_overide_theta(bool enable);
void foc_overide_vdq(bool enable);
void foc_overide_set_theta(float theta);
void foc_overide_set_vdq(float d, float q);
FError FOC_STM_NextState(FOCState s);
void Foc_Set_StartRamp(float final, u32 duration_ms);
FOCState FOC_STM_State(void);
void foc_current_calibrate(void);

#endif /* _FOC_H__ */

