|
HF-TMC9660 Driver 0.1.0-dev
Hardware Agnostic C++ Driver for the TMC9660
|
Subsystem for controlling the STEP/DIR pulse input interface. More...
#include <tmc9660.hpp>
Public Member Functions | |
| bool | setMicrostepResolution (tmc9660::tmcl::StepDirStepDividerShift µSteps) noexcept |
| Configure microstep resolution for each STEP pulse. | |
| bool | enableInterface (bool on) noexcept |
| Enable or disable the STEP/DIR interface. | |
| bool | enableExtrapolation (bool enable) noexcept |
| Enable signal extrapolation between STEP pulses. | |
| bool | setSignalTimeout (uint16_t timeout_ms) noexcept |
| Timeout before extrapolated motion stops after last pulse. | |
| bool | setMaxExtrapolationVelocity (uint32_t e_rpm) noexcept |
| Set maximum allowed extrapolation velocity. | |
| bool | enableVelocityFeedForward (bool enable_vel_ff) noexcept |
| Enable hardware feed-forward terms and set gain/shift. | |
Private Member Functions | |
| StepDir (TMC9660 &parent) noexcept | |
Private Attributes | |
| TMC9660 & | driver |
Friends | |
| class | TMC9660 |
Subsystem for controlling the STEP/DIR pulse input interface.
Enables stepper-style control using external STEP and DIR pulses, with support for:
Refer to Parameter IDs #205–#209 (Table 48). See datasheet page 95 for details on the STEP/DIR interface.
|
inlineexplicitprivatenoexcept |
|
noexcept |
Enable signal extrapolation between STEP pulses.
| enable | true = enable extrapolation |
STEPDIR_EXTRAPOLATE
|
noexcept |
Enable or disable the STEP/DIR interface.
| on | true = enable, false = disable |
STEPDIR_ENABLE
|
noexcept |
Enable hardware feed-forward terms and set gain/shift.
This allows the ramp generator to use feed-forward terms for velocity and acceleration.
| enable_vel_ff | Enable the VELOCITY_FEEDFORWARD feature (VELOCITY_FEEDFORWARD_ENABLE) |
|
noexcept |
Set maximum allowed extrapolation velocity.
| e_rpm | Max electrical RPM before extrapolation is disabled |
STEPDIR_MAXIMUM_EXTRAPOLATION_VELOCITY
|
noexcept |
Configure microstep resolution for each STEP pulse.
| µSteps | Microsteps per full step (e.g. 256 = 1/256 resolution) |
STEPDIR_STEP_DIVIDER_SHIFT (shift of incoming step pulse count)
|
noexcept |
Timeout before extrapolated motion stops after last pulse.
| timeout_ms | Timeout in milliseconds |
STEPDIR_STEP_SIGNAL_TIMEOUT_LIMIT
|
private |