From: Joseph Coffland Date: Wed, 6 Jan 2016 07:22:32 +0000 (-0800) Subject: Motor config X-Git-Url: https://git.buildbotics.com/?a=commitdiff_plain;h=c0417ae1b4f6a517e84f1768bb686ba32ed3b378;p=bbctrl-firmware Motor config --- diff --git a/src/tmc2660.c b/src/tmc2660.c index d2c8cfb..33e40af 100644 --- a/src/tmc2660.c +++ b/src/tmc2660.c @@ -216,26 +216,28 @@ void tmc2660_init() { drivers[i].state = TMC2660_STATE_CONFIG; drivers[i].reg = 0; - drivers[i].regs[TMC2660_DRVCTRL] = TMC2660_DRVCTRL_MRES_8; - //drivers[i].regs[TMC2660_CHOPCONF] = TMC2660_CHOPCONF_TBL_36 | - // TMC2660_CHOPCONF_HEND(0) | TMC2660_CHOPCONF_HSTART(4) | - // TMC2660_CHOPCONF_TOFF(4); + drivers[i].regs[TMC2660_DRVCTRL] = TMC2660_DRVCTRL_DEDGE | TMC2660_DRVCTRL_MRES_8; drivers[i].regs[TMC2660_CHOPCONF] = TMC2660_CHOPCONF_TBL_36 | - TMC2660_CHOPCONF_CHM | TMC2660_CHOPCONF_HEND(7) | - TMC2660_CHOPCONF_HSTART(6) | TMC2660_CHOPCONF_TOFF(7); + TMC2660_CHOPCONF_HEND(0) | TMC2660_CHOPCONF_HSTART(4) | + TMC2660_CHOPCONF_TOFF(4); + //drivers[i].regs[TMC2660_CHOPCONF] = TMC2660_CHOPCONF_TBL_36 | + // TMC2660_CHOPCONF_CHM | TMC2660_CHOPCONF_HEND(7) | + // TMC2660_CHOPCONF_HSTART(6) | TMC2660_CHOPCONF_TOFF(7); //drivers[i].regs[TMC2660_SMARTEN] = TMC2660_SMARTEN_SEIMIN | // TMC2660_SMARTEN_MAX(2) | TMC2660_SMARTEN_MIN(2); drivers[i].regs[TMC2660_SGCSCONF] = TMC2660_SGCSCONF_SFILT | - TMC2660_SGCSCONF_THRESH(63) | TMC2660_SGCSCONF_CS(4); + TMC2660_SGCSCONF_THRESH(63) | TMC2660_SGCSCONF_CS(6); drivers[i].regs[TMC2660_DRVCONF] = TMC2660_DRVCONF_RDSEL_MSTEP; } // Setup pins - // Why is it necessary to set the SS pin for master mode to work? + // Must set the SS pin either in/high or any/output for master mode to work TMC2660_SPI_PORT.OUTSET = 1 << TMC2660_SPI_SS_PIN; // High - TMC2660_SPI_PORT.DIRSET = 1 << TMC2660_SPI_SS_PIN; // Output + TMC2660_SPI_PORT.DIRCLR = 1 << TMC2660_SPI_SS_PIN; // Input + TMC2660_SPI_PORT.OUTSET = 1 << TMC2660_SPI_SCK_PIN; // High TMC2660_SPI_PORT.DIRSET = 1 << TMC2660_SPI_SCK_PIN; // Output + TMC2660_SPI_PORT.DIRCLR = 1 << TMC2660_SPI_MISO_PIN; // Input TMC2660_SPI_PORT.OUTSET = 1 << TMC2660_SPI_MOSI_PIN; // High TMC2660_SPI_PORT.DIRSET = 1 << TMC2660_SPI_MOSI_PIN; // Output