Browse Source

🧑‍💻 Remove servo macros

Scott Lahteine 2 years ago
parent
commit
e4e6abe5af

+ 1
- 1
Marlin/src/feature/bltouch.cpp View File

@@ -45,7 +45,7 @@ void stop();
45 45
 
46 46
 bool BLTouch::command(const BLTCommand cmd, const millis_t &ms) {
47 47
   if (DEBUGGING(LEVELING)) SERIAL_ECHOLNPGM("BLTouch Command :", cmd);
48
-  MOVE_SERVO(Z_PROBE_SERVO_NR, cmd);
48
+  servo[Z_PROBE_SERVO_NR].move(cmd);
49 49
   safe_delay(_MAX(ms, (uint32_t)BLTOUCH_DELAY)); // BLTOUCH_DELAY is also the *minimum* delay
50 50
   return triggered();
51 51
 }

+ 2
- 2
Marlin/src/feature/spindle_laser.cpp View File

@@ -58,7 +58,7 @@ cutter_power_t SpindleLaser::menuPower,                               // Power s
58 58
  */
59 59
 void SpindleLaser::init() {
60 60
   #if ENABLED(SPINDLE_SERVO)
61
-    MOVE_SERVO(SPINDLE_SERVO_NR, SPINDLE_SERVO_MIN);
61
+    servo[SPINDLE_SERVO_NR].move(SPINDLE_SERVO_MIN);
62 62
   #else
63 63
     OUT_WRITE(SPINDLE_LASER_ENA_PIN, !SPINDLE_LASER_ACTIVE_STATE);    // Init spindle to off
64 64
   #endif
@@ -131,7 +131,7 @@ void SpindleLaser::apply_power(const uint8_t opwr) {
131 131
       isReady = false;
132 132
     }
133 133
   #elif ENABLED(SPINDLE_SERVO)
134
-    MOVE_SERVO(SPINDLE_SERVO_NR, power);
134
+    servo[SPINDLE_SERVO_NR].move(power);
135 135
   #else
136 136
     WRITE(SPINDLE_LASER_ENA_PIN, enabled() ? SPINDLE_LASER_ACTIVE_STATE : !SPINDLE_LASER_ACTIVE_STATE);
137 137
     isReady = true;

+ 4
- 4
Marlin/src/gcode/config/M43.cpp View File

@@ -198,10 +198,10 @@ inline void servo_probe_test() {
198 198
       uint8_t i = 0;
199 199
       SERIAL_ECHOLNPGM(". Deploy & stow 4 times");
200 200
       do {
201
-        MOVE_SERVO(probe_index, servo_angles[Z_PROBE_SERVO_NR][0]); // Deploy
201
+        servo[probe_index].move(servo_angles[Z_PROBE_SERVO_NR][0]); // Deploy
202 202
         safe_delay(500);
203 203
         deploy_state = READ(PROBE_TEST_PIN);
204
-        MOVE_SERVO(probe_index, servo_angles[Z_PROBE_SERVO_NR][1]); // Stow
204
+        servo[probe_index].move(servo_angles[Z_PROBE_SERVO_NR][1]); // Stow
205 205
         safe_delay(500);
206 206
         stow_state = READ(PROBE_TEST_PIN);
207 207
       } while (++i < 4);
@@ -226,7 +226,7 @@ inline void servo_probe_test() {
226 226
     }
227 227
 
228 228
     // Ask the user for a trigger event and measure the pulse width.
229
-    MOVE_SERVO(probe_index, servo_angles[Z_PROBE_SERVO_NR][0]); // Deploy
229
+    servo[probe_index].move(servo_angles[Z_PROBE_SERVO_NR][0]); // Deploy
230 230
     safe_delay(500);
231 231
     SERIAL_ECHOLNPGM("** Please trigger probe within 30 sec **");
232 232
     uint16_t probe_counter = 0;
@@ -256,7 +256,7 @@ inline void servo_probe_test() {
256 256
         }
257 257
         else SERIAL_ECHOLNPGM("FAIL: Noise detected - please re-run test");
258 258
 
259
-        MOVE_SERVO(probe_index, servo_angles[Z_PROBE_SERVO_NR][1]); // Stow
259
+        servo[probe_index].move(servo_angles[Z_PROBE_SERVO_NR][1]); // Stow
260 260
         return;
261 261
       }
262 262
     }

+ 3
- 3
Marlin/src/gcode/control/M280.cpp View File

@@ -56,14 +56,14 @@ void GcodeSuite::M280() {
56 56
             while (PENDING(now, end)) {
57 57
               safe_delay(50);
58 58
               now = _MIN(millis(), end);
59
-              MOVE_SERVO(servo_index, LROUND(aold + (anew - aold) * (float(now - start) / t)));
59
+              servo[servo_index].move(LROUND(aold + (anew - aold) * (float(now - start) / t)));
60 60
             }
61 61
           }
62 62
         #endif // POLARGRAPH
63
-        MOVE_SERVO(servo_index, anew);
63
+        servo[servo_index].move(anew);
64 64
       }
65 65
       else
66
-        DETACH_SERVO(servo_index);
66
+        servo[servo_index].detach();
67 67
     }
68 68
     else
69 69
       SERIAL_ECHO_MSG(" Servo ", servo_index, ": ", servo[servo_index].read());

+ 1
- 1
Marlin/src/gcode/control/M282.cpp View File

@@ -36,7 +36,7 @@ void GcodeSuite::M282() {
36 36
 
37 37
   const int servo_index = parser.value_int();
38 38
   if (WITHIN(servo_index, 0, NUM_SERVOS - 1))
39
-    DETACH_SERVO(servo_index);
39
+    servo[servo_index].detach();
40 40
   else
41 41
     SERIAL_ECHO_MSG("Servo ", servo_index, " out of range");
42 42
 

+ 1
- 1
Marlin/src/module/probe.cpp View File

@@ -343,7 +343,7 @@ FORCE_INLINE void probe_specific_action(const bool deploy) {
343 343
 
344 344
   #elif HAS_Z_SERVO_PROBE
345 345
 
346
-    MOVE_SERVO(Z_PROBE_SERVO_NR, servo_angles[Z_PROBE_SERVO_NR][deploy ? 0 : 1]);
346
+    servo[Z_PROBE_SERVO_NR].move(servo_angles[Z_PROBE_SERVO_NR][deploy ? 0 : 1]);
347 347
 
348 348
   #elif EITHER(TOUCH_MI_PROBE, Z_PROBE_ALLEN_KEY)
349 349
 

+ 4
- 4
Marlin/src/module/servo.cpp View File

@@ -39,19 +39,19 @@ hal_servo_t servo[NUM_SERVOS];
39 39
 void servo_init() {
40 40
   #if NUM_SERVOS >= 1 && HAS_SERVO_0
41 41
     servo[0].attach(SERVO0_PIN);
42
-    DETACH_SERVO(0); // Just set up the pin. We don't have a position yet. Don't move to a random position.
42
+    servo[0].detach(); // Just set up the pin. We don't have a position yet. Don't move to a random position.
43 43
   #endif
44 44
   #if NUM_SERVOS >= 2 && HAS_SERVO_1
45 45
     servo[1].attach(SERVO1_PIN);
46
-    DETACH_SERVO(1);
46
+    servo[1].detach();
47 47
   #endif
48 48
   #if NUM_SERVOS >= 3 && HAS_SERVO_2
49 49
     servo[2].attach(SERVO2_PIN);
50
-    DETACH_SERVO(2);
50
+    servo[2].detach();
51 51
   #endif
52 52
   #if NUM_SERVOS >= 4 && HAS_SERVO_3
53 53
     servo[3].attach(SERVO3_PIN);
54
-    DETACH_SERVO(3);
54
+    servo[3].detach();
55 55
   #endif
56 56
 }
57 57
 

+ 2
- 5
Marlin/src/module/servo.h View File

@@ -103,14 +103,11 @@
103 103
   };
104 104
 
105 105
   #if HAS_Z_SERVO_PROBE
106
-    #define DEPLOY_Z_SERVO() MOVE_SERVO(Z_PROBE_SERVO_NR, servo_angles[Z_PROBE_SERVO_NR][0])
107
-    #define STOW_Z_SERVO() MOVE_SERVO(Z_PROBE_SERVO_NR, servo_angles[Z_PROBE_SERVO_NR][1])
106
+    #define DEPLOY_Z_SERVO() servo[Z_PROBE_SERVO_NR].move(servo_angles[Z_PROBE_SERVO_NR][0])
107
+    #define STOW_Z_SERVO() servo[Z_PROBE_SERVO_NR].move(servo_angles[Z_PROBE_SERVO_NR][1])
108 108
   #endif
109 109
 
110 110
 #endif // HAS_SERVO_ANGLES
111 111
 
112
-#define MOVE_SERVO(I, P) servo[I].move(P)
113
-#define DETACH_SERVO(I) servo[I].detach()
114
-
115 112
 extern hal_servo_t servo[NUM_SERVOS];
116 113
 void servo_init();

+ 3
- 3
Marlin/src/module/temperature.cpp View File

@@ -1881,7 +1881,7 @@ void Temperature::manage_heater() {
1881 1881
         #endif
1882 1882
         #if ENABLED(CHAMBER_VENT)
1883 1883
           flag_chamber_excess_heat = false;
1884
-          MOVE_SERVO(CHAMBER_VENT_SERVO_NR, 90);
1884
+          servo[CHAMBER_VENT_SERVO_NR].move(90);
1885 1885
         #endif
1886 1886
       }
1887 1887
     #endif
@@ -1897,7 +1897,7 @@ void Temperature::manage_heater() {
1897 1897
           if (flag_chamber_excess_heat) {
1898 1898
             temp_chamber.soft_pwm_amount = 0;
1899 1899
             #if ENABLED(CHAMBER_VENT)
1900
-              if (!flag_chamber_off) MOVE_SERVO(CHAMBER_VENT_SERVO_NR, temp_chamber.celsius <= temp_chamber.target ? 0 : 90);
1900
+              if (!flag_chamber_off) servo[CHAMBER_VENT_SERVO_NR].move(temp_chamber.celsius <= temp_chamber.target ? 0 : 90);
1901 1901
             #endif
1902 1902
           }
1903 1903
           else {
@@ -1910,7 +1910,7 @@ void Temperature::manage_heater() {
1910 1910
               temp_chamber.soft_pwm_amount = temp_chamber.celsius < temp_chamber.target ? (MAX_CHAMBER_POWER) >> 1 : 0;
1911 1911
             #endif
1912 1912
             #if ENABLED(CHAMBER_VENT)
1913
-              if (!flag_chamber_off) MOVE_SERVO(CHAMBER_VENT_SERVO_NR, 0);
1913
+              if (!flag_chamber_off) servo[CHAMBER_VENT_SERVO_NR].move(0);
1914 1914
             #endif
1915 1915
           }
1916 1916
         }

+ 4
- 4
Marlin/src/module/tool_change.cpp View File

@@ -116,7 +116,7 @@
116 116
   void move_extruder_servo(const uint8_t e) {
117 117
     planner.synchronize();
118 118
     if ((EXTRUDERS & 1) && e < EXTRUDERS - 1) {
119
-      MOVE_SERVO(_SERVO_NR(e), servo_angles[_SERVO_NR(e)][e & 1]);
119
+      servo[_SERVO_NR(e)].move(servo_angles[_SERVO_NR(e)][e & 1]);
120 120
       safe_delay(500);
121 121
     }
122 122
   }
@@ -131,7 +131,7 @@
131 131
       constexpr int8_t  sns_index[2] = { SWITCHING_NOZZLE_SERVO_NR, SWITCHING_NOZZLE_E1_SERVO_NR };
132 132
       constexpr int16_t sns_angles[2] = SWITCHING_NOZZLE_SERVO_ANGLES;
133 133
       planner.synchronize();
134
-      MOVE_SERVO(sns_index[e], sns_angles[angle_index]);
134
+      servo[sns_index[e]].move(sns_angles[angle_index]);
135 135
       safe_delay(500);
136 136
     }
137 137
 
@@ -142,7 +142,7 @@
142 142
 
143 143
     void move_nozzle_servo(const uint8_t angle_index) {
144 144
       planner.synchronize();
145
-      MOVE_SERVO(SWITCHING_NOZZLE_SERVO_NR, servo_angles[SWITCHING_NOZZLE_SERVO_NR][angle_index]);
145
+      servo[SWITCHING_NOZZLE_SERVO_NR].move(servo_angles[SWITCHING_NOZZLE_SERVO_NR][angle_index]);
146 146
       safe_delay(500);
147 147
     }
148 148
 
@@ -443,7 +443,7 @@ void fast_line_to_current(const AxisEnum fr_axis) { _line_to_current(fr_axis, 0.
443 443
   inline void switching_toolhead_lock(const bool locked) {
444 444
     #ifdef SWITCHING_TOOLHEAD_SERVO_ANGLES
445 445
       const uint16_t swt_angles[2] = SWITCHING_TOOLHEAD_SERVO_ANGLES;
446
-      MOVE_SERVO(SWITCHING_TOOLHEAD_SERVO_NR, swt_angles[locked ? 0 : 1]);
446
+      servo[SWITCHING_TOOLHEAD_SERVO_NR].move(swt_angles[locked ? 0 : 1]);
447 447
     #elif PIN_EXISTS(SWT_SOLENOID)
448 448
       OUT_WRITE(SWT_SOLENOID_PIN, locked);
449 449
       gcode.dwell(10);

Loading…
Cancel
Save