Configurable kill pin state
Co-Authored-By: AbdullahGheith <abdullahgheith@users.noreply.github.com>
This commit is contained in:
parent
3fd8ef52c5
commit
852a8d6685
3 changed files with 17 additions and 5 deletions
|
@ -245,8 +245,12 @@ millis_t max_inactive_time, // = 0
|
||||||
|
|
||||||
void setup_killpin() {
|
void setup_killpin() {
|
||||||
#if HAS_KILL
|
#if HAS_KILL
|
||||||
|
#if KILL_PIN_STATE
|
||||||
|
SET_INPUT_PULLDOWN(KILL_PIN);
|
||||||
|
#else
|
||||||
SET_INPUT_PULLUP(KILL_PIN);
|
SET_INPUT_PULLUP(KILL_PIN);
|
||||||
#endif
|
#endif
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
void setup_powerhold() {
|
void setup_powerhold() {
|
||||||
|
@ -496,7 +500,7 @@ inline void manage_inactivity(const bool ignore_stepper_queue=false) {
|
||||||
// -------------------------------------------------------------------------------
|
// -------------------------------------------------------------------------------
|
||||||
static int killCount = 0; // make the inactivity button a bit less responsive
|
static int killCount = 0; // make the inactivity button a bit less responsive
|
||||||
const int KILL_DELAY = 750;
|
const int KILL_DELAY = 750;
|
||||||
if (!READ(KILL_PIN))
|
if (kill_state())
|
||||||
killCount++;
|
killCount++;
|
||||||
else if (killCount > 0)
|
else if (killCount > 0)
|
||||||
killCount--;
|
killCount--;
|
||||||
|
@ -770,10 +774,10 @@ void minkill(const bool steppers_off/*=false*/) {
|
||||||
#if HAS_KILL
|
#if HAS_KILL
|
||||||
|
|
||||||
// Wait for kill to be released
|
// Wait for kill to be released
|
||||||
while (!READ(KILL_PIN)) watchdog_refresh();
|
while (kill_state()) watchdog_refresh();
|
||||||
|
|
||||||
// Wait for kill to be pressed
|
// Wait for kill to be pressed
|
||||||
while (READ(KILL_PIN)) watchdog_refresh();
|
while (!kill_state()) watchdog_refresh();
|
||||||
|
|
||||||
void (*resetFunc)() = 0; // Declare resetFunc() at address 0
|
void (*resetFunc)() = 0; // Declare resetFunc() at address 0
|
||||||
resetFunc(); // Jump to address 0
|
resetFunc(); // Jump to address 0
|
||||||
|
|
|
@ -110,6 +110,13 @@ void protected_pin_err();
|
||||||
inline void suicide() { OUT_WRITE(SUICIDE_PIN, SUICIDE_PIN_INVERTING); }
|
inline void suicide() { OUT_WRITE(SUICIDE_PIN, SUICIDE_PIN_INVERTING); }
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#if HAS_KILL
|
||||||
|
#ifndef KILL_PIN_STATE
|
||||||
|
#define KILL_PIN_STATE LOW
|
||||||
|
#endif
|
||||||
|
inline bool kill_state() { return READ(KILL_PIN) == KILL_PIN_STATE; }
|
||||||
|
#endif
|
||||||
|
|
||||||
#if ENABLED(G29_RETRY_AND_RECOVER)
|
#if ENABLED(G29_RETRY_AND_RECOVER)
|
||||||
void event_probe_recover();
|
void event_probe_recover();
|
||||||
void event_probe_failure();
|
void event_probe_failure();
|
||||||
|
|
|
@ -1683,8 +1683,9 @@
|
||||||
SERIAL_EOL();
|
SERIAL_EOL();
|
||||||
|
|
||||||
#if HAS_KILL
|
#if HAS_KILL
|
||||||
SERIAL_ECHOLNPAIR("Kill pin on :", int(KILL_PIN), " state:", READ(KILL_PIN));
|
SERIAL_ECHOLNPAIR("Kill pin on :", int(KILL_PIN), " state:", int(kill_state()));
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
SERIAL_EOL();
|
SERIAL_EOL();
|
||||||
serial_delay(50);
|
serial_delay(50);
|
||||||
|
|
||||||
|
|
Reference in a new issue