ソースを参照

Fix bogus timer check preventing fast LA steps to be scheduled

Simplify and fix the broken timer check when scheduling advance ticks.
This dates back to the original LA15 PR, an old bug...
Yuri D'Elia 3 年 前
コミット
173aa2deba
1 ファイル変更1 行追加1 行削除
  1. 1 1
      Firmware/stepper.cpp

+ 1 - 1
Firmware/stepper.cpp

@@ -1016,7 +1016,7 @@ FORCE_INLINE void advance_isr_scheduler() {
 
     // Schedule the next closest tick, ignoring advance if scheduled too
     // soon in order to avoid skewing the regular stepper acceleration
-    if (nextAdvanceISR != ADV_NEVER && (nextAdvanceISR + TCNT1 + 40) < nextMainISR)
+    if (nextAdvanceISR != ADV_NEVER && (nextAdvanceISR + 40) < nextMainISR)
         OCR1A = nextAdvanceISR;
     else
         OCR1A = nextMainISR;