Extend the e_steps[] from int to long for allowing more than 32,767 E steps

Probably needed for long straight lines when using high microstepping
This commit is contained in:
esenapaj 2016-09-20 19:14:48 +09:00
parent b04ed8f9c3
commit 7e9576dc5b
2 changed files with 2 additions and 2 deletions

View file

@ -95,7 +95,7 @@ volatile uint32_t Stepper::step_events_completed = 0; // The number of step even
volatile unsigned char Stepper::eISR_Rate = 200; // Keep the ISR at a low rate until needed volatile unsigned char Stepper::eISR_Rate = 200; // Keep the ISR at a low rate until needed
#if ENABLED(LIN_ADVANCE) #if ENABLED(LIN_ADVANCE)
volatile int Stepper::e_steps[E_STEPPERS]; volatile long Stepper::e_steps[E_STEPPERS];
int Stepper::extruder_advance_k = LIN_ADVANCE_K, int Stepper::extruder_advance_k = LIN_ADVANCE_K,
Stepper::final_estep_rate, Stepper::final_estep_rate,
Stepper::current_estep_rate[E_STEPPERS], Stepper::current_estep_rate[E_STEPPERS],

View file

@ -113,7 +113,7 @@ class Stepper {
static unsigned char old_OCR0A; static unsigned char old_OCR0A;
static volatile unsigned char eISR_Rate; static volatile unsigned char eISR_Rate;
#if ENABLED(LIN_ADVANCE) #if ENABLED(LIN_ADVANCE)
static volatile int e_steps[E_STEPPERS]; static volatile long e_steps[E_STEPPERS];
static int extruder_advance_k; static int extruder_advance_k;
static int final_estep_rate; static int final_estep_rate;
static int current_estep_rate[E_STEPPERS]; // Actual extruder speed [steps/s] static int current_estep_rate[E_STEPPERS]; // Actual extruder speed [steps/s]