Przeglądaj źródła

Split up endstop_move functions

Scott Lahteine 9 lat temu
rodzic
commit
e69916d1bd
1 zmienionych plików z 21 dodań i 15 usunięć
  1. 21
    15
      Marlin/Marlin_main.cpp

+ 21
- 15
Marlin/Marlin_main.cpp Wyświetl plik

1582
 //
1582
 //
1583
 //  - Save current feedrates
1583
 //  - Save current feedrates
1584
 //  - Reset the rate multiplier
1584
 //  - Reset the rate multiplier
1585
-//  - Enable the endstops
1586
 //  - Reset the command timeout
1585
 //  - Reset the command timeout
1586
+//  - Enable the endstops (for endstop moves)
1587
 //
1587
 //
1588
 // clean_up_after_endstop_move() restores
1588
 // clean_up_after_endstop_move() restores
1589
 // feedrates, sets endstops back to global state.
1589
 // feedrates, sets endstops back to global state.
1590
 //
1590
 //
1591
-static void setup_for_endstop_move() {
1591
+static void setup_for_endstop_or_probe_move() {
1592
+  #if ENABLED(DEBUG_LEVELING_FEATURE)
1593
+    if (DEBUGGING(LEVELING)) DEBUG_POS("setup_for_endstop_or_probe_move", current_position);
1594
+  #endif
1592
   saved_feedrate = feedrate;
1595
   saved_feedrate = feedrate;
1593
   saved_feedrate_multiplier = feedrate_multiplier;
1596
   saved_feedrate_multiplier = feedrate_multiplier;
1594
   feedrate_multiplier = 100;
1597
   feedrate_multiplier = 100;
1595
   refresh_cmd_timeout();
1598
   refresh_cmd_timeout();
1596
-  #if ENABLED(DEBUG_LEVELING_FEATURE)
1597
-    if (DEBUGGING(LEVELING)) SERIAL_ECHOLNPGM("setup_for_endstop_move > endstops.enable()");
1598
-  #endif
1599
+}
1600
+static void setup_for_endstop_move() {
1601
+  setup_for_endstop_or_probe_move();
1599
   endstops.enable();
1602
   endstops.enable();
1600
 }
1603
 }
1601
 
1604
 
1602
 #if HAS_BED_PROBE
1605
 #if HAS_BED_PROBE
1603
 
1606
 
1604
-  static void clean_up_after_endstop_move() {
1607
+  static void clean_up_after_endstop_or_probe_move() {
1605
     #if ENABLED(DEBUG_LEVELING_FEATURE)
1608
     #if ENABLED(DEBUG_LEVELING_FEATURE)
1606
-      if (DEBUGGING(LEVELING)) SERIAL_ECHOLNPGM("clean_up_after_endstop_move > endstops.not_homing()");
1609
+      if (DEBUGGING(LEVELING)) DEBUG_POS("clean_up_after_endstop_or_probe_move", current_position);
1607
     #endif
1610
     #endif
1608
-    endstops.not_homing();
1609
     feedrate = saved_feedrate;
1611
     feedrate = saved_feedrate;
1610
     feedrate_multiplier = saved_feedrate_multiplier;
1612
     feedrate_multiplier = saved_feedrate_multiplier;
1611
     refresh_cmd_timeout();
1613
     refresh_cmd_timeout();
1612
   }
1614
   }
1615
+  static void clean_up_after_endstop_move() {
1616
+    clean_up_after_endstop_or_probe_move();
1617
+    endstops.not_homing();
1618
+  }
1613
 
1619
 
1614
   #if ENABLED(DELTA)
1620
   #if ENABLED(DELTA)
1615
     /**
1621
     /**
3475
 
3481
 
3476
     stepper.synchronize();
3482
     stepper.synchronize();
3477
 
3483
 
3478
-    setup_for_endstop_move();
3484
+    setup_for_endstop_or_probe_move();
3479
 
3485
 
3480
     feedrate = homing_feedrate[Z_AXIS];
3486
     feedrate = homing_feedrate[Z_AXIS];
3481
 
3487
 
3589
         if (DEBUGGING(LEVELING)) DEBUG_POS("> probing complete", current_position);
3595
         if (DEBUGGING(LEVELING)) DEBUG_POS("> probing complete", current_position);
3590
       #endif
3596
       #endif
3591
 
3597
 
3592
-      clean_up_after_endstop_move();
3598
+      clean_up_after_endstop_or_probe_move();
3593
 
3599
 
3594
       #if ENABLED(DELTA)
3600
       #if ENABLED(DELTA)
3595
 
3601
 
3715
                                   ABL_PROBE_PT_3_Y + home_offset[Y_AXIS],
3721
                                   ABL_PROBE_PT_3_Y + home_offset[Y_AXIS],
3716
                                   current_position[Z_AXIS] + Z_RAISE_BETWEEN_PROBINGS,
3722
                                   current_position[Z_AXIS] + Z_RAISE_BETWEEN_PROBINGS,
3717
                                   p3, verbose_level);
3723
                                   p3, verbose_level);
3718
-      clean_up_after_endstop_move();
3724
+      clean_up_after_endstop_or_probe_move();
3719
       if (!dryrun) set_bed_level_equation_3pts(z_at_pt_1, z_at_pt_2, z_at_pt_3);
3725
       if (!dryrun) set_bed_level_equation_3pts(z_at_pt_1, z_at_pt_2, z_at_pt_3);
3720
 
3726
 
3721
     #endif // !AUTO_BED_LEVELING_GRID
3727
     #endif // !AUTO_BED_LEVELING_GRID
3830
    */
3836
    */
3831
   inline void gcode_G30() {
3837
   inline void gcode_G30() {
3832
 
3838
 
3833
-    setup_for_endstop_move();
3839
+    setup_for_endstop_or_probe_move();
3834
 
3840
 
3835
     deploy_z_probe();
3841
     deploy_z_probe();
3836
 
3842
 
3849
 
3855
 
3850
     stow_z_probe();
3856
     stow_z_probe();
3851
 
3857
 
3852
-    clean_up_after_endstop_move();
3858
+    clean_up_after_endstop_or_probe_move();
3853
 
3859
 
3854
     report_current_position();
3860
     report_current_position();
3855
   }
3861
   }
4259
      * OK, do the initial probe to get us close to the bed.
4265
      * OK, do the initial probe to get us close to the bed.
4260
      * Then retrace the right amount and use that in subsequent probes
4266
      * Then retrace the right amount and use that in subsequent probes
4261
      */
4267
      */
4262
-    setup_for_endstop_move();
4268
+    setup_for_endstop_or_probe_move();
4263
 
4269
 
4264
     // Height before each probe (except the first)
4270
     // Height before each probe (except the first)
4265
     float z_between = home_offset[Z_AXIS] + (deploy_probe_for_each_reading ? Z_RAISE_BEFORE_PROBING : Z_RAISE_BETWEEN_PROBINGS);
4271
     float z_between = home_offset[Z_AXIS] + (deploy_probe_for_each_reading ? Z_RAISE_BEFORE_PROBING : Z_RAISE_BETWEEN_PROBINGS);
4413
     SERIAL_PROTOCOL_F(sigma, 6);
4419
     SERIAL_PROTOCOL_F(sigma, 6);
4414
     SERIAL_EOL; SERIAL_EOL;
4420
     SERIAL_EOL; SERIAL_EOL;
4415
 
4421
 
4416
-    clean_up_after_endstop_move();
4422
+    clean_up_after_endstop_or_probe_move();
4417
 
4423
 
4418
     report_current_position();
4424
     report_current_position();
4419
   }
4425
   }

Ładowanie…
Anuluj
Zapisz