Library for Trinamic TMC2209 stepper modules to drive bipolar stepper motors. Ported and adapted from https://github.com/teemuatlut/TMCStepper

Dependents:   TMC2209-Test2

Revision:
0:f4343071c8b1
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/DRV_STATUS.cpp	Thu Mar 18 20:50:27 2021 +0000
@@ -0,0 +1,38 @@
+#include "TMCStepper.h"
+#include "TMC_MACROS.h"
+
+#define GET_REG(NS, SETTING) NS::DRV_STATUS_t r{0}; r.sr = DRV_STATUS(); return r.SETTING
+/*
+uint32_t TMC2130Stepper::DRV_STATUS() { return read(DRV_STATUS_t::address); }
+
+uint16_t TMC2130Stepper::sg_result(){ GET_REG(TMC2130_n, sg_result);    }
+bool TMC2130Stepper::fsactive()     { GET_REG(TMC2130_n, fsactive);     }
+uint8_t TMC2130Stepper::cs_actual() { GET_REG(TMC2130_n, cs_actual);    }
+bool TMC2130Stepper::stallguard()   { GET_REG(TMC2130_n, stallGuard);   }
+bool TMC2130Stepper::ot()           { GET_REG(TMC2130_n, ot);           }
+bool TMC2130Stepper::otpw()         { GET_REG(TMC2130_n, otpw);         }
+bool TMC2130Stepper::s2ga()         { GET_REG(TMC2130_n, s2ga);         }
+bool TMC2130Stepper::s2gb()         { GET_REG(TMC2130_n, s2gb);         }
+bool TMC2130Stepper::ola()          { GET_REG(TMC2130_n, ola);          }
+bool TMC2130Stepper::olb()          { GET_REG(TMC2130_n, olb);          }
+bool TMC2130Stepper::stst()         { GET_REG(TMC2130_n, stst);         }
+*/
+uint32_t TMC2208Stepper::DRV_STATUS() {
+    return read(TMC2208_n::DRV_STATUS_t::address);
+}
+
+bool        TMC2208Stepper::otpw()      { GET_REG(TMC2208_n, otpw);         }
+bool        TMC2208Stepper::ot()        { GET_REG(TMC2208_n, ot);           }
+bool        TMC2208Stepper::s2ga()      { GET_REG(TMC2208_n, s2ga);         }
+bool        TMC2208Stepper::s2gb()      { GET_REG(TMC2208_n, s2gb);         }
+bool        TMC2208Stepper::s2vsa()     { GET_REG(TMC2208_n, s2vsa);        }
+bool        TMC2208Stepper::s2vsb()     { GET_REG(TMC2208_n, s2vsb);        }
+bool        TMC2208Stepper::ola()       { GET_REG(TMC2208_n, ola);          }
+bool        TMC2208Stepper::olb()       { GET_REG(TMC2208_n, olb);          }
+bool        TMC2208Stepper::t120()      { GET_REG(TMC2208_n, t120);         }
+bool        TMC2208Stepper::t143()      { GET_REG(TMC2208_n, t143);         }
+bool        TMC2208Stepper::t150()      { GET_REG(TMC2208_n, t150);         }
+bool        TMC2208Stepper::t157()      { GET_REG(TMC2208_n, t157);         }
+uint16_t    TMC2208Stepper::cs_actual() { GET_REG(TMC2208_n, cs_actual);    }
+bool        TMC2208Stepper::stealth()   { GET_REG(TMC2208_n, stealth);      }
+bool        TMC2208Stepper::stst()      { GET_REG(TMC2208_n, stst);         }
\ No newline at end of file