#include "bsp/adc.h" #include "foc_type.h" #define NB_OFFSET_SAMPLES 32 #if 0 static float __inline adc_to_current(int adc){ int i_adc = (int)adc; if (i_adc > INT16_MAX){ i_adc = INT16_MAX; }else if (i_adc < -INT16_MAX) { i_adc = - INT16_MAX; } return (i_adc/65535.0f * 3.3f / 1.53f / 0.33f); } #endif void phase_current_init(current_samp_t *cs) { cs->offset_sample_count = NB_OFFSET_SAMPLES; } void phase_current_offset(current_samp_t *cs) { int samples = cs->offset_sample_count; int values = 0; while(samples-- >= 0) { values += adc_sample_insert_chan(); } cs->adc_offset_a = cs->adc_offset_b = cs->adc_offset_c = values/cs->offset_sample_count; } void phase_current_sample(current_samp_t *cs){ } u32 get_phase_sample_point(current_samp_t *cs, phase_time_t *time, u8 sector){ return 0; } void phase_current_adc_triger(current_samp_t *cs){ }