refactored compile time settings back into a new file called config.h
This commit is contained in:
parent
d00947a23a
commit
6d3ff506e8
90
config.h
Normal file
90
config.h
Normal file
@ -0,0 +1,90 @@
|
|||||||
|
/*
|
||||||
|
config.h - compile time configuration
|
||||||
|
Part of Grbl
|
||||||
|
|
||||||
|
Copyright (c) 2009-2011 Simen Svale Skogsrud
|
||||||
|
|
||||||
|
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 config_h
|
||||||
|
#define config_h
|
||||||
|
|
||||||
|
#define BAUD_RATE 9600
|
||||||
|
|
||||||
|
// Updated default pin-assignments from 0.6 onwards
|
||||||
|
// (see bottom of file for a copy of the old config)
|
||||||
|
|
||||||
|
#define STEPPERS_ENABLE_DDR DDRB
|
||||||
|
#define STEPPERS_ENABLE_PORT PORTB
|
||||||
|
#define STEPPERS_ENABLE_BIT 0
|
||||||
|
|
||||||
|
#define STEPPING_DDR DDRD
|
||||||
|
#define STEPPING_PORT PORTD
|
||||||
|
#define X_STEP_BIT 2
|
||||||
|
#define Y_STEP_BIT 3
|
||||||
|
#define Z_STEP_BIT 4
|
||||||
|
#define X_DIRECTION_BIT 5
|
||||||
|
#define Y_DIRECTION_BIT 6
|
||||||
|
#define Z_DIRECTION_BIT 7
|
||||||
|
|
||||||
|
#define LIMIT_DDR DDRB
|
||||||
|
#define LIMIT_PORT PORTB
|
||||||
|
#define X_LIMIT_BIT 1
|
||||||
|
#define Y_LIMIT_BIT 2
|
||||||
|
#define Z_LIMIT_BIT 3
|
||||||
|
|
||||||
|
#define SPINDLE_ENABLE_DDR DDRB
|
||||||
|
#define SPINDLE_ENABLE_PORT PORTB
|
||||||
|
#define SPINDLE_ENABLE_BIT 4
|
||||||
|
|
||||||
|
#define SPINDLE_DIRECTION_DDR DDRB
|
||||||
|
#define SPINDLE_DIRECTION_PORT PORTB
|
||||||
|
#define SPINDLE_DIRECTION_BIT 5
|
||||||
|
|
||||||
|
// The temporal resolution of the acceleration management subsystem. Higher number
|
||||||
|
// give smoother acceleration but may impact performance
|
||||||
|
#define ACCELERATION_TICKS_PER_SECOND 20L
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
// Pin-assignments from Grbl 0.5
|
||||||
|
|
||||||
|
// #define STEPPERS_ENABLE_DDR DDRD
|
||||||
|
// #define STEPPERS_ENABLE_PORT PORTD
|
||||||
|
// #define STEPPERS_ENABLE_BIT 2
|
||||||
|
//
|
||||||
|
// #define STEPPING_DDR DDRC
|
||||||
|
// #define STEPPING_PORT PORTC
|
||||||
|
// #define X_STEP_BIT 0
|
||||||
|
// #define Y_STEP_BIT 1
|
||||||
|
// #define Z_STEP_BIT 2
|
||||||
|
// #define X_DIRECTION_BIT 3
|
||||||
|
// #define Y_DIRECTION_BIT 4
|
||||||
|
// #define Z_DIRECTION_BIT 5
|
||||||
|
//
|
||||||
|
// #define LIMIT_DDR DDRD
|
||||||
|
// #define LIMIT_PORT PORTD
|
||||||
|
// #define X_LIMIT_BIT 3
|
||||||
|
// #define Y_LIMIT_BIT 4
|
||||||
|
// #define Z_LIMIT_BIT 5
|
||||||
|
//
|
||||||
|
// #define SPINDLE_ENABLE_DDR DDRD
|
||||||
|
// #define SPINDLE_ENABLE_PORT PORTD
|
||||||
|
// #define SPINDLE_ENABLE_BIT 6
|
||||||
|
//
|
||||||
|
// #define SPINDLE_DIRECTION_DDR DDRD
|
||||||
|
// #define SPINDLE_DIRECTION_PORT PORTD
|
||||||
|
// #define SPINDLE_DIRECTION_BIT 7
|
||||||
|
|
@ -115,7 +115,7 @@ void mc_arc(double theta, double angular_travel, double radius, double linear_tr
|
|||||||
double target[3];
|
double target[3];
|
||||||
int i;
|
int i;
|
||||||
// Initialize the linear axis
|
// Initialize the linear axis
|
||||||
target[axis_linear] = position[axis_linear]/Z_STEPS_PER_MM;
|
target[axis_linear] = position[axis_linear]/settings.steps_per_mm[axis_linear];
|
||||||
for (i=0; i<=segments; i++) {
|
for (i=0; i<=segments; i++) {
|
||||||
target[axis_linear] += linear_per_segment;
|
target[axis_linear] += linear_per_segment;
|
||||||
theta += theta_per_segment;
|
theta += theta_per_segment;
|
||||||
|
@ -23,6 +23,7 @@
|
|||||||
#include "gcode.h"
|
#include "gcode.h"
|
||||||
#include "wiring_serial.h"
|
#include "wiring_serial.h"
|
||||||
#include "settings.h"
|
#include "settings.h"
|
||||||
|
#include "config.h"
|
||||||
#include <math.h>
|
#include <math.h>
|
||||||
#include "nuts_bolts.h"
|
#include "nuts_bolts.h"
|
||||||
#include <avr/pgmspace.h>
|
#include <avr/pgmspace.h>
|
||||||
@ -54,7 +55,7 @@ void sp_init()
|
|||||||
{
|
{
|
||||||
beginSerial(BAUD_RATE);
|
beginSerial(BAUD_RATE);
|
||||||
printPgmString(PSTR("\r\nGrbl "));
|
printPgmString(PSTR("\r\nGrbl "));
|
||||||
printPgmString(PSTR(VERSION));
|
printPgmString(PSTR(GRBL_VERSION));
|
||||||
printPgmString(PSTR("\r\n"));
|
printPgmString(PSTR("\r\n"));
|
||||||
prompt();
|
prompt();
|
||||||
}
|
}
|
||||||
|
14
settings.c
14
settings.c
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
settings.c - eeprom and compile time configuration handling
|
settings.c - eeprom configuration handling
|
||||||
Part of Grbl
|
Part of Grbl
|
||||||
|
|
||||||
Copyright (c) 2009-2011 Simen Svale Skogsrud
|
Copyright (c) 2009-2011 Simen Svale Skogsrud
|
||||||
@ -40,14 +40,14 @@ typedef struct {
|
|||||||
} settings_v1_t;
|
} settings_v1_t;
|
||||||
|
|
||||||
void reset_settings() {
|
void reset_settings() {
|
||||||
settings.steps_per_mm[0] = X_STEPS_PER_MM;
|
settings.steps_per_mm[0] = DEFAULT_X_STEPS_PER_MM;
|
||||||
settings.steps_per_mm[1] = Y_STEPS_PER_MM;
|
settings.steps_per_mm[1] = DEFAULT_Y_STEPS_PER_MM;
|
||||||
settings.steps_per_mm[2] = Z_STEPS_PER_MM;
|
settings.steps_per_mm[2] = DEFAULT_Z_STEPS_PER_MM;
|
||||||
settings.pulse_microseconds = STEP_PULSE_MICROSECONDS;
|
settings.pulse_microseconds = DEFAULT_STEP_PULSE_MICROSECONDS;
|
||||||
settings.default_feed_rate = DEFAULT_FEEDRATE;
|
settings.default_feed_rate = DEFAULT_FEEDRATE;
|
||||||
settings.default_seek_rate = RAPID_FEEDRATE;
|
settings.default_seek_rate = DEFAULT_RAPID_FEEDRATE;
|
||||||
settings.acceleration = DEFAULT_ACCELERATION;
|
settings.acceleration = DEFAULT_ACCELERATION;
|
||||||
settings.mm_per_arc_segment = MM_PER_ARC_SEGMENT;
|
settings.mm_per_arc_segment = DEFAULT_MM_PER_ARC_SEGMENT;
|
||||||
settings.invert_mask = DEFAULT_STEPPING_INVERT_MASK;
|
settings.invert_mask = DEFAULT_STEPPING_INVERT_MASK;
|
||||||
settings.max_jerk = DEFAULT_MAX_JERK;
|
settings.max_jerk = DEFAULT_MAX_JERK;
|
||||||
}
|
}
|
||||||
|
86
settings.h
86
settings.h
@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
settings.h - eeprom and compile time configuration handling
|
settings.h - eeprom configuration handling
|
||||||
Part of Grbl
|
Part of Grbl
|
||||||
|
|
||||||
Copyright (c) 2009-2011 Simen Svale Skogsrud
|
Copyright (c) 2009-2011 Simen Svale Skogsrud
|
||||||
@ -21,76 +21,11 @@
|
|||||||
#ifndef settings_h
|
#ifndef settings_h
|
||||||
#define settings_h
|
#define settings_h
|
||||||
|
|
||||||
#define VERSION "0.6b"
|
|
||||||
#include <math.h>
|
#include <math.h>
|
||||||
#include <inttypes.h>
|
#include <inttypes.h>
|
||||||
|
|
||||||
// Settings that can only be set at compile-time:
|
#define GRBL_VERSION "0.6b"
|
||||||
|
|
||||||
#define BAUD_RATE 9600
|
|
||||||
//#define BAUD_RATE 115200
|
|
||||||
|
|
||||||
// Default pin-assignments from Grbl 0.5
|
|
||||||
|
|
||||||
// #define STEPPERS_ENABLE_DDR DDRD
|
|
||||||
// #define STEPPERS_ENABLE_PORT PORTD
|
|
||||||
// #define STEPPERS_ENABLE_BIT 2
|
|
||||||
//
|
|
||||||
// #define STEPPING_DDR DDRC
|
|
||||||
// #define STEPPING_PORT PORTC
|
|
||||||
// #define X_STEP_BIT 0
|
|
||||||
// #define Y_STEP_BIT 1
|
|
||||||
// #define Z_STEP_BIT 2
|
|
||||||
// #define X_DIRECTION_BIT 3
|
|
||||||
// #define Y_DIRECTION_BIT 4
|
|
||||||
// #define Z_DIRECTION_BIT 5
|
|
||||||
//
|
|
||||||
// #define LIMIT_DDR DDRD
|
|
||||||
// #define LIMIT_PORT PORTD
|
|
||||||
// #define X_LIMIT_BIT 3
|
|
||||||
// #define Y_LIMIT_BIT 4
|
|
||||||
// #define Z_LIMIT_BIT 5
|
|
||||||
//
|
|
||||||
// #define SPINDLE_ENABLE_DDR DDRD
|
|
||||||
// #define SPINDLE_ENABLE_PORT PORTD
|
|
||||||
// #define SPINDLE_ENABLE_BIT 6
|
|
||||||
//
|
|
||||||
// #define SPINDLE_DIRECTION_DDR DDRD
|
|
||||||
// #define SPINDLE_DIRECTION_PORT PORTD
|
|
||||||
// #define SPINDLE_DIRECTION_BIT 7
|
|
||||||
//
|
|
||||||
//
|
|
||||||
|
|
||||||
|
|
||||||
// Updated default pin-assignments from 0.6 onwards
|
|
||||||
|
|
||||||
#define STEPPERS_ENABLE_DDR DDRB
|
|
||||||
#define STEPPERS_ENABLE_PORT PORTB
|
|
||||||
#define STEPPERS_ENABLE_BIT 0
|
|
||||||
|
|
||||||
#define STEPPING_DDR DDRD
|
|
||||||
#define STEPPING_PORT PORTD
|
|
||||||
#define X_STEP_BIT 2
|
|
||||||
#define Y_STEP_BIT 3
|
|
||||||
#define Z_STEP_BIT 4
|
|
||||||
#define X_DIRECTION_BIT 5
|
|
||||||
#define Y_DIRECTION_BIT 6
|
|
||||||
#define Z_DIRECTION_BIT 7
|
|
||||||
|
|
||||||
#define LIMIT_DDR DDRB
|
|
||||||
#define LIMIT_PORT PORTB
|
|
||||||
#define X_LIMIT_BIT 1
|
|
||||||
#define Y_LIMIT_BIT 2
|
|
||||||
#define Z_LIMIT_BIT 3
|
|
||||||
|
|
||||||
#define SPINDLE_ENABLE_DDR DDRB
|
|
||||||
#define SPINDLE_ENABLE_PORT PORTB
|
|
||||||
#define SPINDLE_ENABLE_BIT 4
|
|
||||||
|
|
||||||
#define SPINDLE_DIRECTION_DDR DDRB
|
|
||||||
#define SPINDLE_DIRECTION_PORT PORTB
|
|
||||||
#define SPINDLE_DIRECTION_BIT 5
|
|
||||||
|
|
||||||
|
|
||||||
// Version of the EEPROM data. Will be used to migrate existing data from older versions of Grbl
|
// Version of the EEPROM data. Will be used to migrate existing data from older versions of Grbl
|
||||||
// when firmware is upgraded. Always stored in byte 0 of eeprom
|
// when firmware is upgraded. Always stored in byte 0 of eeprom
|
||||||
@ -121,18 +56,15 @@ void store_setting(int parameter, double value);
|
|||||||
|
|
||||||
// Default settings (used when resetting eeprom-settings)
|
// Default settings (used when resetting eeprom-settings)
|
||||||
#define MICROSTEPS 8
|
#define MICROSTEPS 8
|
||||||
#define X_STEPS_PER_MM (94.488188976378*MICROSTEPS)
|
#define DEFAULT_X_STEPS_PER_MM (94.488188976378*MICROSTEPS)
|
||||||
#define Y_STEPS_PER_MM (94.488188976378*MICROSTEPS)
|
#define DEFAULT_Y_STEPS_PER_MM (94.488188976378*MICROSTEPS)
|
||||||
#define Z_STEPS_PER_MM (94.488188976378*MICROSTEPS)
|
#define DEFAULT_Z_STEPS_PER_MM (94.488188976378*MICROSTEPS)
|
||||||
#define STEP_PULSE_MICROSECONDS 30
|
#define DEFAULT_STEP_PULSE_MICROSECONDS 30
|
||||||
#define MM_PER_ARC_SEGMENT 0.1
|
#define DEFAULT_MM_PER_ARC_SEGMENT 0.1
|
||||||
#define RAPID_FEEDRATE 480.0 // in millimeters per minute
|
#define DEFAULT_RAPID_FEEDRATE 480.0 // in millimeters per minute
|
||||||
#define DEFAULT_FEEDRATE 480.0
|
#define DEFAULT_FEEDRATE 480.0
|
||||||
#define DEFAULT_ACCELERATION (DEFAULT_FEEDRATE/100.0)
|
#define DEFAULT_ACCELERATION (DEFAULT_FEEDRATE/100.0)
|
||||||
#define DEFAULT_MAX_JERK 50.0
|
#define DEFAULT_MAX_JERK 50.0
|
||||||
#define DEFAULT_STEPPING_INVERT_MASK 0
|
#define DEFAULT_STEPPING_INVERT_MASK 0
|
||||||
|
|
||||||
// The temporal resolution of the acceleration management subsystem
|
|
||||||
#define ACCELERATION_TICKS_PER_SECOND 20L
|
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
@ -20,6 +20,7 @@
|
|||||||
|
|
||||||
#include "spindle_control.h"
|
#include "spindle_control.h"
|
||||||
#include "settings.h"
|
#include "settings.h"
|
||||||
|
#include "config.h"
|
||||||
|
|
||||||
#include <avr/io.h>
|
#include <avr/io.h>
|
||||||
|
|
||||||
|
@ -23,6 +23,7 @@
|
|||||||
by David A. Mellis */
|
by David A. Mellis */
|
||||||
|
|
||||||
#include "stepper.h"
|
#include "stepper.h"
|
||||||
|
#include "config.h"
|
||||||
#include "settings.h"
|
#include "settings.h"
|
||||||
#include <math.h>
|
#include <math.h>
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
|
@ -58,6 +58,7 @@
|
|||||||
#include "nuts_bolts.h"
|
#include "nuts_bolts.h"
|
||||||
#include "stepper.h"
|
#include "stepper.h"
|
||||||
#include "settings.h"
|
#include "settings.h"
|
||||||
|
#include "config.h"
|
||||||
#include "wiring_serial.h"
|
#include "wiring_serial.h"
|
||||||
|
|
||||||
block_t block_buffer[BLOCK_BUFFER_SIZE]; // A ring buffer for motion instructions
|
block_t block_buffer[BLOCK_BUFFER_SIZE]; // A ring buffer for motion instructions
|
||||||
|
Loading…
Reference in New Issue
Block a user