
TMC2225 DATASHEET (Rev. 1.15 / 2023-FEB-16)
58
12 Internal Step Pulse Generator
UART
The TMC2225 integrates a high-resolution step pulse generator, allowing motor motion via the UART
interface. However, no velocity ramping is provided. Ramping is not required, if the target motion
velocity is smaller than the start & stop frequency of the motor. For higher velocities, ramp up the
frequency in small steps to accelerate the motor, and ramp down again to decelerate the motor.
Figure 12.1 shows an example motion profile ramping up the motion velocity in discrete steps.
Choose the ramp velocity steps considerably smaller than the maximum start velocity of the motor,
because motor torque drops at higher velocity, and motor load at higher velocity typically increases.
v
motor
stop
Target Velocity
acceleration
constant velocity
deceleration
Stop velocity
Start velocity
0
t
VACTUAL
Figure 12.1 Software generated motion profile
PARAMETER VS. UNITS
Parameter / Symbol
fCLK[Hz]
µstep velocity v[Hz]
USC microstep count
rotations per second v[rps]
TSTEP, TPWMTHRS
VACTUAL
Unit
[Hz]
µsteps / s
counts
rotations / s
-
Two’s complement
signed internal
velocity
calculation / description / comment
clock frequency of the TMC2225 in [Hz]
v[Hz] = VACTUAL[2225] * ( fCLK[Hz] / 2^24 )
With internal oscillator:
v[Hz] = VACTUAL[2225] * 0.715Hz
microstep resolution in number of microsteps
(i.e., the number of microsteps between two
fullsteps – normally 256)
v[rps] = v[Hz] / USC / FSC
FSC: motor fullsteps per rotation, e.g., 200
TSTEP = fCLK / f256STEP = fCLK / (fSTEP*256/USC)
= 2^24 / (VACTUAL*256/USC)
The time reference for velocity threshold is
referred to the actual 1/256 microstep frequency
of the step input respectively velocity v[Hz].
VACTUAL[2225] = v[Hz] / ( fCLK[Hz] / 2^24 )
With internal oscillator:
VACTUAL[2225] = v[Hz] / 0.715Hz
Hint
To monitor internal step pulse execution, program the INDEX output to provide step pulses
(GCONF.index_step). It toggles upon each step. Use a timer input on your CPU to count pulses.
Alternatively, regularly poll MSCNT to grasp steps done in the previous polling interval. It wraps
around from 1023 to 0.
www.trinamic.com











































































