Browse Source

Merge pull request #4993 from thinkyhead/rc_planner_deps

Sort out some header dependencies
pull/1/head
Scott Lahteine 8 years ago
committed by GitHub
parent
commit
d2da14459f
  1. 5
      Marlin/Marlin.h
  2. 45
      Marlin/Marlin_main.cpp
  3. 1
      Marlin/cardreader.cpp
  4. 29
      Marlin/planner.h
  5. 4
      Marlin/temperature.h
  6. 6
      Marlin/ultralcd.cpp

5
Marlin/Marlin.h

@ -394,11 +394,6 @@ extern uint8_t active_extruder;
void calculate_volumetric_multipliers(); void calculate_volumetric_multipliers();
// Buzzer
#if HAS_BUZZER && DISABLED(LCD_USE_I2C_BUZZER)
#include "buzzer.h"
#endif
/** /**
* Blocking movement and shorthand functions * Blocking movement and shorthand functions
*/ */

45
Marlin/Marlin_main.cpp

@ -33,20 +33,6 @@
#include "Marlin.h" #include "Marlin.h"
#if HAS_ABL
#include "vector_3.h"
#endif
#if ENABLED(AUTO_BED_LEVELING_LINEAR)
#include "qr_solve.h"
#elif ENABLED(MESH_BED_LEVELING)
#include "mesh_bed_leveling.h"
#endif
#if ENABLED(BEZIER_CURVE_SUPPORT)
#include "planner_bezier.h"
#endif
#include "ultralcd.h" #include "ultralcd.h"
#include "planner.h" #include "planner.h"
#include "stepper.h" #include "stepper.h"
@ -61,6 +47,23 @@
#include "duration_t.h" #include "duration_t.h"
#include "types.h" #include "types.h"
#if HAS_ABL
#include "vector_3.h"
#if ENABLED(AUTO_BED_LEVELING_LINEAR)
#include "qr_solve.h"
#endif
#elif ENABLED(MESH_BED_LEVELING)
#include "mesh_bed_leveling.h"
#endif
#if ENABLED(BEZIER_CURVE_SUPPORT)
#include "planner_bezier.h"
#endif
#if HAS_BUZZER && DISABLED(LCD_USE_I2C_BUZZER)
#include "buzzer.h"
#endif
#if ENABLED(USE_WATCHDOG) #if ENABLED(USE_WATCHDOG)
#include "watchdog.h" #include "watchdog.h"
#endif #endif
@ -457,6 +460,7 @@ static uint8_t target_extruder;
#endif #endif
#if ENABLED(AUTO_BED_LEVELING_BILINEAR) #if ENABLED(AUTO_BED_LEVELING_BILINEAR)
#if ENABLED(DELTA)
#define ADJUST_DELTA(V) \ #define ADJUST_DELTA(V) \
if (planner.abl_enabled) { \ if (planner.abl_enabled) { \
const float zadj = bilinear_z_offset(V); \ const float zadj = bilinear_z_offset(V); \
@ -464,6 +468,9 @@ static uint8_t target_extruder;
delta[B_AXIS] += zadj; \ delta[B_AXIS] += zadj; \
delta[C_AXIS] += zadj; \ delta[C_AXIS] += zadj; \
} }
#else
#define ADJUST_DELTA(V) if (planner.abl_enabled) { delta[Z_AXIS] += bilinear_z_offset(V); }
#endif
#elif IS_KINEMATIC #elif IS_KINEMATIC
#define ADJUST_DELTA(V) NOOP #define ADJUST_DELTA(V) NOOP
#endif #endif
@ -2218,8 +2225,8 @@ static void clean_up_after_endstop_or_probe_move() {
#elif HAS_ABL #elif HAS_ABL
if (enable != planner.abl_enabled) { if (enable != planner.abl_enabled) {
planner.abl_enabled = !planner.abl_enabled; planner.abl_enabled = enable;
if (!planner.abl_enabled) if (!enable)
set_current_from_steppers_for_axis( set_current_from_steppers_for_axis(
#if ABL_PLANAR #if ABL_PLANAR
ALL_AXES ALL_AXES
@ -4560,7 +4567,9 @@ inline void gcode_M31() {
SERIAL_ECHO_START; SERIAL_ECHO_START;
SERIAL_ECHOLNPAIR("Print time: ", buffer); SERIAL_ECHOLNPAIR("Print time: ", buffer);
#if ENABLED(AUTOTEMP)
thermalManager.autotempShutdown(); thermalManager.autotempShutdown();
#endif
} }
#if ENABLED(SDSUPPORT) #if ENABLED(SDSUPPORT)
@ -8814,9 +8823,7 @@ void set_current_from_steppers_for_axis(const AxisEnum axis) {
// For non-interpolated delta calculate every segment // For non-interpolated delta calculate every segment
for (uint16_t s = segments + 1; --s;) { for (uint16_t s = segments + 1; --s;) {
DELTA_NEXT(segment_distance[i]); DELTA_NEXT(segment_distance[i]);
DELTA_IK(); planner.buffer_line_kinematic(DELTA_VAR, _feedrate_mm_s, active_extruder);
ADJUST_DELTA(DELTA_VAR);
planner.buffer_line(delta[A_AXIS], delta[B_AXIS], delta[C_AXIS], DELTA_VAR[E_AXIS], _feedrate_mm_s, active_extruder);
} }
#endif #endif

1
Marlin/cardreader.cpp

@ -24,7 +24,6 @@
#include "ultralcd.h" #include "ultralcd.h"
#include "stepper.h" #include "stepper.h"
#include "temperature.h"
#include "language.h" #include "language.h"
#include "Marlin.h" #include "Marlin.h"

29
Marlin/planner.h

@ -34,21 +34,12 @@
#include "types.h" #include "types.h"
#include "enum.h" #include "enum.h"
#include "MarlinConfig.h" #include "Marlin.h"
#if HAS_ABL #if HAS_ABL
#include "vector_3.h" #include "vector_3.h"
#endif #endif
class Planner;
extern Planner planner;
#if IS_KINEMATIC
// for inline buffer_line_kinematic
extern float delta[ABC];
void inverse_kinematics(const float logical[XYZ]);
#endif
/** /**
* struct block_t * struct block_t
* *
@ -207,17 +198,11 @@ class Planner {
static bool is_full() { return (block_buffer_tail == BLOCK_MOD(block_buffer_head + 1)); } static bool is_full() { return (block_buffer_tail == BLOCK_MOD(block_buffer_head + 1)); }
#if HAS_ABL || ENABLED(MESH_BED_LEVELING) #if PLANNER_LEVELING
#define ARG_X float lx #define ARG_X float lx
#define ARG_Y float ly #define ARG_Y float ly
#define ARG_Z float lz #define ARG_Z float lz
#else
#define ARG_X const float &lx
#define ARG_Y const float &ly
#define ARG_Z const float &lz
#endif
#if PLANNER_LEVELING
/** /**
* Apply leveling to transform a cartesian position * Apply leveling to transform a cartesian position
@ -227,6 +212,12 @@ class Planner {
static void apply_leveling(float logical[XYZ]) { apply_leveling(logical[X_AXIS], logical[Y_AXIS], logical[Z_AXIS]); } static void apply_leveling(float logical[XYZ]) { apply_leveling(logical[X_AXIS], logical[Y_AXIS], logical[Z_AXIS]); }
static void unapply_leveling(float logical[XYZ]); static void unapply_leveling(float logical[XYZ]);
#else
#define ARG_X const float &lx
#define ARG_Y const float &ly
#define ARG_Z const float &lz
#endif #endif
/** /**
@ -402,4 +393,6 @@ class Planner {
}; };
extern Planner planner;
#endif // PLANNER_H #endif // PLANNER_H

4
Marlin/temperature.h

@ -372,15 +372,15 @@ class Temperature {
*/ */
static void updatePID(); static void updatePID();
static void autotempShutdown() {
#if ENABLED(AUTOTEMP) #if ENABLED(AUTOTEMP)
static void autotempShutdown() {
if (planner.autotemp_enabled) { if (planner.autotemp_enabled) {
planner.autotemp_enabled = false; planner.autotemp_enabled = false;
if (degTargetHotend(EXTRUDER_IDX) > planner.autotemp_min) if (degTargetHotend(EXTRUDER_IDX) > planner.autotemp_min)
setTargetHotend(0, EXTRUDER_IDX); setTargetHotend(0, EXTRUDER_IDX);
} }
#endif
} }
#endif
#if ENABLED(BABYSTEPPING) #if ENABLED(BABYSTEPPING)

6
Marlin/ultralcd.cpp

@ -30,6 +30,10 @@
#include "configuration_store.h" #include "configuration_store.h"
#include "utility.h" #include "utility.h"
#if HAS_BUZZER && DISABLED(LCD_USE_I2C_BUZZER)
#include "buzzer.h"
#endif
#if ENABLED(BLTOUCH) #if ENABLED(BLTOUCH)
#include "endstops.h" #include "endstops.h"
#endif #endif
@ -581,7 +585,9 @@ void kill_screen(const char* lcd_msg) {
clear_command_queue(); clear_command_queue();
quickstop_stepper(); quickstop_stepper();
print_job_timer.stop(); print_job_timer.stop();
#if ENABLED(AUTOTEMP)
thermalManager.autotempShutdown(); thermalManager.autotempShutdown();
#endif
wait_for_heatup = false; wait_for_heatup = false;
lcd_setstatus(MSG_PRINT_ABORTED, true); lcd_setstatus(MSG_PRINT_ABORTED, true);
} }

Loading…
Cancel
Save