Browse Source

Hack to address stuttering caused by ISR not finishing in time

(PR #138)

When the ISR does not finish in time, the timer will
wrap in the computation of the next interrupt time.

This hack replaces the correct (past) time with a time not far in the future.
pull/1/head
Scott Lahteine 9 years ago
committed by Richard Wackerbarth
parent
commit
9f462f0cf5
  1. 2
      Marlin/stepper.cpp

2
Marlin/stepper.cpp

@ -749,6 +749,8 @@ ISR(TIMER1_COMPA_vect) {
step_loops = step_loops_nominal;
}
OCR1A = (OCR1A < (TCNT1 +16)) ? (TCNT1 + 16) : OCR1A;
// If current block is finished, reset pointer
if (step_events_completed >= current_block->step_event_count) {
current_block = NULL;

Loading…
Cancel
Save