#ifndef _FOC_CORE_H__ #define _FOC_CORE_H__ #include "foc_type.h" #define Default_DC_iLimit 40 #define Default_Spd_Limit 2000 void PMSM_FOC_CoreInit(void); void PMSM_FOC_Schedule(void); void PMSM_FOC_Start(u8 nCtrlMode); void PMSM_FOC_Stop(void); void PMSM_FOC_iBusLimit(_s16q5_t ibusLimit); void PMSM_FOC_SpeedLimit(_s32q4_t speedLimit); float PMSM_FOC_GetSpeedLimit(void); void PMSM_FOC_VbusVoltage(_s16q5_t vbusVol); void PMSM_FOC_SetCtrlMode(uint8_T mode); void PMSM_FOC_SetOpenVdq(_s16q5_t vd, _s16q5_t vq); bool PMSM_FOC_EnableCruise(boolean_T enable); bool PMSM_FOC_Set_Speed(float rpm); bool PMSM_FOC_Set_Current(float current); bool PMSM_FOC_Set_CruiseSpeed(float rpm); void PMSM_FOC_HallCalibrate(boolean_T b_caliHall, _s16q5_t open_vd); float PMSM_FOC_GetSpeed(void); void PMSM_FOC_SetErrCode(u8 code); u8 PMSM_FOC_GetErrCode(void); bool PMSM_FOC_Lock_Motor(bool lock); void PMSM_FOC_Brake(bool brake); float PMSM_FOC_Get_iDC(void); #endif /* _FOC_CORE_H__ */