TMCStepper
Library supporting Trinamic Stepper Drivers for Arduino platforms
Loading...
Searching...
No Matches
CHOPCONF.cpp
Go to the documentation of this file.
1
6#include "../TMCStepper.h"
7#include "TMC_MACROS.h"
8
9#define GET_REG(SETTING) CHOPCONF_t r{}; r.sr = CHOPCONF(); return r.SETTING
10#define SET_REG(SETTING) CHOPCONF_register.SETTING = B; write(CHOPCONF_register.address, CHOPCONF_register.sr)
11
12//
13// TMC2130 (TMC2160, TMC5130, TMC5160, TMC5161)
14//
15
16uint32_t TMC2130Stepper::CHOPCONF() { return read(CHOPCONF_register.address); }
17void TMC2130Stepper::CHOPCONF(uint32_t input) {
18 CHOPCONF_register.sr = input;
19 write(CHOPCONF_register.address, CHOPCONF_register.sr);
20}
21
22void TMC2130Stepper::toff( uint8_t B ) { SET_REG(toff); }
23void TMC2130Stepper::hstrt( uint8_t B ) { SET_REG(hstrt); }
24void TMC2130Stepper::hend( uint8_t B ) { SET_REG(hend); }
25//void TMC2130Stepper::fd( uint8_t B ) { SET_REG(fd); }
28void TMC2130Stepper::chm( bool B ) { SET_REG(chm); }
29void TMC2130Stepper::tbl( uint8_t B ) { SET_REG(tbl); }
33void TMC2130Stepper::sync( uint8_t B ) { SET_REG(sync); }
34void TMC2130Stepper::mres( uint8_t B ) { SET_REG(mres); }
38
42//uint8_t TMC2130Stepper::fd() { GET_REG(fd); }
55
56//
57// TMC5160 (TMC5161)
58//
59
61void TMC5160Stepper::tpfd(uint8_t B){ SET_REG(tpfd); }
64
65//
66// TMC2208 (TMC2209, TMC2224)
67//
68#define GET_REG_2208(SETTING) TMC2208_n::CHOPCONF_t r{}; r.sr = CHOPCONF(); return r.SETTING
69
70uint32_t TMC2208Stepper::CHOPCONF() { return read(CHOPCONF_register.address); }
71void TMC2208Stepper::CHOPCONF(uint32_t input) {
72 CHOPCONF_register.sr = input;
73 write(CHOPCONF_register.address, CHOPCONF_register.sr);
74}
75void TMC2208Stepper::toff ( uint8_t B ) { SET_REG(toff); }
76void TMC2208Stepper::hstrt ( uint8_t B ) { SET_REG(hstrt); }
77void TMC2208Stepper::hend ( uint8_t B ) { SET_REG(hend); }
78void TMC2208Stepper::tbl ( uint8_t B ) { SET_REG(tbl); }
80void TMC2208Stepper::mres ( uint8_t B ) { SET_REG(mres); }
82void TMC2208Stepper::dedge ( bool B ) { SET_REG(dedge); }
85
96
97//
98// TMC2240
99//
100#define GET_REG_2240(SETTING) TMC2240_n::CHOPCONF_t r{}; r.sr = CHOPCONF(); return r.SETTING
101
102uint32_t TMC2240Stepper::CHOPCONF() { return read(CHOPCONF_register.address); }
103void TMC2240Stepper::CHOPCONF(uint32_t input) {
104 CHOPCONF_register.sr = input;
105 write(CHOPCONF_register.address, CHOPCONF_register.sr);
106}
107void TMC2240Stepper::toff(uint8_t B) { SET_REG(toff); }
109void TMC2240Stepper::hend(uint8_t B) { SET_REG(hend); }
113void TMC2240Stepper::TBL(uint8_t B) { SET_REG(TBL); }
116void TMC2240Stepper::tpfd(uint8_t B) { SET_REG(tpfd); }
117void TMC2240Stepper::mres(uint8_t B) { SET_REG(mres); }
122
138
139//
140// TMC2660
141//
142#define GET_REG_2660(SETTING) return CHOPCONF_register.SETTING;
143
144uint32_t TMC2660Stepper::CHOPCONF() { return CHOPCONF_register.sr; }
145void TMC2660Stepper::CHOPCONF(uint32_t data) {
146 CHOPCONF_register.sr = data;
147 write(CHOPCONF_register.address, CHOPCONF_register.sr);
148}
149
150void TMC2660Stepper::toff(uint8_t B) {
151 SET_REG(toff);
152 if (B>0) _savedToff = B;
153}
155void TMC2660Stepper::hend(uint8_t B) { SET_REG(hend); }
156void TMC2660Stepper::hdec(uint8_t B) { SET_REG(hdec); }
159void TMC2660Stepper::tbl(uint8_t B) { SET_REG(tbl); }
160
#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
#define GET_REG_2660(SETTING)
Definition CHOPCONF.cpp:142
void write(uint8_t addressByte, uint32_t config)
void rndtf(bool B)
Definition CHOPCONF.cpp:27
bool vhighchm()
Definition CHOPCONF.cpp:49
void dedge(bool B)
Definition CHOPCONF.cpp:36
void toff(uint8_t B)
Definition CHOPCONF.cpp:22
void vhighfs(bool B)
Definition CHOPCONF.cpp:31
uint8_t hstrt()
Definition CHOPCONF.cpp:40
uint32_t CHOPCONF()
Definition CHOPCONF.cpp:16
void vsense(bool B)
Definition CHOPCONF.cpp:30
void mres(uint8_t B)
Definition CHOPCONF.cpp:34
void chm(bool B)
Definition CHOPCONF.cpp:28
void hstrt(uint8_t B)
Definition CHOPCONF.cpp:23
void intpol(bool B)
Definition CHOPCONF.cpp:35
void disfdcc(bool B)
Definition CHOPCONF.cpp:26
void tbl(uint8_t B)
Definition CHOPCONF.cpp:29
uint8_t toff()
Definition CHOPCONF.cpp:39
uint8_t sync()
Definition CHOPCONF.cpp:50
void sync(uint8_t B)
Definition CHOPCONF.cpp:33
uint8_t tbl()
Definition CHOPCONF.cpp:46
void hend(uint8_t B)
Definition CHOPCONF.cpp:24
uint32_t read(uint8_t addressByte)
void vhighchm(bool B)
Definition CHOPCONF.cpp:32
uint8_t hend()
Definition CHOPCONF.cpp:41
uint8_t mres()
Definition CHOPCONF.cpp:51
void diss2g(bool B)
Definition CHOPCONF.cpp:37
void dedge(bool B)
Definition CHOPCONF.cpp:82
void tbl(uint8_t B)
Definition CHOPCONF.cpp:78
void write(uint8_t, uint32_t)
void hstrt(uint8_t B)
Definition CHOPCONF.cpp:76
uint8_t hend()
Definition CHOPCONF.cpp:88
uint32_t read(uint8_t)
void vsense(bool B)
Definition CHOPCONF.cpp:79
void diss2vs(bool B)
Definition CHOPCONF.cpp:84
uint8_t mres()
Definition CHOPCONF.cpp:91
void toff(uint8_t B)
Definition CHOPCONF.cpp:75
void hend(uint8_t B)
Definition CHOPCONF.cpp:77
uint8_t tbl()
Definition CHOPCONF.cpp:89
void mres(uint8_t B)
Definition CHOPCONF.cpp:80
uint32_t CHOPCONF()
Definition CHOPCONF.cpp:70
uint8_t toff()
Definition CHOPCONF.cpp:86
void intpol(bool B)
Definition CHOPCONF.cpp:81
uint8_t hstrt()
Definition CHOPCONF.cpp:87
void diss2g(bool B)
Definition CHOPCONF.cpp:83
uint32_t CHOPCONF()
Definition CHOPCONF.cpp:102
uint8_t hstrt()
Definition CHOPCONF.cpp:124
uint8_t tpfd()
Definition CHOPCONF.cpp:132
void disfdcc(bool B)
Definition CHOPCONF.cpp:111
void intpol(bool B)
Definition CHOPCONF.cpp:118
void TBL(uint8_t B)
Definition CHOPCONF.cpp:113
void write(uint8_t addressByte, uint32_t config)
void diss2vs(bool B)
Definition CHOPCONF.cpp:121
void diss2g(bool B)
Definition CHOPCONF.cpp:120
void mres(uint8_t B)
Definition CHOPCONF.cpp:117
void hstrt(uint8_t B)
Definition CHOPCONF.cpp:108
uint8_t mres()
Definition CHOPCONF.cpp:133
uint8_t TBL()
Definition CHOPCONF.cpp:129
void hend(uint8_t B)
Definition CHOPCONF.cpp:109
void tpfd(uint8_t B)
Definition CHOPCONF.cpp:116
void fd3(bool B)
Definition CHOPCONF.cpp:110
void chm(bool B)
Definition CHOPCONF.cpp:112
uint32_t read(uint8_t addressByte)
uint8_t hend()
Definition CHOPCONF.cpp:125
void toff(uint8_t B)
Definition CHOPCONF.cpp:107
void vhighchm(bool B)
Definition CHOPCONF.cpp:115
void dedge(bool B)
Definition CHOPCONF.cpp:119
uint8_t toff()
Definition CHOPCONF.cpp:123
void vhighfs(bool B)
Definition CHOPCONF.cpp:114
uint8_t hstrt()
Definition CHOPCONF.cpp:162
uint8_t hdec()
Definition CHOPCONF.cpp:164
uint8_t hend()
Definition CHOPCONF.cpp:163
void write(uint8_t addressByte, uint32_t config)
void tbl(uint8_t)
Definition CHOPCONF.cpp:159
void hend(uint8_t)
Definition CHOPCONF.cpp:155
uint8_t tbl()
Definition CHOPCONF.cpp:167
void hdec(uint8_t)
Definition CHOPCONF.cpp:156
void chm(bool)
Definition CHOPCONF.cpp:158
void rndtf(bool)
Definition CHOPCONF.cpp:157
uint8_t toff()
Definition CHOPCONF.cpp:161
void hstrt(uint8_t)
Definition CHOPCONF.cpp:154
uint32_t CHOPCONF()
Definition CHOPCONF.cpp:144
void toff(uint8_t)
Definition CHOPCONF.cpp:150
void tpfd(uint8_t)
Definition CHOPCONF.cpp:61
uint8_t tpfd()
Definition CHOPCONF.cpp:63
void diss2vs(bool)
Definition CHOPCONF.cpp:60