Library for Trinamic TMC2209 stepper modules to drive bipolar stepper motors. Ported and adapted from https://github.com/teemuatlut/TMCStepper
IHOLD_IRUN.cpp@0:f4343071c8b1, 2021-03-18 (annotated)
- Committer:
- charly
- Date:
- Thu Mar 18 20:50:27 2021 +0000
- Revision:
- 0:f4343071c8b1
First version of TMCStepper for Trinamic TMC2209-modules.; Software ported and adapted from https://github.com/teemuatlut/TMCStepper
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
charly | 0:f4343071c8b1 | 1 | #include "TMCStepper.h" |
charly | 0:f4343071c8b1 | 2 | #include "TMC_MACROS.h" |
charly | 0:f4343071c8b1 | 3 | |
charly | 0:f4343071c8b1 | 4 | #define SET_REG(SETTING) IHOLD_IRUN_register.SETTING = B; write(IHOLD_IRUN_register.address, IHOLD_IRUN_register.sr); |
charly | 0:f4343071c8b1 | 5 | #define GET_REG(SETTING) return IHOLD_IRUN_register.SETTING; |
charly | 0:f4343071c8b1 | 6 | |
charly | 0:f4343071c8b1 | 7 | // IHOLD_IRUN |
charly | 0:f4343071c8b1 | 8 | uint32_t TMCStepper::IHOLD_IRUN() { return IHOLD_IRUN_register.sr; } |
charly | 0:f4343071c8b1 | 9 | void TMCStepper::IHOLD_IRUN(uint32_t input) { |
charly | 0:f4343071c8b1 | 10 | IHOLD_IRUN_register.sr = input; |
charly | 0:f4343071c8b1 | 11 | write(IHOLD_IRUN_register.address, IHOLD_IRUN_register.sr); |
charly | 0:f4343071c8b1 | 12 | } |
charly | 0:f4343071c8b1 | 13 | |
charly | 0:f4343071c8b1 | 14 | void TMCStepper::ihold(uint8_t B) { SET_REG(ihold); } |
charly | 0:f4343071c8b1 | 15 | void TMCStepper::irun(uint8_t B) { SET_REG(irun); } |
charly | 0:f4343071c8b1 | 16 | void TMCStepper::iholddelay(uint8_t B) { SET_REG(iholddelay); } |
charly | 0:f4343071c8b1 | 17 | |
charly | 0:f4343071c8b1 | 18 | uint8_t TMCStepper::ihold() { GET_REG(ihold); } |
charly | 0:f4343071c8b1 | 19 | uint8_t TMCStepper::irun() { GET_REG(irun); } |
charly | 0:f4343071c8b1 | 20 | uint8_t TMCStepper::iholddelay() { GET_REG(iholddelay); } |