Merge commit 'cd71a90ce8a770e0030ed6c9bac805b89724e275' into dev

Conflicts:
	limits.c
	motion_control.c
	report.c
This commit is contained in:
Robert Grzesek
2014-02-18 18:23:39 -08:00
8 changed files with 97 additions and 68 deletions

View File

@ -26,7 +26,11 @@
// The number of linear motions that can be in the plan at any give time
#ifndef BLOCK_BUFFER_SIZE
#define BLOCK_BUFFER_SIZE 18
#ifdef USE_LINE_NUMBERS
#define BLOCK_BUFFER_SIZE 16
#else
#define BLOCK_BUFFER_SIZE 18
#endif
#endif
// This struct stores a linear movement of a g-code block motion with its critical "nominal" values
@ -47,6 +51,9 @@ typedef struct {
float acceleration; // Axis-limit adjusted line acceleration in (mm/min^2)
float millimeters; // The remaining distance for this block to be executed in (mm)
// uint8_t max_override; // Maximum override value based on axis speed limits
#ifdef USE_LINE_NUMBERS
uint32_t line_number;
#endif
} plan_block_t;
@ -56,7 +63,7 @@ void plan_reset();
// Add a new linear movement to the buffer. target[N_AXIS] is the signed, absolute target position
// in millimeters. Feed rate specifies the speed of the motion. If feed rate is inverted, the feed
// rate is taken to mean "frequency" and would complete the operation in 1/feed_rate minutes.
void plan_buffer_line(float *target, float feed_rate, uint8_t invert_feed_rate);
void plan_buffer_line(float *target, float feed_rate, uint8_t invert_feed_rate, uint32_t line_number);
// Called when the current block is no longer needed. Discards the block and makes the memory
// availible for new blocks.