this is a digital differential analyser data struct More...
#include <dda.h>
Data Fields | |
| TARGET | endpoint |
| this is where we should finish | |
| union { | |
| struct { | |
| uint8_t nullmove:1 | |
| bool: no axes move, maybe we wait for temperatures or change speed | |
| uint8_t live:1 | |
| bool: this DDA is running and still has steps to do | |
| uint8_t waitfor_temp:1 | |
| bool: wait for temperatures to reach their set values | |
| uint8_t x_direction:1 | |
| direction flag for X axis | |
| uint8_t y_direction:1 | |
| direction flag for Y axis | |
| uint8_t z_direction:1 | |
| direction flag for Z axis | |
| uint8_t e_direction:1 | |
| direction flag for E axis | |
| } | |
| uint8_t allflags | |
| used for clearing all flags | |
| }; | |
| uint32_t | x_delta |
| number of steps on X axis | |
| uint32_t | y_delta |
| number of steps on Y axis | |
| uint32_t | z_delta |
| number of steps on Z axis | |
| uint32_t | e_delta |
| number of steps on E axis | |
| int32_t | x_counter |
| counter for total_steps vs this axis, used for bresenham calculations. | |
| int32_t | y_counter |
| counter for total_steps vs this axis, used for bresenham calculations. | |
| int32_t | z_counter |
| counter for total_steps vs this axis, used for bresenham calculations. | |
| int32_t | e_counter |
| counter for total_steps vs this axis, used for bresenham calculations. | |
| uint32_t | total_steps |
total number of steps: set to | |
| uint32_t | c |
| time until next step | |
this is a digital differential analyser data struct
This struct holds all the details of an individual multi-axis move, including pre-calculated acceleration data. This struct is filled in by dda_create(), called from enqueue(), called mostly from gcode_process() and from a few other places too (eg
1.7.2