TMCStepper
Library supporting Trinamic Stepper Drivers for Arduino platforms
Loading...
Searching...
No Matches
GCONF.cpp
Go to the documentation of this file.
1
6#include "../TMCStepper.h"
7#include "TMC_MACROS.h"
8
9#define GET_REG(SETTING) GCONF_t r{}; r.sr = GCONF(); return r.SETTING
10#define SET_REG(SETTING) GCONF_register.SETTING = B; write(GCONF_register.address, GCONF_register.sr)
11
12//
13// TMC2130 (TMC2160, TMC5130, TMC5160, TMC5161)
14//
15
17 return read(GCONF_register.address);
18}
19void TMC2130Stepper::GCONF(uint32_t input) {
20 GCONF_register.sr = input;
21 write(GCONF_register.address, GCONF_register.sr);
22}
23
24void TMC2130Stepper::I_scale_analog(bool B) { SET_REG(i_scale_analog); }
25void TMC2130Stepper::internal_Rsense(bool B) { SET_REG(internal_rsense); }
37void TMC2130Stepper::diag1_pushpull(bool B) { SET_REG(diag1_poscomp_pushpull); }
41
42bool TMC2130Stepper::I_scale_analog() { GET_REG(i_scale_analog); }
43bool TMC2130Stepper::internal_Rsense() { GET_REG(internal_rsense); }
55bool TMC2130Stepper::diag1_pushpull() { GET_REG(diag1_poscomp_pushpull); }
59
60//
61// TMC5160 (TMC5161)
62//
63
64/*
65bit 18 not implemented:
66test_mode 0:
67Normal operation 1:
68Enable analog test output on pin DCO. IHOLD[1..0] selects the function of DCO:
690…2: T120, DAC, VDDH Attention:
70Not for user, set to 0 for normal operation!
71*/
72
79
80//
81// TMC2208 (TMC2209, TMC2224)
82//
83#define GET_REG_2208(SETTING) TMC2208_n::GCONF_t r{}; r.sr = GCONF(); return r.SETTING
84
86 return read(GCONF_register.address);
87}
88void TMC2208Stepper::GCONF(uint32_t input) {
89 GCONF_register.sr = input;
90 write(GCONF_register.address, GCONF_register.sr);
91}
92
93void TMC2208Stepper::I_scale_analog(bool B) { SET_REG(i_scale_analog); }
94void TMC2208Stepper::internal_Rsense(bool B) { SET_REG(internal_rsense); }
95void TMC2208Stepper::en_spreadCycle(bool B) { SET_REG(en_spreadcycle); }
102
112
113//
114// TMC2240
115//
116#define GET_REG_2240(SETTING) TMC2240_n::GCONF_t r{}; r.sr = GCONF(); return r.SETTING
117
118uint32_t TMC2240Stepper::GCONF() { return read(GCONF_register.address); }
119void TMC2240Stepper::GCONF(uint32_t input) {
120 GCONF_register.sr = input;
121 write(GCONF_register.address, GCONF_register.sr);
122}
123
139
#define GET_REG_2240(SETTING)
Definition CHOPCONF.cpp:100
#define GET_REG_2208(SETTING)
Definition CHOPCONF.cpp:68
#define SET_REG(SETTING)
Definition CHOPCONF.cpp:10
#define GET_REG(SETTING)
Definition CHOPCONF.cpp:9
void direct_mode(bool B)
Definition GCONF.cpp:40
bool diag0_error()
Definition GCONF.cpp:47
void en_pwm_mode(bool B)
Definition GCONF.cpp:26
void write(uint8_t addressByte, uint32_t config)
void diag1_stall(bool B)
Definition GCONF.cpp:32
bool stop_enable()
Definition GCONF.cpp:57
bool diag1_onstate()
Definition GCONF.cpp:52
void stop_enable(bool B)
Definition GCONF.cpp:39
void diag0_stall(bool B)
Definition GCONF.cpp:31
bool diag1_pushpull()
Definition GCONF.cpp:55
bool I_scale_analog()
Definition GCONF.cpp:42
bool internal_Rsense()
Definition GCONF.cpp:43
void diag0_error(bool B)
Definition GCONF.cpp:29
void diag1_onstate(bool B)
Definition GCONF.cpp:34
bool diag1_steps_skipped()
Definition GCONF.cpp:53
bool direct_mode()
Definition GCONF.cpp:58
void shaft(bool B)
Definition GCONF.cpp:28
bool diag0_otpw()
Definition GCONF.cpp:48
void small_hysteresis(bool B)
Definition GCONF.cpp:38
void enc_commutation(bool B)
Definition GCONF.cpp:27
void diag0_int_pushpull(bool B)
Definition GCONF.cpp:36
void diag1_steps_skipped(bool B)
Definition GCONF.cpp:35
bool diag1_index()
Definition GCONF.cpp:51
bool enc_commutation()
Definition GCONF.cpp:45
bool en_pwm_mode()
Definition GCONF.cpp:44
bool shaft()
Definition GCONF.cpp:46
void diag0_otpw(bool B)
Definition GCONF.cpp:30
bool diag0_stall()
Definition GCONF.cpp:49
bool diag1_stall()
Definition GCONF.cpp:50
uint32_t read(uint8_t addressByte)
uint32_t GCONF()
Definition GCONF.cpp:16
void diag1_index(bool B)
Definition GCONF.cpp:33
bool diag0_int_pushpull()
Definition GCONF.cpp:54
bool small_hysteresis()
Definition GCONF.cpp:56
bool mstep_reg_select()
Definition GCONF.cpp:110
void write(uint8_t, uint32_t)
uint32_t read(uint8_t)
bool I_scale_analog()
Definition GCONF.cpp:103
bool en_spreadCycle()
Definition GCONF.cpp:105
uint32_t GCONF()
Definition GCONF.cpp:85
void index_otpw(bool B)
Definition GCONF.cpp:97
void index_step(bool B)
Definition GCONF.cpp:98
bool internal_Rsense()
Definition GCONF.cpp:104
bool index_otpw()
Definition GCONF.cpp:107
bool pdn_disable()
Definition GCONF.cpp:109
bool index_step()
Definition GCONF.cpp:108
bool shaft()
Definition GCONF.cpp:106
bool multistep_filt()
Definition GCONF.cpp:111
void pdn_disable(bool B)
Definition GCONF.cpp:99
void shaft(bool B)
Definition GCONF.cpp:96
void multistep_filt(bool B)
Definition GCONF.cpp:101
void mstep_reg_select(bool B)
Definition GCONF.cpp:100
uint32_t GCONF()
Definition GCONF.cpp:118
bool multistep_filt()
Definition GCONF.cpp:142
void direct_mode(bool B)
Definition GCONF.cpp:138
bool en_pwm_mode()
Definition GCONF.cpp:141
void diag0_stall(bool B)
Definition GCONF.cpp:130
bool diag0_error()
Definition GCONF.cpp:144
void small_hysteresis(bool B)
Definition GCONF.cpp:136
void diag0_error(bool B)
Definition GCONF.cpp:128
bool diag0_otpw()
Definition GCONF.cpp:145
void diag1_onstate(bool B)
Definition GCONF.cpp:133
void write(uint8_t addressByte, uint32_t config)
void multistep_filt(bool B)
Definition GCONF.cpp:126
bool stop_enable()
Definition GCONF.cpp:153
bool direct_mode()
Definition GCONF.cpp:154
bool diag1_index()
Definition GCONF.cpp:148
void diag0_otpw(bool B)
Definition GCONF.cpp:129
bool diag0_pushpull()
Definition GCONF.cpp:150
bool shaft()
Definition GCONF.cpp:143
void fast_standstill(bool B)
Definition GCONF.cpp:124
bool diag1_pushpull()
Definition GCONF.cpp:151
void en_pwm_mode(bool B)
Definition GCONF.cpp:125
bool fast_standstill()
Definition GCONF.cpp:140
void diag1_index(bool B)
Definition GCONF.cpp:132
uint32_t read(uint8_t addressByte)
bool small_hysteresis()
Definition GCONF.cpp:152
bool diag1_stall()
Definition GCONF.cpp:147
bool diag1_onstate()
Definition GCONF.cpp:149
void shaft(bool B)
Definition GCONF.cpp:127
void diag1_pushpull(bool B)
Definition GCONF.cpp:135
void stop_enable(bool B)
Definition GCONF.cpp:137
void diag1_stall(bool B)
Definition GCONF.cpp:131
bool diag0_stall()
Definition GCONF.cpp:146
void diag0_pushpull(bool B)
Definition GCONF.cpp:134
void faststandstill(bool)
Definition GCONF.cpp:74
bool multistep_filt()
Definition GCONF.cpp:78
bool recalibrate()
Definition GCONF.cpp:76
void recalibrate(bool)
Definition GCONF.cpp:73
bool faststandstill()
Definition GCONF.cpp:77
void multistep_filt(bool)
Definition GCONF.cpp:75