Merge pull request #176 from blddk/experimental
Error with DELAY_ENABLE Thanks to blddk
This commit is contained in:
commit
aab62de29c
3 changed files with 34 additions and 2 deletions
|
|
@ -362,6 +362,9 @@ const int dropsegments=5; //everything with less than this number of steps will
|
||||||
//#define CONTROLLERFAN_PIN 23 //Pin used for the fan to cool controller, comment out to disable this function
|
//#define CONTROLLERFAN_PIN 23 //Pin used for the fan to cool controller, comment out to disable this function
|
||||||
#define CONTROLLERFAN_SEC 60 //How many seconds, after all motors were disabled, the fan should run
|
#define CONTROLLERFAN_SEC 60 //How many seconds, after all motors were disabled, the fan should run
|
||||||
|
|
||||||
|
//This is for controlling a fan that will keep the extruder cool.
|
||||||
|
//#define EXTRUDERFAN_PIN 66 //Pin used to control the fan, comment out to disable this function
|
||||||
|
#define EXTRUDERFAN_DEC 50 //Hotend temperature from where the fan will be turned on
|
||||||
|
|
||||||
//-----------------------------------------------------------------------
|
//-----------------------------------------------------------------------
|
||||||
// DEBUGING
|
// DEBUGING
|
||||||
|
|
|
||||||
|
|
@ -2502,12 +2502,12 @@ void plan_buffer_line(float x, float y, float z, float e, float feed_rate)
|
||||||
enable_y();
|
enable_y();
|
||||||
delayMicroseconds(DELAY_ENABLE);
|
delayMicroseconds(DELAY_ENABLE);
|
||||||
}
|
}
|
||||||
if(if(block->steps_z != 0))
|
if(block->steps_z != 0)
|
||||||
{
|
{
|
||||||
enable_z();
|
enable_z();
|
||||||
delayMicroseconds(DELAY_ENABLE);
|
delayMicroseconds(DELAY_ENABLE);
|
||||||
}
|
}
|
||||||
if(if(block->steps_e != 0))
|
if(block->steps_e != 0)
|
||||||
{
|
{
|
||||||
enable_e();
|
enable_e();
|
||||||
delayMicroseconds(DELAY_ENABLE);
|
delayMicroseconds(DELAY_ENABLE);
|
||||||
|
|
|
||||||
|
|
@ -32,6 +32,10 @@
|
||||||
void controllerFan(void);
|
void controllerFan(void);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifdef EXTRUDERFAN_PIN
|
||||||
|
void extruderFan(void);
|
||||||
|
#endif
|
||||||
|
|
||||||
// Manage heater variables. For a thermistor or AD595 thermocouple, raw values refer to the
|
// Manage heater variables. For a thermistor or AD595 thermocouple, raw values refer to the
|
||||||
// reading from the analog pin. For a MAX6675 thermocouple, the raw value is the temperature in 0.25
|
// reading from the analog pin. For a MAX6675 thermocouple, the raw value is the temperature in 0.25
|
||||||
// degree increments (i.e. 100=25 deg).
|
// degree increments (i.e. 100=25 deg).
|
||||||
|
|
@ -734,6 +738,10 @@ void PID_autotune(int PIDAT_test_temp)
|
||||||
controllerFan(); //Check if fan should be turned on to cool stepper drivers down
|
controllerFan(); //Check if fan should be turned on to cool stepper drivers down
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifdef EXTRUDERFAN_PIN
|
||||||
|
extruderFan(); //Check if fan should be turned on to cool extruder down
|
||||||
|
#endif
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#if defined (HEATER_USES_THERMISTOR) || defined (BED_USES_THERMISTOR)
|
#if defined (HEATER_USES_THERMISTOR) || defined (BED_USES_THERMISTOR)
|
||||||
|
|
@ -844,3 +852,24 @@ void controllerFan()
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifdef EXTRUDERFAN_PIN
|
||||||
|
unsigned long lastExtruderCheck = 0;
|
||||||
|
|
||||||
|
void extruderFan()
|
||||||
|
{
|
||||||
|
if ((millis() - lastExtruderCheck) >= 2500) //Not a time critical function, so we only check every 2500ms
|
||||||
|
{
|
||||||
|
lastExtruderCheck = millis();
|
||||||
|
|
||||||
|
if (analog2temp(current_raw) < EXTRUDERFAN_DEC)
|
||||||
|
{
|
||||||
|
WRITE(EXTRUDERFAN_PIN, LOW); //... turn the fan off
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
WRITE(EXTRUDERFAN_PIN, HIGH); //... turn the fan on
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue