|
|
|
@ -381,7 +381,10 @@ xyze_int8_t Stepper::count_direction{0};
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
#if NUM_Z_STEPPER_DRIVERS == 4
|
|
|
|
|
#define Z_APPLY_DIR(v,Q) do{ Z_DIR_WRITE(v); Z2_DIR_WRITE(v); Z3_DIR_WRITE(v); Z4_DIR_WRITE(v); }while(0)
|
|
|
|
|
#define Z_APPLY_DIR(v,Q) do{ \
|
|
|
|
|
Z_DIR_WRITE(v); Z2_DIR_WRITE((v) ^ ENABLED(INVERT_Z2_VS_Z_DIR)); \
|
|
|
|
|
Z3_DIR_WRITE((v) ^ ENABLED(INVERT_Z3_VS_Z_DIR)); Z4_DIR_WRITE((v) ^ ENABLED(INVERT_Z4_VS_Z_DIR)); \
|
|
|
|
|
}while(0)
|
|
|
|
|
#if ENABLED(Z_MULTI_ENDSTOPS)
|
|
|
|
|
#define Z_APPLY_STEP(v,Q) QUAD_ENDSTOP_APPLY_STEP(Z,v)
|
|
|
|
|
#elif ENABLED(Z_STEPPER_AUTO_ALIGN)
|
|
|
|
@ -390,7 +393,9 @@ xyze_int8_t Stepper::count_direction{0};
|
|
|
|
|
#define Z_APPLY_STEP(v,Q) do{ Z_STEP_WRITE(v); Z2_STEP_WRITE(v); Z3_STEP_WRITE(v); Z4_STEP_WRITE(v); }while(0)
|
|
|
|
|
#endif
|
|
|
|
|
#elif NUM_Z_STEPPER_DRIVERS == 3
|
|
|
|
|
#define Z_APPLY_DIR(v,Q) do{ Z_DIR_WRITE(v); Z2_DIR_WRITE(v); Z3_DIR_WRITE(v); }while(0)
|
|
|
|
|
#define Z_APPLY_DIR(v,Q) do{ \
|
|
|
|
|
Z_DIR_WRITE(v); Z2_DIR_WRITE((v) ^ ENABLED(INVERT_Z2_VS_Z_DIR)); Z3_DIR_WRITE((v) ^ ENABLED(INVERT_Z3_VS_Z_DIR)); \
|
|
|
|
|
}while(0)
|
|
|
|
|
#if ENABLED(Z_MULTI_ENDSTOPS)
|
|
|
|
|
#define Z_APPLY_STEP(v,Q) TRIPLE_ENDSTOP_APPLY_STEP(Z,v)
|
|
|
|
|
#elif ENABLED(Z_STEPPER_AUTO_ALIGN)
|
|
|
|
@ -399,7 +404,7 @@ xyze_int8_t Stepper::count_direction{0};
|
|
|
|
|
#define Z_APPLY_STEP(v,Q) do{ Z_STEP_WRITE(v); Z2_STEP_WRITE(v); Z3_STEP_WRITE(v); }while(0)
|
|
|
|
|
#endif
|
|
|
|
|
#elif NUM_Z_STEPPER_DRIVERS == 2
|
|
|
|
|
#define Z_APPLY_DIR(v,Q) do{ Z_DIR_WRITE(v); Z2_DIR_WRITE(v); }while(0)
|
|
|
|
|
#define Z_APPLY_DIR(v,Q) do{ Z_DIR_WRITE(v); Z2_DIR_WRITE((v) ^ ENABLED(INVERT_Z2_VS_Z_DIR)); }while(0)
|
|
|
|
|
#if ENABLED(Z_MULTI_ENDSTOPS)
|
|
|
|
|
#define Z_APPLY_STEP(v,Q) DUAL_ENDSTOP_APPLY_STEP(Z,v)
|
|
|
|
|
#elif ENABLED(Z_STEPPER_AUTO_ALIGN)
|
|
|
|
|