TMCStepper
Library supporting Trinamic Stepper Drivers for Arduino platforms
Loading...
Searching...
No Matches
TMC2160Stepper.h
Go to the documentation of this file.
1
7#pragma once
8
9#define INIT2160_REGISTER(REG) TMC2160_n::REG##_t REG##_register{}
10
12 public:
13 TMC2160Stepper(uint16_t pinCS, float RS = default_RS, int8_t link_index = -1);
14 TMC2160Stepper(uint16_t pinCS, uint16_t pinMOSI, uint16_t pinMISO, uint16_t pinSCK, int8_t link_index = -1);
15 TMC2160Stepper(uint16_t pinCS, float RS, uint16_t pinMOSI, uint16_t pinMISO, uint16_t pinSCK, int8_t link_index = -1);
16 void begin();
17 void defaults();
18 void push();
19
20 uint16_t cs2rms(uint8_t CS);
21 void rms_current(uint16_t mA);
22 void rms_current(uint16_t mA, float mult);
23 uint16_t rms_current();
24
25 // IOIN
26 uint32_t IOIN();
27 bool refl_step();
28 bool refr_dir();
29 bool encb_dcen_cfg4();
30 bool enca_dcin_cfg5();
31 bool drv_enn();
32 bool dco_cfg6();
33 uint8_t version();
34
35 // W: OTP_PROG
36 // R: OTP_READ
37 // RW: FACTORY_CONF
38
39 // W: SHORT_CONF
40 void SHORT_CONF(uint32_t);
41 void s2vs_level(uint8_t);
42 void s2g_level(uint8_t);
43 void shortfilter(uint8_t);
44 void shortdelay(bool);
45 uint32_t SHORT_CONF();
46 uint8_t s2vs_level();
47 uint8_t s2g_level();
48 uint8_t shortfilter();
49 bool shortdelay();
50
51 // W: DRV_CONF
52 void DRV_CONF(uint32_t);
53 void bbmtime(uint8_t);
54 void bbmclks(uint8_t);
55 void otselect(uint8_t);
56 void drvstrength(uint8_t);
57 void filt_isense(uint8_t);
58 uint32_t DRV_CONF();
59 uint8_t bbmtime();
60 uint8_t bbmclks();
61 uint8_t otselect();
62 uint8_t drvstrength();
63 uint8_t filt_isense();
64
65 // W: GLOBAL_SCALER
66 void GLOBAL_SCALER(uint8_t);
67 uint8_t GLOBAL_SCALER();
68
69 // R: OFFSET_READ
70 uint16_t OFFSET_READ();
71
72 // W: PWMCONF
73 void PWMCONF(uint32_t input);
74 void pwm_ofs(uint8_t B);
75 void pwm_grad(uint8_t B);
76 void pwm_freq(uint8_t B);
77 void pwm_autoscale(bool B);
78 void pwm_autograd(bool B);
79 void freewheel(uint8_t B);
80 void pwm_reg(uint8_t B);
81 void pwm_lim(uint8_t B);
82 uint32_t PWMCONF();
83 uint8_t pwm_ofs();
84 uint8_t pwm_grad();
85 uint8_t pwm_freq();
86 bool pwm_autoscale();
87 bool pwm_autograd();
88 uint8_t freewheel();
89 uint8_t pwm_reg();
90 uint8_t pwm_lim();
91
92 // R: PWM_SCALE
93 uint32_t PWM_SCALE();
94 uint8_t pwm_scale_sum();
95 uint16_t pwm_scale_auto();
96
97 protected:
101
106
107 static constexpr float default_RS = 0.075;
108};
void pwm_symmetric(bool B)
Definition PWMCONF.cpp:26
TMC2130Stepper(uint16_t pinCS, float RS=default_RS, int8_t link_index=-1)
void pwm_ampl(uint8_t B)
Definition PWMCONF.cpp:22
uint16_t rms_current()
bool refr_dir()
Definition IOIN.cpp:32
void GLOBAL_SCALER(uint8_t)
bool pwm_autoscale()
Definition PWMCONF.cpp:60
uint8_t pwm_ofs()
Definition PWMCONF.cpp:57
INIT_REGISTER(GLOBAL_SCALER)
INIT2160_REGISTER(PWMCONF)
void SHORT_CONF(uint32_t)
bool dco_cfg6()
Definition IOIN.cpp:36
uint32_t IOIN()
Definition IOIN.cpp:30
bool pwm_autograd()
Definition PWMCONF.cpp:61
uint8_t pwm_freq()
Definition PWMCONF.cpp:59
TMC2160Stepper(uint16_t pinCS, float RS=default_RS, int8_t link_index=-1)
uint8_t GLOBAL_SCALER()
static constexpr float default_RS
uint8_t pwm_scale_sum()
uint8_t version()
Definition IOIN.cpp:37
void DRV_CONF(uint32_t)
Definition DRV_CONF.cpp:17
uint16_t cs2rms(uint8_t CS)
uint16_t OFFSET_READ()
uint8_t freewheel()
Definition PWMCONF.cpp:62
bool refl_step()
Definition IOIN.cpp:31
uint8_t pwm_grad()
Definition PWMCONF.cpp:58
bool drv_enn()
Definition IOIN.cpp:35
uint8_t bbmclks()
Definition DRV_CONF.cpp:28
uint8_t drvstrength()
Definition DRV_CONF.cpp:30
uint8_t bbmtime()
Definition DRV_CONF.cpp:27
bool enca_dcin_cfg5()
Definition IOIN.cpp:34
void PWMCONF(uint32_t input)
Definition PWMCONF.cpp:43
uint8_t s2g_level()
INIT_REGISTER(DRV_CONF)
uint8_t filt_isense()
Definition DRV_CONF.cpp:31
uint8_t pwm_reg()
Definition PWMCONF.cpp:63
INIT_REGISTER(SHORT_CONF)
bool encb_dcen_cfg4()
Definition IOIN.cpp:33
uint8_t shortfilter()
uint32_t DRV_CONF()
Definition DRV_CONF.cpp:16
uint8_t pwm_lim()
Definition PWMCONF.cpp:64
uint32_t PWMCONF()
Definition PWMCONF.cpp:40
uint8_t otselect()
Definition DRV_CONF.cpp:29
uint16_t pwm_scale_auto()
uint8_t s2vs_level()
uint32_t SHORT_CONF()