cooldown blocking selectable by #define.

master
Bernhard 13 years ago
parent 191f36b493
commit 74d0032e25

@ -84,6 +84,11 @@
//#define BED_MAXTEMP 150 //#define BED_MAXTEMP 150
// Wait for Cooldown
// This defines if the M109 call should not block if it is cooling down.
// example: From a current temp of 220, you set M109 S200.
// if CooldownNoWait is defined M109 will not wait for the cooldown to finish
#define CooldownNoWait true
// PID settings: // PID settings:
// Uncomment the following line to enable PID support. // Uncomment the following line to enable PID support.

@ -517,7 +517,10 @@ inline void process_commands()
codenum = 0; codenum = 0;
if(code_seen('P')) codenum = code_value(); // milliseconds to wait if(code_seen('P')) codenum = code_value(); // milliseconds to wait
if(code_seen('S')) codenum = code_value() * 1000; // seconds to wait if(code_seen('S')) codenum = code_value() * 1000; // seconds to wait
st_synchronize();
codenum += millis(); // keep track of when we started waiting codenum += millis(); // keep track of when we started waiting
while(millis() < codenum ){ while(millis() < codenum ){
manage_heater(); manage_heater();
} }
@ -740,7 +743,7 @@ inline void process_commands()
while((target_direction ? (isHeatingHotend0()) : (isCoolingHotend0())) || while((target_direction ? (isHeatingHotend0()) : (isCoolingHotend0())) ||
(residencyStart > -1 && (millis() - residencyStart) < TEMP_RESIDENCY_TIME*1000) ) { (residencyStart > -1 && (millis() - residencyStart) < TEMP_RESIDENCY_TIME*1000) ) {
#else #else
while ( target_direction ? (isHeatingHotend0()) : (isCoolingHotend0()) ) { while ( target_direction ? (isHeatingHotend0()) : (isCoolingHotend0()&&(CooldownNoWait==false)) ) {
#endif //TEMP_RESIDENCY_TIME #endif //TEMP_RESIDENCY_TIME
if( (millis() - codenum) > 1000 ) if( (millis() - codenum) > 1000 )
{ //Print Temp Reading every 1 second while heating up/cooling down { //Print Temp Reading every 1 second while heating up/cooling down

Loading…
Cancel
Save