Performance tweak: removed timediff calculations for extruder steps if the move has X or Y steps, since it is not used in that case
This commit is contained in:
parent
2f151cff4b
commit
25d00d4147
1 changed files with 4 additions and 4 deletions
|
|
@ -378,7 +378,7 @@ inline void process_commands()
|
|||
if(x_steps_to_take) x_interval = time_for_move/x_steps_to_take;
|
||||
if(y_steps_to_take) y_interval = time_for_move/y_steps_to_take;
|
||||
if(z_steps_to_take) z_interval = time_for_move/z_steps_to_take;
|
||||
if(e_steps_to_take) e_interval = time_for_move/e_steps_to_take;
|
||||
if(e_steps_to_take && (x_steps_to_take + y_steps_to_take <= 0)) e_interval = time_for_move/e_steps_to_take;
|
||||
|
||||
//#define DEBUGGING false
|
||||
#if 0
|
||||
|
|
@ -754,12 +754,12 @@ void linear_move(unsigned long x_steps_remaining, unsigned long y_steps_remainin
|
|||
}
|
||||
|
||||
if(e_steps_remaining){
|
||||
timediff=micros()-previous_micros_e;
|
||||
if (x_steps_to_take + y_steps_to_take <= 0) timediff=micros()-previous_micros_e;
|
||||
unsigned int final_e_steps_remaining = 0;
|
||||
if (steep_x && x_steps_to_take > 0) final_e_steps_remaining = e_steps_to_take * x_steps_remaining / x_steps_to_take;
|
||||
else if (steep_y && y_steps_to_take > 0) final_e_steps_remaining = e_steps_to_take * y_steps_remaining / y_steps_to_take;
|
||||
if (final_e_steps_remaining > 0) while(e_steps_remaining > final_e_steps_remaining) { do_e_step(); e_steps_remaining--; timediff-=e_interval;}
|
||||
else if (x_steps_to_take > 0 || y_steps_to_take > 0) while(e_steps_remaining) { do_e_step(); e_steps_remaining--; timediff-=e_interval;}
|
||||
if (final_e_steps_remaining > 0) while(e_steps_remaining > final_e_steps_remaining) { do_e_step(); e_steps_remaining--;}
|
||||
else if (x_steps_to_take + y_steps_to_take > 0) while(e_steps_remaining) { do_e_step(); e_steps_remaining--;}
|
||||
else while (timediff >= e_interval && e_steps_remaining) { do_e_step(); e_steps_remaining--; timediff-=e_interval;}
|
||||
}
|
||||
if( (millis() - previous_millis_heater) >= 500 ) {
|
||||
|
|
|
|||
Loading…
Reference in a new issue