@@ -2972,131 +2972,30 @@ void Stepper::init() {
2972
2972
TERN_ (HAS_E6_DIR, E6_DIR_INIT ());
2973
2973
TERN_ (HAS_E7_DIR, E7_DIR_INIT ());
2974
2974
2975
- // Init Enable Pins - steppers default to disabled.
2976
- #if HAS_X_ENABLE
2977
- #ifndef X_ENABLE_INIT_STATE
2978
- #define X_ENABLE_INIT_STATE !X_ENABLE_ON
2979
- #endif
2980
- X_ENABLE_INIT ();
2981
- if (X_ENABLE_INIT_STATE) X_ENABLE_WRITE (X_ENABLE_INIT_STATE);
2982
- #if ALL(HAS_X2_STEPPER, HAS_X2_ENABLE)
2983
- X2_ENABLE_INIT ();
2984
- if (X_ENABLE_INIT_STATE) X2_ENABLE_WRITE (X_ENABLE_INIT_STATE);
2985
- #endif
2986
- #endif
2987
- #if HAS_Y_ENABLE
2988
- #ifndef Y_ENABLE_INIT_STATE
2989
- #define Y_ENABLE_INIT_STATE !Y_ENABLE_ON
2990
- #endif
2991
- Y_ENABLE_INIT ();
2992
- if (Y_ENABLE_INIT_STATE) Y_ENABLE_WRITE (Y_ENABLE_INIT_STATE);
2993
- #if ALL(HAS_Y2_STEPPER, HAS_Y2_ENABLE)
2994
- Y2_ENABLE_INIT ();
2995
- if (Y_ENABLE_INIT_STATE) Y2_ENABLE_WRITE (Y_ENABLE_INIT_STATE);
2996
- #endif
2997
- #endif
2998
- #if HAS_Z_ENABLE
2999
- #ifndef Z_ENABLE_INIT_STATE
3000
- #define Z_ENABLE_INIT_STATE !Z_ENABLE_ON
3001
- #endif
3002
- Z_ENABLE_INIT ();
3003
- if (Z_ENABLE_INIT_STATE) Z_ENABLE_WRITE (Z_ENABLE_INIT_STATE);
3004
- #if HAS_Z2_ENABLE
3005
- Z2_ENABLE_INIT ();
3006
- if (Z_ENABLE_INIT_STATE) Z2_ENABLE_WRITE (Z_ENABLE_INIT_STATE);
3007
- #endif
3008
- #if HAS_Z3_ENABLE
3009
- Z3_ENABLE_INIT ();
3010
- if (Z_ENABLE_INIT_STATE) Z3_ENABLE_WRITE (Z_ENABLE_INIT_STATE);
3011
- #endif
3012
- #if HAS_Z4_ENABLE
3013
- Z4_ENABLE_INIT ();
3014
- if (Z_ENABLE_INIT_STATE) Z4_ENABLE_WRITE (Z_ENABLE_INIT_STATE);
3015
- #endif
3016
- #endif
3017
- #if HAS_I_ENABLE
3018
- I_ENABLE_INIT ();
3019
- if (!I_ENABLE_ON) I_ENABLE_WRITE (HIGH);
3020
- #endif
3021
- #if HAS_J_ENABLE
3022
- J_ENABLE_INIT ();
3023
- if (!J_ENABLE_ON) J_ENABLE_WRITE (HIGH);
3024
- #endif
3025
- #if HAS_K_ENABLE
3026
- K_ENABLE_INIT ();
3027
- if (!K_ENABLE_ON) K_ENABLE_WRITE (HIGH);
3028
- #endif
3029
- #if HAS_U_ENABLE
3030
- U_ENABLE_INIT ();
3031
- if (!U_ENABLE_ON) U_ENABLE_WRITE (HIGH);
3032
- #endif
3033
- #if HAS_V_ENABLE
3034
- V_ENABLE_INIT ();
3035
- if (!V_ENABLE_ON) V_ENABLE_WRITE (HIGH);
3036
- #endif
3037
- #if HAS_W_ENABLE
3038
- W_ENABLE_INIT ();
3039
- if (!W_ENABLE_ON) W_ENABLE_WRITE (HIGH);
3040
- #endif
3041
- #if HAS_E0_ENABLE
3042
- #ifndef E_ENABLE_INIT_STATE
3043
- #define E_ENABLE_INIT_STATE !E_ENABLE_ON
3044
- #endif
3045
- #ifndef E0_ENABLE_INIT_STATE
3046
- #define E0_ENABLE_INIT_STATE E_ENABLE_INIT_STATE
3047
- #endif
3048
- E0_ENABLE_INIT ();
3049
- if (E0_ENABLE_INIT_STATE) E0_ENABLE_WRITE (E0_ENABLE_INIT_STATE);
3050
- #endif
3051
- #if HAS_E1_ENABLE
3052
- #ifndef E1_ENABLE_INIT_STATE
3053
- #define E1_ENABLE_INIT_STATE E_ENABLE_INIT_STATE
3054
- #endif
3055
- E1_ENABLE_INIT ();
3056
- if (E1_ENABLE_INIT_STATE) E1_ENABLE_WRITE (E1_ENABLE_INIT_STATE);
3057
- #endif
3058
- #if HAS_E2_ENABLE
3059
- #ifndef E2_ENABLE_INIT_STATE
3060
- #define E2_ENABLE_INIT_STATE E_ENABLE_INIT_STATE
3061
- #endif
3062
- E2_ENABLE_INIT ();
3063
- if (E2_ENABLE_INIT_STATE) E2_ENABLE_WRITE (E2_ENABLE_INIT_STATE);
3064
- #endif
3065
- #if HAS_E3_ENABLE
3066
- #ifndef E3_ENABLE_INIT_STATE
3067
- #define E3_ENABLE_INIT_STATE E_ENABLE_INIT_STATE
3068
- #endif
3069
- E3_ENABLE_INIT ();
3070
- if (E3_ENABLE_INIT_STATE) E3_ENABLE_WRITE (E3_ENABLE_INIT_STATE);
3071
- #endif
3072
- #if HAS_E4_ENABLE
3073
- #ifndef E4_ENABLE_INIT_STATE
3074
- #define E4_ENABLE_INIT_STATE E_ENABLE_INIT_STATE
3075
- #endif
3076
- E4_ENABLE_INIT ();
3077
- if (E4_ENABLE_INIT_STATE) E4_ENABLE_WRITE (E4_ENABLE_INIT_STATE);
3078
- #endif
3079
- #if HAS_E5_ENABLE
3080
- #ifndef E5_ENABLE_INIT_STATE
3081
- #define E5_ENABLE_INIT_STATE E_ENABLE_INIT_STATE
3082
- #endif
3083
- E5_ENABLE_INIT ();
3084
- if (E5_ENABLE_INIT_STATE) E5_ENABLE_WRITE (E5_ENABLE_INIT_STATE);
3085
- #endif
3086
- #if HAS_E6_ENABLE
3087
- #ifndef E6_ENABLE_INIT_STATE
3088
- #define E6_ENABLE_INIT_STATE E_ENABLE_INIT_STATE
3089
- #endif
3090
- E6_ENABLE_INIT ();
3091
- if (E6_ENABLE_INIT_STATE) E6_ENABLE_WRITE (E6_ENABLE_INIT_STATE);
3092
- #endif
3093
- #if HAS_E7_ENABLE
3094
- #ifndef E7_ENABLE_INIT_STATE
3095
- #define E7_ENABLE_INIT_STATE E_ENABLE_INIT_STATE
3096
- #endif
3097
- E7_ENABLE_INIT ();
3098
- if (E7_ENABLE_INIT_STATE) E7_ENABLE_WRITE (E7_ENABLE_INIT_STATE);
3099
- #endif
2975
+ // Init Enable Pins - Steppers default to disabled.
2976
+ #define _INIT_CONFIG_ENABLE (A ) do { A##_ENABLE_INIT (); if (A##_ENABLE_INIT_STATE) A##_ENABLE_WRITE (HIGH); }while (0 )
2977
+ TERN_ (HAS_X_ENABLE, _INIT_CONFIG_ENABLE (X));
2978
+ TERN_ (HAS_X2_ENABLE, _INIT_CONFIG_ENABLE (X2));
2979
+ TERN_ (HAS_Y_ENABLE, _INIT_CONFIG_ENABLE (Y));
2980
+ TERN_ (HAS_Y2_ENABLE, _INIT_CONFIG_ENABLE (Y2));
2981
+ TERN_ (HAS_Z_ENABLE, _INIT_CONFIG_ENABLE (Z));
2982
+ TERN_ (HAS_Z2_ENABLE, _INIT_CONFIG_ENABLE (Z2));
2983
+ TERN_ (HAS_Z3_ENABLE, _INIT_CONFIG_ENABLE (Z3));
2984
+ TERN_ (HAS_Z4_ENABLE, _INIT_CONFIG_ENABLE (Z4));
2985
+ TERN_ (HAS_I_ENABLE, _INIT_CONFIG_ENABLE (I));
2986
+ TERN_ (HAS_J_ENABLE, _INIT_CONFIG_ENABLE (J));
2987
+ TERN_ (HAS_K_ENABLE, _INIT_CONFIG_ENABLE (K));
2988
+ TERN_ (HAS_U_ENABLE, _INIT_CONFIG_ENABLE (U));
2989
+ TERN_ (HAS_V_ENABLE, _INIT_CONFIG_ENABLE (V));
2990
+ TERN_ (HAS_W_ENABLE, _INIT_CONFIG_ENABLE (W));
2991
+ TERN_ (HAS_E0_ENABLE, _INIT_CONFIG_ENABLE (E0 ));
2992
+ TERN_ (HAS_E1_ENABLE, _INIT_CONFIG_ENABLE (E1 ));
2993
+ TERN_ (HAS_E2_ENABLE, _INIT_CONFIG_ENABLE (E2 ));
2994
+ TERN_ (HAS_E3_ENABLE, _INIT_CONFIG_ENABLE (E3 ));
2995
+ TERN_ (HAS_E4_ENABLE, _INIT_CONFIG_ENABLE (E4 ));
2996
+ TERN_ (HAS_E5_ENABLE, _INIT_CONFIG_ENABLE (E5 ));
2997
+ TERN_ (HAS_E6_ENABLE, _INIT_CONFIG_ENABLE (E6 ));
2998
+ TERN_ (HAS_E7_ENABLE, _INIT_CONFIG_ENABLE (E7 ));
3100
2999
3101
3000
#define _STEP_INIT (AXIS ) AXIS ##_STEP_INIT()
3102
3001
#define _WRITE_STEP (AXIS, HIGHLOW ) AXIS ##_STEP_WRITE(HIGHLOW)
0 commit comments