TMCStepper
Library supporting Trinamic Stepper Drivers for Arduino platforms
Loading...
Searching...
No Matches
COOLCONF.cpp
Go to the documentation of this file.
1
6#include "../TMCStepper.h"
7#include "TMC_MACROS.h"
8
9#define SET_REG(SETTING) COOLCONF_register.SETTING = B; write(COOLCONF_register.address, COOLCONF_register.sr);
10#define GET_REG(SETTING) return COOLCONF_register.SETTING;
11
12//
13// TMC2130 (TMC2160, TMC5130, TMC5160, TMC5161)
14//
15
16uint32_t TMC2130Stepper::COOLCONF() { return COOLCONF_register.sr; }
17void TMC2130Stepper::COOLCONF(uint32_t input) {
18 COOLCONF_register.sr = input;
19 write(COOLCONF_register.address, COOLCONF_register.sr);
20}
21
22void TMC2130Stepper::semin( uint8_t B ) { SET_REG(semin); }
23void TMC2130Stepper::seup( uint8_t B ) { SET_REG(seup); }
24void TMC2130Stepper::semax( uint8_t B ) { SET_REG(semax); }
25void TMC2130Stepper::sedn( uint8_t B ) { SET_REG(sedn); }
27void TMC2130Stepper::sgt( int8_t B ) { SET_REG(sgt); }
29
36
38 uint8_t raw = COOLCONF_register.sgt; // "int7_t"
39 return int8_t(raw | ((raw & 0x40) << 1));
40}
41
42//
43// TMC2209
44//
45
46uint16_t TMC2209Stepper::COOLCONF() { return COOLCONF_register.sr; }
47void TMC2209Stepper::COOLCONF(uint16_t input) {
48 COOLCONF_register.sr = input;
49 write(COOLCONF_register.address, COOLCONF_register.sr);
50}
51
52void TMC2209Stepper::semin( uint8_t B ) { SET_REG(semin); }
53void TMC2209Stepper::seup( uint8_t B ) { SET_REG(seup); }
54void TMC2209Stepper::semax( uint8_t B ) { SET_REG(semax); }
55void TMC2209Stepper::sedn( uint8_t B ) { SET_REG(sedn); }
57
63
64//
65// TMC2240
66//
67
68void TMC2240Stepper::sgt( int8_t B ) { SET_REG(sgt); }
70 uint8_t raw = COOLCONF_register.sgt; // "int7_t"
71 return int8_t(raw | ((raw & 0x40) << 1));
72}
#define SET_REG(SETTING)
Definition CHOPCONF.cpp:10
#define GET_REG(SETTING)
Definition CHOPCONF.cpp:9
uint8_t sedn()
Definition COOLCONF.cpp:33
void write(uint8_t addressByte, uint32_t config)
void seimin(bool B)
Definition COOLCONF.cpp:26
void seup(uint8_t B)
Definition COOLCONF.cpp:23
void sgt(int8_t B)
Definition COOLCONF.cpp:27
uint8_t seup()
Definition COOLCONF.cpp:31
int8_t sgt()
Definition COOLCONF.cpp:37
void semax(uint8_t B)
Definition COOLCONF.cpp:24
void semin(uint8_t B)
Definition COOLCONF.cpp:22
uint32_t COOLCONF()
Definition COOLCONF.cpp:16
uint8_t semin()
Definition COOLCONF.cpp:30
uint8_t semax()
Definition COOLCONF.cpp:32
void sfilt(bool B)
Definition COOLCONF.cpp:28
void sedn(uint8_t B)
Definition COOLCONF.cpp:25
void write(uint8_t, uint32_t)
void seimin(bool B)
Definition COOLCONF.cpp:56
uint16_t COOLCONF()
Definition COOLCONF.cpp:46
uint8_t semax()
Definition COOLCONF.cpp:60
void semin(uint8_t B)
Definition COOLCONF.cpp:52
uint8_t seup()
Definition COOLCONF.cpp:59
uint8_t sedn()
Definition COOLCONF.cpp:61
void semax(uint8_t B)
Definition COOLCONF.cpp:54
uint8_t semin()
Definition COOLCONF.cpp:58
void seup(uint8_t B)
Definition COOLCONF.cpp:53
void sedn(uint8_t B)
Definition COOLCONF.cpp:55
void sgt(int8_t B)
Definition COOLCONF.cpp:68
int8_t sgt()
Definition COOLCONF.cpp:69