chiark / gitweb /
Refresh of homeaxis-function
authorIan Jackson <ijackson@chiark.greenend.org.uk>
Fri, 10 Aug 2012 16:49:22 +0000 (17:49 +0100)
committerIan Jackson <ijackson@chiark.greenend.org.uk>
Fri, 10 Aug 2012 16:49:22 +0000 (17:49 +0100)
Marlin/Marlin.pde

index bb6c5aec2b412518e72a28e8a619d2b6c5e311e5..36118f89925afb1fb6837ae0f881bfd4fdb7155c 100644 (file)
@@ -582,7 +582,7 @@ static void homeaxis(int axis) {
 #define HOMEAXIS_DO_BIT(LETTER) \
   ((LETTER##_MIN_PIN > -1 && LETTER##_HOME_DIR==-1) || (LETTER##_MAX_PIN > -1 && LETTER##_HOME_DIR==1) ? 1 << LETTER##_AXIS : 0)
 
-  static PROGMEM const unsigned char doaxis =
+  const unsigned char doaxis =
     HOMEAXIS_DO_BIT(X) | 
     HOMEAXIS_DO_BIT(Y) |
     HOMEAXIS_DO_BIT(Z);
@@ -590,18 +590,18 @@ static void homeaxis(int axis) {
   if (doaxis & (1<<axis)) {
     current_position[axis] = 0;
     plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]);
-    destination[axis] = 1.5 * XYZ_CONFIG(max_length,axis) * XYZ_CONFIG(home_dir,axis);
+    destination[axis] = 1.5 * max_length(axis) * home_dir(axis);
     feedrate = homing_feedrate[axis];
     plan_buffer_line(destination[X_AXIS], destination[Y_AXIS], destination[Z_AXIS], destination[E_AXIS], feedrate/60, active_extruder);
     st_synchronize();
    
     current_position[axis] = 0;
     plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]);
-    destination[axis] = -XYZ_CONFIG(home_retract_mm,axis) * XYZ_CONFIG(home_dir,axis);
+    destination[axis] = -home_retract_mm(axis) * home_dir(axis);
     plan_buffer_line(destination[X_AXIS], destination[Y_AXIS], destination[Z_AXIS], destination[E_AXIS], feedrate/60, active_extruder);
     st_synchronize();
    
-    destination[axis] = 2*home_retract_mm[axis] * home_dir[axis];
+    destination[axis] = 2*home_retract_mm(axis) * home_dir(axis);
     feedrate = homing_feedrate[axis]/2 ; 
     plan_buffer_line(destination[X_AXIS], destination[Y_AXIS], destination[Z_AXIS], destination[E_AXIS], feedrate/60, active_extruder);
     st_synchronize();