Bayley Wang
/
foc-ed_in_the_bot_compact
robot
Diff: main.cpp
- Revision:
- 232:47f6cf4f9126
- Parent:
- 231:753ec371b153
- Child:
- 233:2ca26ab47b4f
--- a/main.cpp Sat Nov 10 06:50:53 2018 +0000 +++ b/main.cpp Sat Nov 10 08:37:08 2018 +0000 @@ -20,6 +20,8 @@ #include "derived.h" #include "main.h" +#include "errors.h" + IOStruct io; ReadDataStruct read; FOCStruct foc; @@ -109,11 +111,7 @@ case MODE_RUN: break; case MODE_ZERO: - if (control.user_cmd > 0.5f) { - va = 0.9f; vb = -0.9f; vc = -0.9f; - } else { - va = 0.0f; vb = 0.0f; vc = 0.0f; - } + //duty cycles set by calibrate_position() break; case MODE_CHR: //i have no idea lol; @@ -133,10 +131,12 @@ va = 0.0f; vb = 0.0f; vc = 0.0f; } - //output to timers - set_dtc(io.a, 0.5f + 0.5f * va * LINEAR_MODULATION_MAX); - set_dtc(io.b, 0.5f + 0.5f * vb * LINEAR_MODULATION_MAX); - set_dtc(io.c, 0.5f + 0.5f * vc * LINEAR_MODULATION_MAX); + //output to timers (some of the calibration modes may want to override this) + if (!mode_overrides_timers()) { + set_dtc(io.a, 0.5f + 0.5f * va * LINEAR_MODULATION_MAX); + set_dtc(io.b, 0.5f + 0.5f * vb * LINEAR_MODULATION_MAX); + set_dtc(io.c, 0.5f + 0.5f * vc * LINEAR_MODULATION_MAX); + } } void slow_loop() {