Преглед изворни кода

🎨 Condense reverse-protection code

Scott Lahteine пре 3 година
родитељ
комит
f2ba845dad
1 измењених фајлова са 51 додато и 105 уклоњено
  1. 51
    105
      Marlin/src/feature/stepper_driver_safety.cpp

+ 51
- 105
Marlin/src/feature/stepper_driver_safety.cpp Прегледај датотеку

@@ -39,7 +39,7 @@ void stepper_driver_backward_check() {
39 39
 
40 40
   OUT_WRITE(SAFE_POWER_PIN, LOW);
41 41
 
42
-  #define TEST_BACKWARD(AXIS, BIT) do { \
42
+  #define _TEST_BACKWARD(AXIS, BIT) do { \
43 43
       SET_INPUT(AXIS##_ENABLE_PIN); \
44 44
       OUT_WRITE(AXIS##_STEP_PIN, false); \
45 45
       delay(20); \
@@ -49,57 +49,31 @@ void stepper_driver_backward_check() {
49 49
       } \
50 50
     }while(0)
51 51
 
52
-  #if HAS_X_ENABLE
53
-    TEST_BACKWARD(X, 0);
54
-  #endif
55
-  #if HAS_X2_ENABLE
56
-    TEST_BACKWARD(X2, 1);
57
-  #endif
58
-
59
-  #if HAS_Y_ENABLE
60
-    TEST_BACKWARD(Y, 2);
61
-  #endif
62
-  #if HAS_Y2_ENABLE
63
-    TEST_BACKWARD(Y2, 3);
64
-  #endif
65
-
66
-  #if HAS_Z_ENABLE
67
-    TEST_BACKWARD(Z, 4);
68
-  #endif
69
-  #if HAS_Z2_ENABLE
70
-    TEST_BACKWARD(Z2, 5);
71
-  #endif
72
-  #if HAS_Z3_ENABLE
73
-    TEST_BACKWARD(Z3, 6);
74
-  #endif
75
-  #if HAS_Z4_ENABLE
76
-    TEST_BACKWARD(Z4, 7);
77
-  #endif
78
-
79
-  #if HAS_E0_ENABLE
80
-    TEST_BACKWARD(E0, 8);
81
-  #endif
82
-  #if HAS_E1_ENABLE
83
-    TEST_BACKWARD(E1, 9);
84
-  #endif
85
-  #if HAS_E2_ENABLE
86
-    TEST_BACKWARD(E2, 10);
87
-  #endif
88
-  #if HAS_E3_ENABLE
89
-    TEST_BACKWARD(E3, 11);
90
-  #endif
91
-  #if HAS_E4_ENABLE
92
-    TEST_BACKWARD(E4, 12);
93
-  #endif
94
-  #if HAS_E5_ENABLE
95
-    TEST_BACKWARD(E5, 13);
96
-  #endif
97
-  #if HAS_E6_ENABLE
98
-    TEST_BACKWARD(E6, 14);
99
-  #endif
100
-  #if HAS_E7_ENABLE
101
-    TEST_BACKWARD(E7, 15);
102
-  #endif
52
+  #define TEST_BACKWARD(AXIS, BIT) TERN_(HAS_##AXIS##_ENABLE, _TEST_BACKWARD(AXIS, BIT))
53
+
54
+  TEST_BACKWARD(X,   0);
55
+  TEST_BACKWARD(X2,  1);
56
+
57
+  TEST_BACKWARD(Y,   2);
58
+  TEST_BACKWARD(Y2,  3);
59
+
60
+  TEST_BACKWARD(Z,   4);
61
+  TEST_BACKWARD(Z2,  5);
62
+  TEST_BACKWARD(Z3,  6);
63
+  TEST_BACKWARD(Z4,  7);
64
+
65
+  TEST_BACKWARD(I,   8);
66
+  TEST_BACKWARD(J,   9);
67
+  TEST_BACKWARD(K,  10);
68
+
69
+  TEST_BACKWARD(E0, 11);
70
+  TEST_BACKWARD(E1, 12);
71
+  TEST_BACKWARD(E2, 13);
72
+  TEST_BACKWARD(E3, 14);
73
+  TEST_BACKWARD(E4, 15);
74
+  TEST_BACKWARD(E5, 16);
75
+  TEST_BACKWARD(E6, 17);
76
+  TEST_BACKWARD(E7, 18);
103 77
 
104 78
   if (!axis_plug_backward)
105 79
     WRITE(SAFE_POWER_PIN, HIGH);
@@ -113,59 +87,31 @@ void stepper_driver_backward_report() {
113 87
       stepper_driver_backward_error(axis);
114 88
   };
115 89
 
116
-  #define REPORT_BACKWARD(axis, bit) _report_if_backward(PSTR(STRINGIFY(axis)), bit)
117
-
118
-  #if HAS_X_ENABLE
119
-    REPORT_BACKWARD(X, 0);
120
-  #endif
121
-  #if HAS_X2_ENABLE
122
-    REPORT_BACKWARD(X2, 1);
123
-  #endif
124
-
125
-  #if HAS_Y_ENABLE
126
-    REPORT_BACKWARD(Y, 2);
127
-  #endif
128
-  #if HAS_Y2_ENABLE
129
-    REPORT_BACKWARD(Y2, 3);
130
-  #endif
131
-
132
-  #if HAS_Z_ENABLE
133
-    REPORT_BACKWARD(Z, 4);
134
-  #endif
135
-  #if HAS_Z2_ENABLE
136
-    REPORT_BACKWARD(Z2, 5);
137
-  #endif
138
-  #if HAS_Z3_ENABLE
139
-    REPORT_BACKWARD(Z3, 6);
140
-  #endif
141
-  #if HAS_Z4_ENABLE
142
-    REPORT_BACKWARD(Z4, 7);
143
-  #endif
144
-
145
-  #if HAS_E0_ENABLE
146
-    REPORT_BACKWARD(E0, 8);
147
-  #endif
148
-  #if HAS_E1_ENABLE
149
-    REPORT_BACKWARD(E1, 9);
150
-  #endif
151
-  #if HAS_E2_ENABLE
152
-    REPORT_BACKWARD(E2, 10);
153
-  #endif
154
-  #if HAS_E3_ENABLE
155
-    REPORT_BACKWARD(E3, 11);
156
-  #endif
157
-  #if HAS_E4_ENABLE
158
-    REPORT_BACKWARD(E4, 12);
159
-  #endif
160
-  #if HAS_E5_ENABLE
161
-    REPORT_BACKWARD(E5, 13);
162
-  #endif
163
-  #if HAS_E6_ENABLE
164
-    REPORT_BACKWARD(E6, 14);
165
-  #endif
166
-  #if HAS_E7_ENABLE
167
-    REPORT_BACKWARD(E7, 15);
168
-  #endif
90
+  #define REPORT_BACKWARD(axis, bit) TERN_(HAS_##axis##_ENABLE, _report_if_backward(PSTR(STRINGIFY(axis)), bit))
91
+
92
+  REPORT_BACKWARD(X,   0);
93
+  REPORT_BACKWARD(X2,  1);
94
+
95
+  REPORT_BACKWARD(Y,   2);
96
+  REPORT_BACKWARD(Y2,  3);
97
+
98
+  REPORT_BACKWARD(Z,   4);
99
+  REPORT_BACKWARD(Z2,  5);
100
+  REPORT_BACKWARD(Z3,  6);
101
+  REPORT_BACKWARD(Z4,  7);
102
+
103
+  REPORT_BACKWARD(I,   8);
104
+  REPORT_BACKWARD(J,   9);
105
+  REPORT_BACKWARD(K,  10);
106
+
107
+  REPORT_BACKWARD(E0, 11);
108
+  REPORT_BACKWARD(E1, 12);
109
+  REPORT_BACKWARD(E2, 13);
110
+  REPORT_BACKWARD(E3, 14);
111
+  REPORT_BACKWARD(E4, 15);
112
+  REPORT_BACKWARD(E5, 16);
113
+  REPORT_BACKWARD(E6, 17);
114
+  REPORT_BACKWARD(E7, 18);
169 115
 }
170 116
 
171 117
 #endif // HAS_DRIVER_SAFE_POWER_PROTECT

Loading…
Откажи
Сачувај