浏览代码

Poll *all* enabled endstop pins (#15525)

Piotr 5 年前
父节点
当前提交
fe4c69b64a

+ 1
- 1
Marlin/src/feature/backlash.cpp 查看文件

123
 }
123
 }
124
 
124
 
125
 #if ENABLED(MEASURE_BACKLASH_WHEN_PROBING)
125
 #if ENABLED(MEASURE_BACKLASH_WHEN_PROBING)
126
-  #if USES_Z_MIN_PROBE_ENDSTOP
126
+  #if HAS_CUSTOM_PROBE_PIN
127
     #define TEST_PROBE_PIN (READ(Z_MIN_PROBE_PIN) != Z_MIN_PROBE_ENDSTOP_INVERTING)
127
     #define TEST_PROBE_PIN (READ(Z_MIN_PROBE_PIN) != Z_MIN_PROBE_ENDSTOP_INVERTING)
128
   #else
128
   #else
129
     #define TEST_PROBE_PIN (READ(Z_MIN_PIN) != Z_MIN_ENDSTOP_INVERTING)
129
     #define TEST_PROBE_PIN (READ(Z_MIN_PIN) != Z_MIN_ENDSTOP_INVERTING)

+ 2
- 2
Marlin/src/inc/Conditionals_LCD.h 查看文件

501
 #define PROBE_SELECTED (HAS_BED_PROBE || EITHER(PROBE_MANUALLY, MESH_BED_LEVELING))
501
 #define PROBE_SELECTED (HAS_BED_PROBE || EITHER(PROBE_MANUALLY, MESH_BED_LEVELING))
502
 
502
 
503
 #if HAS_BED_PROBE
503
 #if HAS_BED_PROBE
504
-  #define USES_Z_MIN_PROBE_ENDSTOP DISABLED(Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN)
505
-  #define HOMING_Z_WITH_PROBE      (Z_HOME_DIR < 0 && !USES_Z_MIN_PROBE_ENDSTOP)
504
+  #define HAS_CUSTOM_PROBE_PIN  DISABLED(Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN)
505
+  #define HOMING_Z_WITH_PROBE   (Z_HOME_DIR < 0 && !HAS_CUSTOM_PROBE_PIN)
506
   #ifndef Z_PROBE_LOW_POINT
506
   #ifndef Z_PROBE_LOW_POINT
507
     #define Z_PROBE_LOW_POINT -5
507
     #define Z_PROBE_LOW_POINT -5
508
   #endif
508
   #endif

+ 3
- 3
Marlin/src/inc/Conditionals_post.h 查看文件

825
 // Is an endstop plug used for the Z2 endstop or the bed probe?
825
 // Is an endstop plug used for the Z2 endstop or the bed probe?
826
 #define IS_Z2_OR_PROBE(A,M) ( \
826
 #define IS_Z2_OR_PROBE(A,M) ( \
827
      (Z_MULTI_ENDSTOPS && Z2_USE_ENDSTOP == _##A##M##_) \
827
      (Z_MULTI_ENDSTOPS && Z2_USE_ENDSTOP == _##A##M##_) \
828
-  || (USES_Z_MIN_PROBE_ENDSTOP && Z_MIN_PROBE_PIN == A##_##M##_PIN ) )
828
+  || (HAS_CUSTOM_PROBE_PIN && Z_MIN_PROBE_PIN == A##_##M##_PIN ) )
829
 
829
 
830
 // Is an endstop plug used for the Z3 endstop or the bed probe?
830
 // Is an endstop plug used for the Z3 endstop or the bed probe?
831
 #define IS_Z3_OR_PROBE(A,M) ( \
831
 #define IS_Z3_OR_PROBE(A,M) ( \
832
      (ENABLED(Z_TRIPLE_ENDSTOPS) && Z3_USE_ENDSTOP == _##A##M##_) \
832
      (ENABLED(Z_TRIPLE_ENDSTOPS) && Z3_USE_ENDSTOP == _##A##M##_) \
833
-  || (USES_Z_MIN_PROBE_ENDSTOP && Z_MIN_PROBE_PIN == A##_##M##_PIN ) )
833
+  || (HAS_CUSTOM_PROBE_PIN && Z_MIN_PROBE_PIN == A##_##M##_PIN ) )
834
 
834
 
835
 /**
835
 /**
836
  * Set ENDSTOPPULLUPS for active endstop switches
836
  * Set ENDSTOPPULLUPS for active endstop switches
1005
 #define HAS_Z2_MAX (PIN_EXISTS(Z2_MAX))
1005
 #define HAS_Z2_MAX (PIN_EXISTS(Z2_MAX))
1006
 #define HAS_Z3_MIN (PIN_EXISTS(Z3_MIN))
1006
 #define HAS_Z3_MIN (PIN_EXISTS(Z3_MIN))
1007
 #define HAS_Z3_MAX (PIN_EXISTS(Z3_MAX))
1007
 #define HAS_Z3_MAX (PIN_EXISTS(Z3_MAX))
1008
-#define HAS_Z_MIN_PROBE_PIN (USES_Z_MIN_PROBE_ENDSTOP && PIN_EXISTS(Z_MIN_PROBE))
1008
+#define HAS_Z_MIN_PROBE_PIN (HAS_CUSTOM_PROBE_PIN && PIN_EXISTS(Z_MIN_PROBE))
1009
 #define HAS_CALIBRATION_PIN (PIN_EXISTS(CALIBRATION))
1009
 #define HAS_CALIBRATION_PIN (PIN_EXISTS(CALIBRATION))
1010
 
1010
 
1011
 // ADC Temp Sensors (Thermistor or Thermocouple with amplifier ADC interface)
1011
 // ADC Temp Sensors (Thermistor or Thermocouple with amplifier ADC interface)

+ 13
- 25
Marlin/src/module/endstops.cpp 查看文件

243
     #endif
243
     #endif
244
   #endif
244
   #endif
245
 
245
 
246
-  #if USES_Z_MIN_PROBE_ENDSTOP
246
+  #if HAS_CUSTOM_PROBE_PIN
247
     #if ENABLED(ENDSTOPPULLUP_ZMIN_PROBE)
247
     #if ENABLED(ENDSTOPPULLUP_ZMIN_PROBE)
248
       SET_INPUT_PULLUP(Z_MIN_PROBE_PIN);
248
       SET_INPUT_PULLUP(Z_MIN_PROBE_PIN);
249
     #elif ENABLED(ENDSTOPPULLDOWN_ZMIN_PROBE)
249
     #elif ENABLED(ENDSTOPPULLDOWN_ZMIN_PROBE)
366
     ENDSTOP_HIT_TEST_Y();
366
     ENDSTOP_HIT_TEST_Y();
367
     ENDSTOP_HIT_TEST_Z();
367
     ENDSTOP_HIT_TEST_Z();
368
 
368
 
369
-    #if USES_Z_MIN_PROBE_ENDSTOP
369
+    #if HAS_CUSTOM_PROBE_PIN
370
       #define P_AXIS Z_AXIS
370
       #define P_AXIS Z_AXIS
371
       if (TEST(hit_state, Z_MIN_PROBE)) _ENDSTOP_HIT_ECHO(P, 'P');
371
       if (TEST(hit_state, Z_MIN_PROBE)) _ENDSTOP_HIT_ECHO(P, 'P');
372
     #endif
372
     #endif
443
   #if HAS_Z3_MAX
443
   #if HAS_Z3_MAX
444
     ES_REPORT(Z3_MAX);
444
     ES_REPORT(Z3_MAX);
445
   #endif
445
   #endif
446
-  #if USES_Z_MIN_PROBE_ENDSTOP
446
+  #if HAS_CUSTOM_PROBE_PIN
447
     print_es_state(READ(Z_MIN_PROBE_PIN) != Z_MIN_PROBE_ENDSTOP_INVERTING, PSTR(MSG_Z_PROBE));
447
     print_es_state(READ(Z_MIN_PROBE_PIN) != Z_MIN_PROBE_ENDSTOP_INVERTING, PSTR(MSG_Z_PROBE));
448
   #endif
448
   #endif
449
   #if HAS_FILAMENT_SENSOR
449
   #if HAS_FILAMENT_SENSOR
538
    * Check and update endstops
538
    * Check and update endstops
539
    */
539
    */
540
   #if HAS_X_MIN && !X_SPI_SENSORLESS
540
   #if HAS_X_MIN && !X_SPI_SENSORLESS
541
+    UPDATE_ENDSTOP_BIT(X, MIN);
541
     #if ENABLED(X_DUAL_ENDSTOPS)
542
     #if ENABLED(X_DUAL_ENDSTOPS)
542
-      UPDATE_ENDSTOP_BIT(X, MIN);
543
       #if HAS_X2_MIN
543
       #if HAS_X2_MIN
544
         UPDATE_ENDSTOP_BIT(X2, MIN);
544
         UPDATE_ENDSTOP_BIT(X2, MIN);
545
       #else
545
       #else
546
         COPY_LIVE_STATE(X_MIN, X2_MIN);
546
         COPY_LIVE_STATE(X_MIN, X2_MIN);
547
       #endif
547
       #endif
548
-    #else
549
-      UPDATE_ENDSTOP_BIT(X, MIN);
550
     #endif
548
     #endif
551
   #endif
549
   #endif
552
 
550
 
553
   #if HAS_X_MAX && !X_SPI_SENSORLESS
551
   #if HAS_X_MAX && !X_SPI_SENSORLESS
552
+    UPDATE_ENDSTOP_BIT(X, MAX);
554
     #if ENABLED(X_DUAL_ENDSTOPS)
553
     #if ENABLED(X_DUAL_ENDSTOPS)
555
-      UPDATE_ENDSTOP_BIT(X, MAX);
556
       #if HAS_X2_MAX
554
       #if HAS_X2_MAX
557
         UPDATE_ENDSTOP_BIT(X2, MAX);
555
         UPDATE_ENDSTOP_BIT(X2, MAX);
558
       #else
556
       #else
559
         COPY_LIVE_STATE(X_MAX, X2_MAX);
557
         COPY_LIVE_STATE(X_MAX, X2_MAX);
560
       #endif
558
       #endif
561
-    #else
562
-      UPDATE_ENDSTOP_BIT(X, MAX);
563
     #endif
559
     #endif
564
   #endif
560
   #endif
565
 
561
 
566
   #if HAS_Y_MIN && !Y_SPI_SENSORLESS
562
   #if HAS_Y_MIN && !Y_SPI_SENSORLESS
563
+    UPDATE_ENDSTOP_BIT(Y, MIN);
567
     #if ENABLED(Y_DUAL_ENDSTOPS)
564
     #if ENABLED(Y_DUAL_ENDSTOPS)
568
-      UPDATE_ENDSTOP_BIT(Y, MIN);
569
       #if HAS_Y2_MIN
565
       #if HAS_Y2_MIN
570
         UPDATE_ENDSTOP_BIT(Y2, MIN);
566
         UPDATE_ENDSTOP_BIT(Y2, MIN);
571
       #else
567
       #else
572
         COPY_LIVE_STATE(Y_MIN, Y2_MIN);
568
         COPY_LIVE_STATE(Y_MIN, Y2_MIN);
573
       #endif
569
       #endif
574
-    #else
575
-      UPDATE_ENDSTOP_BIT(Y, MIN);
576
     #endif
570
     #endif
577
   #endif
571
   #endif
578
 
572
 
579
   #if HAS_Y_MAX && !Y_SPI_SENSORLESS
573
   #if HAS_Y_MAX && !Y_SPI_SENSORLESS
574
+    UPDATE_ENDSTOP_BIT(Y, MAX);
580
     #if ENABLED(Y_DUAL_ENDSTOPS)
575
     #if ENABLED(Y_DUAL_ENDSTOPS)
581
-      UPDATE_ENDSTOP_BIT(Y, MAX);
582
       #if HAS_Y2_MAX
576
       #if HAS_Y2_MAX
583
         UPDATE_ENDSTOP_BIT(Y2, MAX);
577
         UPDATE_ENDSTOP_BIT(Y2, MAX);
584
       #else
578
       #else
585
         COPY_LIVE_STATE(Y_MAX, Y2_MAX);
579
         COPY_LIVE_STATE(Y_MAX, Y2_MAX);
586
       #endif
580
       #endif
587
-    #else
588
-      UPDATE_ENDSTOP_BIT(Y, MAX);
589
     #endif
581
     #endif
590
   #endif
582
   #endif
591
 
583
 
592
   #if HAS_Z_MIN && !Z_SPI_SENSORLESS
584
   #if HAS_Z_MIN && !Z_SPI_SENSORLESS
585
+    UPDATE_ENDSTOP_BIT(Z, MIN);
593
     #if Z_MULTI_ENDSTOPS
586
     #if Z_MULTI_ENDSTOPS
594
-      UPDATE_ENDSTOP_BIT(Z, MIN);
595
       #if HAS_Z2_MIN
587
       #if HAS_Z2_MIN
596
         UPDATE_ENDSTOP_BIT(Z2, MIN);
588
         UPDATE_ENDSTOP_BIT(Z2, MIN);
597
       #else
589
       #else
604
           COPY_LIVE_STATE(Z_MIN, Z3_MIN);
596
           COPY_LIVE_STATE(Z_MIN, Z3_MIN);
605
         #endif
597
         #endif
606
       #endif
598
       #endif
607
-    #elif ENABLED(Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN)
608
-      UPDATE_ENDSTOP_BIT(Z, MIN);
609
-    #elif Z_HOME_DIR < 0
610
-      UPDATE_ENDSTOP_BIT(Z, MIN);
611
     #endif
599
     #endif
612
   #endif
600
   #endif
613
 
601
 
614
   // When closing the gap check the enabled probe
602
   // When closing the gap check the enabled probe
615
-  #if USES_Z_MIN_PROBE_ENDSTOP
603
+  #if HAS_CUSTOM_PROBE_PIN
616
     UPDATE_ENDSTOP_BIT(Z, MIN_PROBE);
604
     UPDATE_ENDSTOP_BIT(Z, MIN_PROBE);
617
   #endif
605
   #endif
618
 
606
 
632
           COPY_LIVE_STATE(Z_MAX, Z3_MAX);
620
           COPY_LIVE_STATE(Z_MAX, Z3_MAX);
633
         #endif
621
         #endif
634
       #endif
622
       #endif
635
-    #elif !USES_Z_MIN_PROBE_ENDSTOP || Z_MAX_PIN != Z_MIN_PROBE_PIN
623
+    #elif !HAS_CUSTOM_PROBE_PIN || Z_MAX_PIN != Z_MIN_PROBE_PIN
636
       // If this pin isn't the bed probe it's the Z endstop
624
       // If this pin isn't the bed probe it's the Z endstop
637
       UPDATE_ENDSTOP_BIT(Z, MAX);
625
       UPDATE_ENDSTOP_BIT(Z, MAX);
638
     #endif
626
     #endif
765
         #else
753
         #else
766
           #if ENABLED(Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN)
754
           #if ENABLED(Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN)
767
             if (z_probe_enabled) PROCESS_ENDSTOP(Z, MIN);
755
             if (z_probe_enabled) PROCESS_ENDSTOP(Z, MIN);
768
-          #elif USES_Z_MIN_PROBE_ENDSTOP
756
+          #elif HAS_CUSTOM_PROBE_PIN
769
             if (!z_probe_enabled) PROCESS_ENDSTOP(Z, MIN);
757
             if (!z_probe_enabled) PROCESS_ENDSTOP(Z, MIN);
770
           #else
758
           #else
771
             PROCESS_ENDSTOP(Z, MIN);
759
             PROCESS_ENDSTOP(Z, MIN);
774
       #endif
762
       #endif
775
 
763
 
776
       // When closing the gap check the enabled probe
764
       // When closing the gap check the enabled probe
777
-      #if USES_Z_MIN_PROBE_ENDSTOP
765
+      #if HAS_CUSTOM_PROBE_PIN
778
         if (z_probe_enabled) PROCESS_ENDSTOP(Z, MIN_PROBE);
766
         if (z_probe_enabled) PROCESS_ENDSTOP(Z, MIN_PROBE);
779
       #endif
767
       #endif
780
     }
768
     }
784
           PROCESS_TRIPLE_ENDSTOP(Z, Z2, Z3, MAX);
772
           PROCESS_TRIPLE_ENDSTOP(Z, Z2, Z3, MAX);
785
         #elif ENABLED(Z_DUAL_ENDSTOPS)
773
         #elif ENABLED(Z_DUAL_ENDSTOPS)
786
           PROCESS_DUAL_ENDSTOP(Z, Z2, MAX);
774
           PROCESS_DUAL_ENDSTOP(Z, Z2, MAX);
787
-        #elif !USES_Z_MIN_PROBE_ENDSTOP || Z_MAX_PIN != Z_MIN_PROBE_PIN
775
+        #elif !HAS_CUSTOM_PROBE_PIN || Z_MAX_PIN != Z_MIN_PROBE_PIN
788
           // If this pin is not hijacked for the bed probe
776
           // If this pin is not hijacked for the bed probe
789
           // then it belongs to the Z endstop
777
           // then it belongs to the Z endstop
790
           PROCESS_ENDSTOP(Z, MAX);
778
           PROCESS_ENDSTOP(Z, MAX);

+ 1
- 1
Marlin/src/module/probe.cpp 查看文件

387
   const xy_pos_t old_xy = current_position;
387
   const xy_pos_t old_xy = current_position;
388
 
388
 
389
   #if ENABLED(PROBE_TRIGGERED_WHEN_STOWED_TEST)
389
   #if ENABLED(PROBE_TRIGGERED_WHEN_STOWED_TEST)
390
-    #if USES_Z_MIN_PROBE_ENDSTOP
390
+    #if HAS_CUSTOM_PROBE_PIN
391
       #define PROBE_STOWED() (READ(Z_MIN_PROBE_PIN) != Z_MIN_PROBE_ENDSTOP_INVERTING)
391
       #define PROBE_STOWED() (READ(Z_MIN_PROBE_PIN) != Z_MIN_PROBE_ENDSTOP_INVERTING)
392
     #else
392
     #else
393
       #define PROBE_STOWED() (READ(Z_MIN_PIN) != Z_MIN_ENDSTOP_INVERTING)
393
       #define PROBE_STOWED() (READ(Z_MIN_PIN) != Z_MIN_ENDSTOP_INVERTING)

+ 1
- 1
Marlin/src/pins/pins.h 查看文件

904
 //
904
 //
905
 // Disable unused endstop / probe pins
905
 // Disable unused endstop / probe pins
906
 //
906
 //
907
-#if !USES_Z_MIN_PROBE_ENDSTOP
907
+#if !HAS_CUSTOM_PROBE_PIN
908
   #undef Z_MIN_PROBE_PIN
908
   #undef Z_MIN_PROBE_PIN
909
   #define Z_MIN_PROBE_PIN    -1
909
   #define Z_MIN_PROBE_PIN    -1
910
 #endif
910
 #endif

+ 1
- 1
Marlin/src/pins/sam/pins_RURAMPS4D_11.h 查看文件

118
 //#define E3_MS2_PIN         ?
118
 //#define E3_MS2_PIN         ?
119
 //#define E3_MS3_PIN         ?
119
 //#define E3_MS3_PIN         ?
120
 
120
 
121
-#if USES_Z_MIN_PROBE_ENDSTOP
121
+#if HAS_CUSTOM_PROBE_PIN
122
   #define Z_MIN_PROBE_PIN  49
122
   #define Z_MIN_PROBE_PIN  49
123
 #endif
123
 #endif
124
 
124
 

+ 1
- 1
Marlin/src/pins/sam/pins_RURAMPS4D_13.h 查看文件

106
   #define E2_CS_PIN        61
106
   #define E2_CS_PIN        61
107
 #endif
107
 #endif
108
 
108
 
109
-#if USES_Z_MIN_PROBE_ENDSTOP
109
+#if HAS_CUSTOM_PROBE_PIN
110
   #define Z_MIN_PROBE_PIN  49
110
   #define Z_MIN_PROBE_PIN  49
111
 #endif
111
 #endif
112
 
112
 

正在加载...
取消
保存