mirror of
https://github.com/Klipper3d/klipper.git
synced 2025-07-24 07:04:01 -06:00
stepcompress: Merge stepcompress_push_accel() and stepcompress_push_const()
It's not necessary to have separate C functions for constant acceleration and constant velocity as constant velocity can be obtained by using a constant acceleration of zero. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
This commit is contained in:
parent
1d81bf5596
commit
98add22891
6 changed files with 48 additions and 82 deletions
|
@ -118,19 +118,10 @@ class MCU_stepper:
|
|||
self._commanded_pos += 1
|
||||
else:
|
||||
self._commanded_pos -= 1
|
||||
def step_const(self, mcu_time, start_pos, dist, cruise_v):
|
||||
def step_const(self, mcu_time, start_pos, dist, start_v, accel):
|
||||
inv_step_dist = self._inv_step_dist
|
||||
step_offset = self._commanded_pos - start_pos * inv_step_dist
|
||||
count = self._ffi_lib.stepcompress_push_const(
|
||||
self._stepqueue, mcu_time * self._mcu_freq, step_offset,
|
||||
dist * inv_step_dist, cruise_v * self._velocity_factor)
|
||||
if count == STEPCOMPRESS_ERROR_RET:
|
||||
raise error("Internal error in stepcompress")
|
||||
self._commanded_pos += count
|
||||
def step_accel(self, mcu_time, start_pos, dist, start_v, accel):
|
||||
inv_step_dist = self._inv_step_dist
|
||||
step_offset = self._commanded_pos - start_pos * inv_step_dist
|
||||
count = self._ffi_lib.stepcompress_push_accel(
|
||||
self._stepqueue, mcu_time * self._mcu_freq, step_offset,
|
||||
dist * inv_step_dist, start_v * self._velocity_factor,
|
||||
accel * self._accel_factor)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue