Updated variable spindle and new probing. Minor bug fixes.

- Minor bug fix for variable spindle PWM output. Values smaller than
the minimum RPM for the spindle would overflow the PWM value. Thanks
Rob!

- Created an optional minimum spindle PWM low-mark value as a
compile-time option. This is for special circumstances when the PWM has
to be at a certain level to be read by the spindle controller.

- Refactored the new probing commands (G38.3, G38.4, G38.5) code to
work better with the rest of Grbl’s systems.

- Refactored mc_probe() and mc_arc() to accept the mode of the command,
i.e. clockwise vs counter, toward vs away, etc. This is to make these
functions independent of gcode state variables.

- Removed the pull off motion in the probing cycle. This is not an
official operation and was added for user simplicity, but wrongly did
so. So bye bye.

- Created a configure probe invert mask function to handle the
different probe pin setting and probing cycle modes with a single mask.

 - Minor bug fix with reporting motion modes via $G. G38.2 wasn’t
showing up. It now does, along with the other new probing commands.

- Refactored some of the new pin configurations for the future of Grbl.

-
This commit is contained in:
Sonny Jeon
2014-10-01 20:22:16 -06:00
parent 15071385f7
commit 7e67395463
11 changed files with 159 additions and 126 deletions

View File

@ -206,11 +206,11 @@
// a later date if flash and memory space allows.
#define COOLANT_FLOOD_DDR DDRC
#define COOLANT_FLOOD_PORT PORTC
#define COOLANT_FLOOD_BIT 4 // Uno Analog Pin 3
#define COOLANT_FLOOD_BIT 1 // Uno Analog Pin 1
#ifdef ENABLE_M7 // Mist coolant disabled by default. See config.h to enable/disable.
#define COOLANT_MIST_DDR DDRC
#define COOLANT_MIST_PORT PORTC
#define COOLANT_MIST_BIT 5 // Uno Analog Pin 4
#define COOLANT_MIST_BIT 2 // Uno Analog Pin 2
#endif
// Define user-control pinouts (cycle start, reset, feed hold) input pins.
@ -218,9 +218,9 @@
#define PINOUT_DDR DDRC
#define PINOUT_PIN PINC
#define PINOUT_PORT PORTC
#define PIN_RESET 1 // Uno Analog Pin 1
#define PIN_FEED_HOLD 2 // Uno Analog Pin 2
#define PIN_CYCLE_START 3 // Uno Analog Pin 3
#define PIN_RESET 3 // Uno Analog Pin 3
#define PIN_FEED_HOLD 4 // Uno Analog Pin 4
#define PIN_CYCLE_START 5 // Uno Analog Pin 5
#define PINOUT_INT PCIE1 // Pin change interrupt enable pin
#define PINOUT_INT_vect PCINT1_vect
#define PINOUT_PCMSK PCMSK1 // Pin change interrupt register