diff --git a/mendel/clock.h b/mendel/clock.h index 15d3d78..d9ef610 100644 --- a/mendel/clock.h +++ b/mendel/clock.h @@ -13,6 +13,6 @@ extern volatile uint8_t clock_flag_250ms; #define CLOCK_FLAG_250MS_TEMPCHECK 1 #define CLOCK_FLAG_250MS_REPORT 2 -#define CLOCL_FLAG_250MS_STEPTIMEOUT 4 +#define CLOCK_FLAG_250MS_STEPTIMEOUT 4 #endif /* _CLOCK_H */ diff --git a/mendel/dda.c b/mendel/dda.c index 01c1a7b..d9c91a0 100644 --- a/mendel/dda.c +++ b/mendel/dda.c @@ -201,20 +201,20 @@ void dda_create(TARGET *target, DDA *dda) { if (DEBUG) serwrite_uint32(dda->total_steps); serial_writechar(','); - if (dda->f_delta > dda->total_steps) { - dda->f_scale = dda->f_delta / dda->total_steps; - if (dda->f_scale > 3) { - dda->f_delta = dda->total_steps; - } - else { - // if we boost the number of steps here, many will only be F-steps which take no time- maybe we should calculate move_distance first? - dda->f_scale = 1; - dda->total_steps = dda->f_delta; - } - } - else { - dda->f_scale = 1; - } +// if (dda->f_delta > dda->total_steps) { +// dda->f_scale = dda->f_delta / dda->total_steps; +// if (dda->f_scale > 3) { +// dda->f_delta = dda->total_steps; +// } +// else { +// // if we boost the number of steps here, many will only be F-steps which take no time- maybe we should calculate move_distance first? +// dda->f_scale = 1; +// dda->total_steps = dda->f_delta; +// } +// } +// else { +// dda->f_scale = 1; +// } if (DEBUG) serwrite_uint32(dda->total_steps); serial_writechar(','); @@ -238,8 +238,8 @@ void dda_create(TARGET *target, DDA *dda) { if (distance < 2) distance = dda->e_delta * UM_PER_STEP_E; - if (distance < 2) - distance = dda->f_delta; +// if (distance < 2) +// distance = dda->f_delta; // pre-calculate move speed in millimeter microseconds per step minute for less math in interrupt context // mm (distance) * 60000000 us/min / step (total_steps) = mm.us per step.min @@ -409,20 +409,22 @@ void dda_step(DDA *dda) { if (step_option & F_CAN_STEP) { dda->f_counter -= dda->f_delta; - if (dda->f_counter < 0) { + while (dda->f_counter < 0) { dda->f_counter += dda->total_steps; - if (dda->f_scale == 0) - dda->f_scale = 1; +// if (dda->f_scale == 0) +// dda->f_scale = 1; if (dda->f_direction) { - current_position.F += dda->f_scale; +// current_position.F += dda->f_scale; + current_position.F += 1; if (current_position.F > dda->endpoint.F) current_position.F = dda->endpoint.F; } else { - current_position.F -= dda->f_scale; +// current_position.F -= dda->f_scale; + current_position.F -= 1; if (current_position.F < dda->endpoint.F) current_position.F = dda->endpoint.F; } @@ -435,8 +437,8 @@ void dda_step(DDA *dda) { serial_writechar('['); serwrite_hex8(step_option); serial_writechar(':'); - serwrite_uint16(dda->f_scale); - serial_writechar(','); +// serwrite_uint16(dda->f_scale); +// serial_writechar(','); serwrite_int32(current_position.F); serial_writechar('/'); serwrite_int32(dda->endpoint.F); diff --git a/mendel/dda.h b/mendel/dda.h index 04c088c..0d0033f 100644 --- a/mendel/dda.h +++ b/mendel/dda.h @@ -41,7 +41,7 @@ typedef struct { uint32_t total_steps; - uint16_t f_scale; +// uint16_t f_scale; uint32_t move_duration; } DDA; diff --git a/mendel/mendel.c b/mendel/mendel.c index cbc9d12..9494c08 100644 --- a/mendel/mendel.c +++ b/mendel/mendel.c @@ -117,8 +117,8 @@ int main (void) serial_writestr_P(PSTR("DDA: f#")); serwrite_int32(movebuffer[mb_head].f_counter); serial_writechar('/'); - serwrite_uint16(movebuffer[mb_head].f_scale); - serial_writechar('/'); +// serwrite_uint16(movebuffer[mb_head].f_scale); +// serial_writechar('/'); serwrite_int16(movebuffer[mb_head].f_delta); serial_writechar('\n');