Do not disable steppers when there are moves in the queue.

This commit is contained in:
Erik van der Zalm 2012-03-09 20:20:01 +01:00
parent 421264e58a
commit 387fe51a56

View File

@ -576,6 +576,7 @@ void process_commands()
saved_feedrate = feedrate; saved_feedrate = feedrate;
saved_feedmultiply = feedmultiply; saved_feedmultiply = feedmultiply;
feedmultiply = 100; feedmultiply = 100;
previous_millis_cmd = millis();
enable_endstops(true); enable_endstops(true);
@ -1314,12 +1315,11 @@ void prepare_move()
if (destination[Y_AXIS] > Y_MAX_LENGTH) destination[Y_AXIS] = Y_MAX_LENGTH; if (destination[Y_AXIS] > Y_MAX_LENGTH) destination[Y_AXIS] = Y_MAX_LENGTH;
if (destination[Z_AXIS] > Z_MAX_LENGTH) destination[Z_AXIS] = Z_MAX_LENGTH; if (destination[Z_AXIS] > Z_MAX_LENGTH) destination[Z_AXIS] = Z_MAX_LENGTH;
} }
previous_millis_cmd = millis();
plan_buffer_line(destination[X_AXIS], destination[Y_AXIS], destination[Z_AXIS], destination[E_AXIS], feedrate*feedmultiply/60/100.0, active_extruder); plan_buffer_line(destination[X_AXIS], destination[Y_AXIS], destination[Z_AXIS], destination[E_AXIS], feedrate*feedmultiply/60/100.0, active_extruder);
for(int8_t i=0; i < NUM_AXIS; i++) { for(int8_t i=0; i < NUM_AXIS; i++) {
current_position[i] = destination[i]; current_position[i] = destination[i];
} }
previous_millis_cmd = millis();
} }
void prepare_arc_move(char isclockwise) { void prepare_arc_move(char isclockwise) {
@ -1345,6 +1345,7 @@ void manage_inactivity(byte debug)
if(stepper_inactive_time) { if(stepper_inactive_time) {
if( (millis() - previous_millis_cmd) > stepper_inactive_time ) if( (millis() - previous_millis_cmd) > stepper_inactive_time )
{ {
if(blocks_queued() == false) {
disable_x(); disable_x();
disable_y(); disable_y();
disable_z(); disable_z();
@ -1353,6 +1354,7 @@ void manage_inactivity(byte debug)
disable_e2(); disable_e2();
} }
} }
}
#ifdef EXTRUDER_RUNOUT_PREVENT #ifdef EXTRUDER_RUNOUT_PREVENT
if( (millis() - previous_millis_cmd) > EXTRUDER_RUNOUT_SECONDS*1000 ) if( (millis() - previous_millis_cmd) > EXTRUDER_RUNOUT_SECONDS*1000 )
if(degHotend(active_extruder)>EXTRUDER_RUNOUT_MINTEMP) if(degHotend(active_extruder)>EXTRUDER_RUNOUT_MINTEMP)