Merge pull request #965 from bq/forced_heating_stop
Fixed stop print LCD function on M104
This commit is contained in:
commit
4c823224b0
|
@ -1945,14 +1945,16 @@ void process_commands()
|
|||
|
||||
/* See if we are heating up or cooling down */
|
||||
target_direction = isHeatingHotend(tmp_extruder); // true if heating, false if cooling
|
||||
|
||||
cancel_heatup = false;
|
||||
|
||||
#ifdef TEMP_RESIDENCY_TIME
|
||||
long residencyStart;
|
||||
residencyStart = -1;
|
||||
/* continue to loop until we have reached the target temp
|
||||
_and_ until TEMP_RESIDENCY_TIME hasn't passed since we reached it */
|
||||
while((residencyStart == -1) ||
|
||||
(residencyStart >= 0 && (((unsigned int) (millis() - residencyStart)) < (TEMP_RESIDENCY_TIME * 1000UL))) ) {
|
||||
while((!cancel_heatup)&&((residencyStart == -1) ||
|
||||
(residencyStart >= 0 && (((unsigned int) (millis() - residencyStart)) < (TEMP_RESIDENCY_TIME * 1000UL)))) ) {
|
||||
#else
|
||||
while ( target_direction ? (isHeatingHotend(tmp_extruder)) : (isCoolingHotend(tmp_extruder)&&(CooldownNoWait==false)) ) {
|
||||
#endif //TEMP_RESIDENCY_TIME
|
||||
|
@ -2008,10 +2010,11 @@ void process_commands()
|
|||
CooldownNoWait = false;
|
||||
}
|
||||
codenum = millis();
|
||||
|
||||
|
||||
cancel_heatup = false;
|
||||
target_direction = isHeatingBed(); // true if heating, false if cooling
|
||||
|
||||
while ( target_direction ? (isHeatingBed()) : (isCoolingBed()&&(CooldownNoWait==false)) )
|
||||
while ( (target_direction)&&(!cancel_heatup) ? (isHeatingBed()) : (isCoolingBed()&&(CooldownNoWait==false)) )
|
||||
{
|
||||
if(( millis() - codenum) > 1000 ) //Print Temp Reading every 1 second while heating up.
|
||||
{
|
||||
|
|
|
@ -19,6 +19,7 @@ int absPreheatHotendTemp;
|
|||
int absPreheatHPBTemp;
|
||||
int absPreheatFanSpeed;
|
||||
|
||||
bool cancel_heatup = false ;
|
||||
|
||||
#ifdef ULTIPANEL
|
||||
static float manual_feedrate[] = MANUAL_FEEDRATE;
|
||||
|
@ -194,7 +195,7 @@ static void lcd_status_screen()
|
|||
currentMenu = lcd_main_menu;
|
||||
encoderPosition = 0;
|
||||
lcd_quick_feedback();
|
||||
lcd_implementation_init(); // to maybe revive the LCD if static electricity killed it.
|
||||
lcd_implementation_init(); // to maybe revive the LCD if static electricity killed it.
|
||||
}
|
||||
|
||||
#ifdef ULTIPANEL_FEEDMULTIPLY
|
||||
|
@ -256,6 +257,8 @@ static void lcd_sdcard_stop()
|
|||
enquecommand_P(PSTR(SD_FINISHED_RELEASECOMMAND));
|
||||
}
|
||||
autotempShutdown();
|
||||
|
||||
cancel_heatup = true;
|
||||
}
|
||||
|
||||
/* Menu implementation */
|
||||
|
|
|
@ -42,6 +42,8 @@
|
|||
extern int absPreheatHotendTemp;
|
||||
extern int absPreheatHPBTemp;
|
||||
extern int absPreheatFanSpeed;
|
||||
|
||||
extern bool cancel_heatup;
|
||||
|
||||
void lcd_buzz(long duration,uint16_t freq);
|
||||
bool lcd_clicked();
|
||||
|
|
Loading…
Reference in a new issue