Giuliano Zaro
4 years ago
committed by
GitHub
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with
7 additions and
4 deletions
-
Marlin/src/HAL/AVR/ServoTimers.h
-
Marlin/src/HAL/AVR/inc/SanityCheck.h
|
|
@ -60,9 +60,11 @@ |
|
|
|
#if defined(__AVR_ATmega1280__) || defined(__AVR_ATmega2560__) |
|
|
|
//#define _useTimer1
|
|
|
|
#define _useTimer3 |
|
|
|
#define _useTimer4 |
|
|
|
#if !HAS_MOTOR_CURRENT_PWM |
|
|
|
#define _useTimer5 // Timer 5 is used for motor current PWM and can't be used for servos.
|
|
|
|
#if NUM_SERVOS > SERVOS_PER_TIMER |
|
|
|
#define _useTimer4 |
|
|
|
#if !HAS_MOTOR_CURRENT_PWM && SERVOS > 2 * SERVOS_PER_TIMER |
|
|
|
#define _useTimer5 // Timer 5 is used for motor current PWM and can't be used for servos.
|
|
|
|
#endif |
|
|
|
#endif |
|
|
|
#elif defined(__AVR_ATmega32U4__) |
|
|
|
#define _useTimer3 |
|
|
|
|
|
@ -36,9 +36,10 @@ |
|
|
|
* Sanity checks for Spindle / Laser PWM |
|
|
|
*/ |
|
|
|
#if ENABLED(SPINDLE_LASER_PWM) |
|
|
|
#include "../ServoTimers.h" // Needed to check timer availability (_useTimer3) |
|
|
|
#if SPINDLE_LASER_PWM_PIN == 4 || WITHIN(SPINDLE_LASER_PWM_PIN, 11, 13) |
|
|
|
#error "Counter/Timer for SPINDLE_LASER_PWM_PIN is used by a system interrupt." |
|
|
|
#elif NUM_SERVOS > 0 && (WITHIN(SPINDLE_LASER_PWM_PIN, 2, 3) || SPINDLE_LASER_PWM_PIN == 5) |
|
|
|
#elif NUM_SERVOS > 0 && defined(_useTimer3) && (WITHIN(SPINDLE_LASER_PWM_PIN, 2, 3) || SPINDLE_LASER_PWM_PIN == 5) |
|
|
|
#error "Counter/Timer for SPINDLE_LASER_PWM_PIN is used by the servo system." |
|
|
|
#endif |
|
|
|
#elif defined(SPINDLE_LASER_FREQUENCY) |
|
|
|