Datasheet
TMC2300 DATASHEET (Rev. 1.02 / 2019-NOV-06) 24
www.trinamic.com
5.2 Velocity Dependent Control
VELOCITY DEPENDENT DRIVER FEATURE CONTROL REGISTER SET (0X10…0X1F)
R/W
Addr
n
Register
Description / bit names
W
0x10
5
+
5
+
4
IHOLD_IRUN
Bit
IHOLD_IRUN – Driver current control
4..0
IHOLD (Reset default=8)
Standstill current (0=1/32 … 31=32/32)
Setting IHOLD=0 allows to choose freewheeling or
coil short circuit (passive braking) for motor stand
still.
12..8
IRUN (Reset default=31)
Motor run current (8=9/32 … 31=32/32)
Working with values below 8 is not recommended.
Hint: Choose sense resistors in a way, that normal
IRUN is 16 to 31 for best performance.
19..16
IHOLDDELAY (Reset default=1)
Controls the number of clock cycles for motor
power down after standstill is detected (stst=1) and
TPOWERDOWN has expired. The smooth transition
avoids a motor jerk upon power down.
0: instant power down
1..15: Delay per current reduction step in multiple
of 2^18 clocks
W
0x11
8
TPOWER
DOWN
TPOWERDOWN (Reset default=20)
Sets the delay time from stand still (stst) detection to motor
current power down. Time range is about 0 to 5.6 seconds.
0…((2^8)-1) * 2^18 t
CLK
Attention: A minimum setting of 2 is required to allow
automatic tuning of StealthChop PWM_OFFS_AUTO.
R
0x12
20
TSTEP
Actual measured time between two 1/256 microsteps derived
from the step input frequency in units of 1/fCLK. Measured
value is (2^20)-1 in case of overflow or stand still.
The TSTEP related threshold uses a hysteresis of 1/16 of the
compare value to compensate for jitter in the clock or the step
frequency: (Txxx*15/16)-1 is the lower compare value for each
TSTEP based comparison.
This means, that the lower switching velocity equals the
calculated setting, but the upper switching velocity is higher as
defined by the hysteresis setting.
W
0x22
24
VACTUAL
VACTUAL allows moving the motor by UART control.
It gives the motor velocity in +-(2^23)-1 [µsteps / t]
0: Normal operation. Driver reacts to STEP input.
/=0: Motor moves with the velocity given by VACTUAL. Step
pulses can be monitored via DIAG output, using diag_step or
diag_index setting. The motor direction is controlled by the
sign of VACTUAL. Optionally, poll MSCNT at least once each 511
steps to keep track of the actual position by accumulating the
difference of the actual value to the previous value.