Fully guard multistepping code in Stepper::pulse_phase_isr().

This commit is contained in:
Mihail Dumitrescu
2023-12-11 15:33:48 +02:00
committed by InsanityAutomation
parent 42e4321b6f
commit 122b01d253
+4 -6
View File
@@ -1752,7 +1752,7 @@ void Stepper::isr() {
#if MINIMUM_STEPPER_PULSE || MAXIMUM_STEPPER_RATE
#define ISR_PULSE_CONTROL 1
#endif
#if ISR_PULSE_CONTROL && DISABLED(I2S_STEPPER_STREAM)
#if ISR_PULSE_CONTROL && MULTISTEPPING_LIMIT > 1 && DISABLED(I2S_STEPPER_STREAM)
#define ISR_MULTI_STEPS 1
#endif
@@ -1801,11 +1801,9 @@ void Stepper::pulse_phase_isr() {
// Just update the value we will get at the end of the loop
step_events_completed += events_to_do;
TERN_(ISR_PULSE_CONTROL, USING_TIMED_PULSE());
// Take multiple steps per interrupt (For high speed moves)
#if ISR_MULTI_STEPS
bool firstStep = true;
USING_TIMED_PULSE();
#endif
TERN_(ISR_MULTI_STEPS, bool firstStep = true);
// Direct Stepping page?
const bool is_page = current_block->is_page();
@@ -2110,7 +2108,7 @@ void Stepper::pulse_phase_isr() {
TERN_(I2S_STEPPER_STREAM, i2s_push_sample());
// TODO: need to deal with MINIMUM_STEPPER_PULSE over i2s
#if ISR_MULTI_STEPS
#if ISR_PULSE_CONTROL
START_TIMED_PULSE();
AWAIT_HIGH_PULSE();
#endif