Fix compile-time PWM_PIN (#18793)
Co-authored-by: Scott Lahteine <github@thinkyhead.com>
This commit is contained in:
parent
3eef000e2a
commit
f949287aec
1 changed files with 19 additions and 10 deletions
|
@ -2106,27 +2106,33 @@ static_assert(hbm[Z_AXIS] >= 0, "HOMING_BUMP_MM.Z must be greater than or equal
|
||||||
#endif
|
#endif
|
||||||
#undef _RGB_TEST
|
#undef _RGB_TEST
|
||||||
|
|
||||||
|
#if DISABLED(NO_COMPILE_TIME_PWM)
|
||||||
|
#define _TEST_PWM(P) PWM_PIN(P)
|
||||||
|
#else
|
||||||
|
#define _TEST_PWM(P) 1 // pass
|
||||||
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Auto Fan check for PWM pins
|
* Auto Fan check for PWM pins
|
||||||
*/
|
*/
|
||||||
#if HAS_AUTO_FAN && EXTRUDER_AUTO_FAN_SPEED != 255 && DISABLED(NO_COMPILE_TIME_PWM)
|
#if HAS_AUTO_FAN && EXTRUDER_AUTO_FAN_SPEED != 255
|
||||||
#define AF_ERR_SUFF "_AUTO_FAN_PIN is not a PWM pin. Set EXTRUDER_AUTO_FAN_SPEED to 255."
|
#define AF_ERR_SUFF "_AUTO_FAN_PIN is not a PWM pin. Set EXTRUDER_AUTO_FAN_SPEED to 255."
|
||||||
#if HAS_AUTO_FAN_0
|
#if HAS_AUTO_FAN_0
|
||||||
static_assert(PWM_PIN(E0_AUTO_FAN_PIN), "E0" AF_ERR_SUFF);
|
static_assert(_TEST_PWM(E0_AUTO_FAN_PIN), "E0" AF_ERR_SUFF);
|
||||||
#elif HAS_AUTO_FAN_1
|
#elif HAS_AUTO_FAN_1
|
||||||
static_assert(PWM_PIN(E1_AUTO_FAN_PIN), "E1" AF_ERR_SUFF);
|
static_assert(_TEST_PWM(E1_AUTO_FAN_PIN), "E1" AF_ERR_SUFF);
|
||||||
#elif HAS_AUTO_FAN_2
|
#elif HAS_AUTO_FAN_2
|
||||||
static_assert(PWM_PIN(E2_AUTO_FAN_PIN), "E2" AF_ERR_SUFF);
|
static_assert(_TEST_PWM(E2_AUTO_FAN_PIN), "E2" AF_ERR_SUFF);
|
||||||
#elif HAS_AUTO_FAN_3
|
#elif HAS_AUTO_FAN_3
|
||||||
static_assert(PWM_PIN(E3_AUTO_FAN_PIN), "E3" AF_ERR_SUFF);
|
static_assert(_TEST_PWM(E3_AUTO_FAN_PIN), "E3" AF_ERR_SUFF);
|
||||||
#elif HAS_AUTO_FAN_4
|
#elif HAS_AUTO_FAN_4
|
||||||
static_assert(PWM_PIN(E4_AUTO_FAN_PIN), "E4" AF_ERR_SUFF);
|
static_assert(_TEST_PWM(E4_AUTO_FAN_PIN), "E4" AF_ERR_SUFF);
|
||||||
#elif HAS_AUTO_FAN_5
|
#elif HAS_AUTO_FAN_5
|
||||||
static_assert(PWM_PIN(E5_AUTO_FAN_PIN), "E5" AF_ERR_SUFF);
|
static_assert(_TEST_PWM(E5_AUTO_FAN_PIN), "E5" AF_ERR_SUFF);
|
||||||
#elif HAS_AUTO_FAN_6
|
#elif HAS_AUTO_FAN_6
|
||||||
static_assert(PWM_PIN(E6_AUTO_FAN_PIN), "E6" AF_ERR_SUFF);
|
static_assert(_TEST_PWM(E6_AUTO_FAN_PIN), "E6" AF_ERR_SUFF);
|
||||||
#elif HAS_AUTO_FAN_7
|
#elif HAS_AUTO_FAN_7
|
||||||
static_assert(PWM_PIN(E7_AUTO_FAN_PIN), "E7" AF_ERR_SUFF);
|
static_assert(_TEST_PWM(E7_AUTO_FAN_PIN), "E7" AF_ERR_SUFF);
|
||||||
#endif
|
#endif
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
@ -2945,7 +2951,7 @@ static_assert( _ARR_TEST(3,0) && _ARR_TEST(3,1) && _ARR_TEST(3,2)
|
||||||
#elif ENABLED(SPINDLE_LASER_PWM)
|
#elif ENABLED(SPINDLE_LASER_PWM)
|
||||||
#if !defined(SPINDLE_LASER_PWM_PIN) || SPINDLE_LASER_PWM_PIN < 0
|
#if !defined(SPINDLE_LASER_PWM_PIN) || SPINDLE_LASER_PWM_PIN < 0
|
||||||
#error "SPINDLE_LASER_PWM_PIN is required for SPINDLE_LASER_PWM."
|
#error "SPINDLE_LASER_PWM_PIN is required for SPINDLE_LASER_PWM."
|
||||||
#elif !PWM_PIN(SPINDLE_LASER_PWM_PIN)
|
#elif !_TEST_PWM(SPINDLE_LASER_PWM_PIN)
|
||||||
#error "SPINDLE_LASER_PWM_PIN not assigned to a PWM pin."
|
#error "SPINDLE_LASER_PWM_PIN not assigned to a PWM pin."
|
||||||
#elif !defined(SPINDLE_LASER_PWM_INVERT)
|
#elif !defined(SPINDLE_LASER_PWM_INVERT)
|
||||||
#error "SPINDLE_LASER_PWM_INVERT is required for (SPINDLE|LASER)_FEATURE."
|
#error "SPINDLE_LASER_PWM_INVERT is required for (SPINDLE|LASER)_FEATURE."
|
||||||
|
@ -3037,3 +3043,6 @@ static_assert( _ARR_TEST(3,0) && _ARR_TEST(3,1) && _ARR_TEST(3,2)
|
||||||
#error "DIRECT_STEPPING is incompatible with LIN_ADVANCE. Enable in external planner if possible."
|
#error "DIRECT_STEPPING is incompatible with LIN_ADVANCE. Enable in external planner if possible."
|
||||||
#endif
|
#endif
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
// Misc. Cleanup
|
||||||
|
#undef _TEST_PWM
|
||||||
|
|
Reference in a new issue