avoid string parsing
This commit is contained in:
parent
51952ead3d
commit
944133bd45
12
fw/main.c
12
fw/main.c
@ -385,9 +385,9 @@ uint16_t pid(int16_t delta, int16_t max_duty)
|
|||||||
prev_t = t;
|
prev_t = t;
|
||||||
|
|
||||||
// PID coefficients
|
// PID coefficients
|
||||||
const s32 kp = FR_numstr("1.1700", R);
|
const s32 kp = FR_NUM(1, 170, 3, R);
|
||||||
const s32 ki = FR_numstr("0.05000", R);
|
const s32 ki = FR_NUM(0, 050, 3, R);
|
||||||
const s32 kd = FR_numstr("0.07000", R);
|
const s32 kd = FR_NUM(0, 070, 3, R);
|
||||||
s32 e = 0;
|
s32 e = 0;
|
||||||
e = FR_FixAddSat(e, FR_FixMulSat(err_p, kp));
|
e = FR_FixAddSat(e, FR_FixMulSat(err_p, kp));
|
||||||
e = FR_FixAddSat(e, FR_FixMulSat(err_i, ki));
|
e = FR_FixAddSat(e, FR_FixMulSat(err_i, ki));
|
||||||
@ -524,7 +524,7 @@ __attribute__((noreturn)) int main(void)
|
|||||||
|
|
||||||
if (has_pd) {
|
if (has_pd) {
|
||||||
static uint16_t vbus_mv, current_ma;
|
static uint16_t vbus_mv, current_ma;
|
||||||
static volatile int16_t temp_c, tip_temp_c;
|
static int16_t temp_c, tip_temp_c;
|
||||||
static uint16_t power;
|
static uint16_t power;
|
||||||
static uint16_t duty;
|
static uint16_t duty;
|
||||||
vbus_mv = U16_FP_EMA_K4(vbus_mv, ((u32)adc_buffer[0]*VCC_MV*11)/4096);
|
vbus_mv = U16_FP_EMA_K4(vbus_mv, ((u32)adc_buffer[0]*VCC_MV*11)/4096);
|
||||||
@ -538,8 +538,8 @@ __attribute__((noreturn)) int main(void)
|
|||||||
adc_injection_conversion();
|
adc_injection_conversion();
|
||||||
u32 tip_mv = ((u32)injection_results[0]*VCC_MV)/4096;
|
u32 tip_mv = ((u32)injection_results[0]*VCC_MV)/4096;
|
||||||
// Tip calibration factors
|
// Tip calibration factors
|
||||||
const s32 tip_k = FR_numstr("0.144728", R);
|
const s32 tip_k = FR_NUM(0, 14473, 5, R);
|
||||||
const s32 tip_off = FR_numstr("0", R);
|
const s32 tip_off = FR_NUM(0, 0, 0, R);
|
||||||
int16_t tt_now = FR2I(FR_FixAddSat(FR_FixMulSat(I2FR(tip_mv, R), tip_k), tip_off), R);
|
int16_t tt_now = FR2I(FR_FixAddSat(FR_FixMulSat(I2FR(tip_mv, R), tip_k), tip_off), R);
|
||||||
tip_temp_c = I16_FP_EMA_K4(tip_temp_c, tt_now + temp_c);
|
tip_temp_c = I16_FP_EMA_K4(tip_temp_c, tt_now + temp_c);
|
||||||
if (enabled) {
|
if (enabled) {
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user