7using tmc22xx::RegisterField;
10static constexpr uint8_t REG_TCOOLTHRS = 0x14;
11static constexpr uint8_t REG_SGTHRS = 0x40;
12static constexpr uint8_t REG_SG_RESULT = 0x41;
13static constexpr uint8_t REG_COOLCONF = 0x42;
15static constexpr RegisterField TCOOLTHRS{REG_TCOOLTHRS, 0, 20,
false};
16static constexpr RegisterField SGTHRS{REG_SGTHRS, 0, 8,
false};
17static constexpr RegisterField SG_RESULT{REG_SG_RESULT, 0, 10,
false};
18static constexpr RegisterField SEMIN{REG_COOLCONF, 0, 4,
false};
19static constexpr RegisterField SEUP{REG_COOLCONF, 5, 2,
false};
20static constexpr RegisterField SEMAX{REG_COOLCONF, 8, 4,
false};
21static constexpr RegisterField SEDN{REG_COOLCONF, 13, 2,
false};
22static constexpr RegisterField SEIMIN{REG_COOLCONF, 15, 1,
false};
uint8_t get_stallguard_threshold() const
LazyCallbackManager< void()> stall_callback_
void set_seup(uint8_t seup)
uint32_t * shadow_register(uint8_t reg) override
void set_stallguard_threshold(uint8_t threshold)
A stall is reported when the StallGuard result drops below twice this value.
uint8_t expected_version() const override
void set_tcool_threshold(uint32_t threshold)
Lower velocity limit, as TSTEP, for CoolStep and the StallGuard output on DIAG.
void set_seimin(bool seimin)
void set_semin(uint8_t semin)
void add_on_stall_callback(F &&callback)
Called when DIAG reports a stall. StallGuard only works in StealthChop, between TCOOLTHRS and TPWMTHR...
void set_semax(uint8_t semax)
void on_diag_without_error() override
void dump_config() override
void set_sedn(uint8_t sedn)
void restore_registers() override
Base class for Trinamic stepper drivers that are configured over the single wire UART interface.
static uint32_t extract_field(uint32_t data, const RegisterField &field)
bool write_field(const RegisterField &field, uint32_t value)