490d3f1220
- [config] Permanently removed classic GUI interface support. This unintentionally created a problem where some users/GUI devs used this compatibility mode and did not update to the new interface. So, there were two interfaces in use, rather than just one like it was intended. This removal should help everyone by forcing all GUIs to update and updated GUI not having to support yet another interface. - Fixed typo with line number support in jog mode.
106 lines
3.0 KiB
C
106 lines
3.0 KiB
C
/*
|
|
grbl.h - main Grbl include file
|
|
Part of Grbl
|
|
|
|
Copyright (c) 2015-2016 Sungeun K. Jeon for Gnea Research LLC
|
|
|
|
Grbl 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.
|
|
|
|
Grbl 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 Grbl. If not, see <http://www.gnu.org/licenses/>.
|
|
*/
|
|
|
|
#ifndef grbl_h
|
|
#define grbl_h
|
|
|
|
// Grbl versioning system
|
|
#define GRBL_VERSION "1.1e"
|
|
#define GRBL_VERSION_BUILD "20161208"
|
|
|
|
// Define standard libraries used by Grbl.
|
|
#include <avr/io.h>
|
|
#include <avr/pgmspace.h>
|
|
#include <avr/interrupt.h>
|
|
#include <avr/wdt.h>
|
|
#include <util/delay.h>
|
|
#include <math.h>
|
|
#include <inttypes.h>
|
|
#include <string.h>
|
|
#include <stdlib.h>
|
|
#include <stdint.h>
|
|
#include <stdbool.h>
|
|
|
|
// Define the Grbl system include files. NOTE: Do not alter organization.
|
|
#include "config.h"
|
|
#include "nuts_bolts.h"
|
|
#include "settings.h"
|
|
#include "system.h"
|
|
#include "defaults.h"
|
|
#include "cpu_map.h"
|
|
#include "planner.h"
|
|
#include "coolant_control.h"
|
|
#include "eeprom.h"
|
|
#include "gcode.h"
|
|
#include "limits.h"
|
|
#include "motion_control.h"
|
|
#include "planner.h"
|
|
#include "print.h"
|
|
#include "probe.h"
|
|
#include "protocol.h"
|
|
#include "report.h"
|
|
#include "serial.h"
|
|
#include "spindle_control.h"
|
|
#include "stepper.h"
|
|
#include "jog.h"
|
|
|
|
// ---------------------------------------------------------------------------------------
|
|
// COMPILE-TIME ERROR CHECKING OF DEFINE VALUES:
|
|
|
|
#ifndef HOMING_CYCLE_0
|
|
#error "Required HOMING_CYCLE_0 not defined."
|
|
#endif
|
|
|
|
#if defined(USE_SPINDLE_DIR_AS_ENABLE_PIN) && !defined(VARIABLE_SPINDLE)
|
|
#error "USE_SPINDLE_DIR_AS_ENABLE_PIN may only be used with VARIABLE_SPINDLE enabled"
|
|
#endif
|
|
|
|
#if defined(USE_SPINDLE_DIR_AS_ENABLE_PIN) && !defined(CPU_MAP_ATMEGA328P)
|
|
#error "USE_SPINDLE_DIR_AS_ENABLE_PIN may only be used with a 328p processor"
|
|
#endif
|
|
|
|
#if defined(PARKING_ENABLE)
|
|
#if defined(HOMING_FORCE_SET_ORIGIN)
|
|
#error "HOMING_FORCE_SET_ORIGIN is not supported with PARKING_ENABLE at this time."
|
|
#endif
|
|
#endif
|
|
|
|
#if defined(SPINDLE_MINIMUM_PWM)
|
|
#if !(SPINDLE_MINIMUM_PWM > 0)
|
|
#error "SPINDLE_MINIMUM_PWM must be greater than zero."
|
|
#endif
|
|
#endif
|
|
|
|
#if (REPORT_WCO_REFRESH_BUSY_COUNT < REPORT_WCO_REFRESH_IDLE_COUNT)
|
|
#error "WCO busy refresh is less than idle refresh."
|
|
#endif
|
|
#if (REPORT_OVR_REFRESH_BUSY_COUNT < REPORT_OVR_REFRESH_IDLE_COUNT)
|
|
#error "Override busy refresh is less than idle refresh."
|
|
#endif
|
|
#if (REPORT_WCO_REFRESH_IDLE_COUNT < 2)
|
|
#error "WCO refresh must be greater than one."
|
|
#endif
|
|
#if (REPORT_OVR_REFRESH_IDLE_COUNT < 1)
|
|
#error "Override refresh must be greater than zero."
|
|
#endif
|
|
// ---------------------------------------------------------------------------------------
|
|
|
|
#endif
|