2017-07-31 01:31:14 -05:00
/**
* Marlin 3 D Printer Firmware
2019-06-27 23:57:50 -05:00
* Copyright ( c ) 2019 MarlinFirmware [ https : //github.com/MarlinFirmware/Marlin]
2017-07-31 01:31:14 -05:00
*
* Based on Sprinter and grbl .
2019-06-27 23:57:50 -05:00
* Copyright ( c ) 2011 Camiel Gubbels / Erik van der Zalm
2017-07-31 01:31:14 -05:00
*
* This program is free software : you can redistribute it and / or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation , either version 3 of the License , or
* ( at your option ) any later version .
*
* This program is distributed in the hope that it will be useful ,
* but WITHOUT ANY WARRANTY ; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE . See the
* GNU General Public License for more details .
*
* You should have received a copy of the GNU General Public License
* along with this program . If not , see < http : //www.gnu.org/licenses/>.
*
*/
2019-07-04 22:44:12 -05:00
# pragma once
2017-07-31 01:31:14 -05:00
2019-11-10 21:25:56 -06:00
# if PIO_PLATFORM_VERSION < 1001
2019-11-02 21:34:09 -05:00
# error "nxplpc-arduino-lpc176x package is out of date, Please update the PlatformIO platforms, frameworks and libraries. You may need to remove the platform and let it reinstall automatically."
# endif
2019-11-10 21:25:56 -06:00
# if PIO_FRAMEWORK_VERSION < 2002
2019-11-02 21:34:09 -05:00
# error "framework-arduino-lpc176x package is out of date, Please update the PlatformIO platforms, frameworks and libraries."
# endif
2019-11-29 06:52:28 -06:00
/**
* Detect an old pins file by checking for old ADC pins values .
*/
2019-11-29 10:44:11 -06:00
# define _OLD_TEMP_PIN(P) PIN_EXISTS(P) && _CAT(P,_PIN) <= 7 && _CAT(P,_PIN) != 2 && _CAT(P,_PIN) != 3
2019-11-29 06:52:28 -06:00
# if _OLD_TEMP_PIN(TEMP_BED)
# error "TEMP_BED_PIN must be defined using the Pn_nn or Pn_nn_An format. (See the included pins files)."
# elif _OLD_TEMP_PIN(TEMP_0)
# error "TEMP_0_PIN must be defined using the Pn_nn or Pn_nn_An format. (See the included pins files)."
# elif _OLD_TEMP_PIN(TEMP_1)
# error "TEMP_1_PIN must be defined using the Pn_nn or Pn_nn_An format. (See the included pins files)."
# elif _OLD_TEMP_PIN(TEMP_2)
# error "TEMP_2_PIN must be defined using the Pn_nn or Pn_nn_An format. (See the included pins files)."
# elif _OLD_TEMP_PIN(TEMP_3)
# error "TEMP_3_PIN must be defined using the Pn_nn or Pn_nn_An format. (See the included pins files)."
# elif _OLD_TEMP_PIN(TEMP_4)
# error "TEMP_4_PIN must be defined using the Pn_nn or Pn_nn_An format. (See the included pins files)."
# elif _OLD_TEMP_PIN(TEMP_5)
# error "TEMP_5_PIN must be defined using the Pn_nn or Pn_nn_An format. (See the included pins files)."
# endif
# undef _OLD_TEMP_PIN
/**
* Because PWM hardware channels all share the same frequency , along with the
* fallback software channels , FAST_PWM_FAN is incompatible with Servos .
*/
# if NUM_SERVOS > 0 && ENABLED(FAST_PWM_FAN)
# error "BLTOUCH and Servos are incompatible with FAST_PWM_FAN on LPC176x boards."
# endif
2017-07-31 01:31:14 -05:00
/**
2019-06-27 23:06:49 -05:00
* Test LPC176x - specific configuration values for errors at compile - time .
2017-07-31 01:31:14 -05:00
*/
2019-06-27 23:06:49 -05:00
//#if ENABLED(SPINDLE_LASER_PWM) && !(SPINDLE_LASER_PWM_PIN == 4 || SPINDLE_LASER_PWM_PIN == 6 || SPINDLE_LASER_PWM_PIN == 11)
// #error "SPINDLE_LASER_PWM_PIN must use SERVO0, SERVO1 or SERVO3 connector"
//#endif
2018-04-06 20:24:54 -05:00
2019-04-19 20:11:51 -05:00
# if IS_RE_ARM_BOARD && ENABLED(REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER) && HAS_DRIVER(TMC2130) && DISABLED(TMC_USE_SW_SPI)
2018-04-06 20:24:54 -05:00
# error "Re-ARM with REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER and TMC2130 require TMC_USE_SW_SPI"
# endif