From 33e00b6cd60248d0399e63aa637eaca0b8f3e112 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Sat, 16 Sep 2017 01:07:00 -0500 Subject: [PATCH] Move M3-M5 to cpp --- Marlin/src/Marlin.cpp | 4 ---- Marlin/src/gcode/control/{M3-M5.h => M3-M5.cpp} | 17 +++++++++++++---- Marlin/src/gcode/gcode.cpp | 16 +++++----------- 3 files changed, 18 insertions(+), 19 deletions(-) rename Marlin/src/gcode/control/{M3-M5.h => M3-M5.cpp} (95%) diff --git a/Marlin/src/Marlin.cpp b/Marlin/src/Marlin.cpp index 6a30cd6d5..2493e3fdf 100644 --- a/Marlin/src/Marlin.cpp +++ b/Marlin/src/Marlin.cpp @@ -357,10 +357,6 @@ void suicide() { ***************** GCode Handlers ***************** **************************************************/ -#if ENABLED(SPINDLE_LASER_ENABLE) - #include "gcode/control/M3-M5.h" -#endif - #include "gcode/control/M17.h" #if ENABLED(ADVANCED_PAUSE_FEATURE) diff --git a/Marlin/src/gcode/control/M3-M5.h b/Marlin/src/gcode/control/M3-M5.cpp similarity index 95% rename from Marlin/src/gcode/control/M3-M5.h rename to Marlin/src/gcode/control/M3-M5.cpp index c7d1ef502..e361dc126 100644 --- a/Marlin/src/gcode/control/M3-M5.h +++ b/Marlin/src/gcode/control/M3-M5.cpp @@ -20,6 +20,13 @@ * */ +#include "../../inc/MarlinConfig.h" + +#if ENABLED(SPINDLE_LASER_ENABLE) + +#include "../gcode.h" +#include "../../module/stepper.h" + /** * M3: Spindle Clockwise * M4: Spindle Counter-clockwise @@ -70,7 +77,7 @@ inline void ocr_val_mode() { analogWrite(SPINDLE_LASER_PWM_PIN, spindle_laser_power); } -void gcode_M3_M4(bool is_M3) { +void GcodeSuite::M3_M4(bool is_M3) { stepper.synchronize(); // wait until previous movement commands (G0/G0/G2/G3) have completed before playing with the spindle #if SPINDLE_DIR_CHANGE @@ -118,10 +125,12 @@ void gcode_M3_M4(bool is_M3) { } /** -* M5 turn off spindle -*/ -void gcode_M5() { + * M5 turn off spindle + */ +void GcodeSuite::M5() { stepper.synchronize(); WRITE(SPINDLE_LASER_ENABLE_PIN, !SPINDLE_LASER_ENABLE_INVERT); delay_for_power_down(); } + +#endif // SPINDLE_LASER_ENABLE diff --git a/Marlin/src/gcode/gcode.cpp b/Marlin/src/gcode/gcode.cpp index 08265d898..e69c9fce6 100644 --- a/Marlin/src/gcode/gcode.cpp +++ b/Marlin/src/gcode/gcode.cpp @@ -116,8 +116,6 @@ void GcodeSuite::dwell(millis_t time) { // // Placeholders for non-migrated codes // -extern void gcode_M3_M4(bool is_M3); -extern void gcode_M5(); extern void gcode_M17(); extern void gcode_M18_M84(); extern void gcode_M20(); @@ -417,16 +415,12 @@ void GcodeSuite::process_next_command() { #endif // ULTIPANEL #if ENABLED(SPINDLE_LASER_ENABLE) - case 3: - gcode_M3_M4(true); // M3: turn spindle/laser on, set laser/spindle power/speed, set rotation direction CW - break; // synchronizes with movement commands - case 4: - gcode_M3_M4(false); // M4: turn spindle/laser on, set laser/spindle power/speed, set rotation direction CCW - break; // synchronizes with movement commands - case 5: - gcode_M5(); // M5 - turn spindle/laser off - break; // synchronizes with movement commands + // These synchronize with movement commands... + case 3: M3_M4(true ); break; // M3: turn spindle/laser on, set laser/spindle power/speed, set rotation direction CW + case 4: M3_M4(false); break; // M4: turn spindle/laser on, set laser/spindle power/speed, set rotation direction CCW + case 5: M5(); break; // M5 - turn spindle/laser off #endif + case 17: // M17: Enable all stepper motors gcode_M17(); break;