
23/46
L7250
Sense, to determine rotor position, Open Loop Commutation, which accelerates the motor to build up BEMF,
Synchronization , to measure motor speed and position, initializing the Smoothdrive system, and Closed Loop
Smoothdrive Commutation, the normal synchronous commutation mode to accelerate and run at speed.
2.7.1 Inductive Position Sense
Inductive position sensing is achieved through a firmware routine that measures the current rise time in each of
the six possible states (six steps profile), and uses this information to determine the rotor position.
The six steps profile still comes from the Profile Memory that contains 48 samples, but in this case there are
only six different configuration, each of them repeated eight times; the linear scansion of the memory one sam-
ple at a time gives a new six step configuration every eight increments.
Before any operation can be done, the firmware routine must set the KVAL value present in SPI to the maximum
value (*1) , to saturate the PWM signals given to the motor, and put the Memory Address Counter in a known
position (*3); this is done keeping the motor in OLCOAST (*2) state and asserting a LoadCP command (*4) to
load the content of the torque optimizer related SPI register into the Memory Address Counter.
At this point, the present six steps configuration can be energized through the INDSENSE state (*5) , waiting
for the current to reach the threshold programmable via SPI (*6); the current limiting comparator will be triggered
by this condition, and it's output will be visible at ZC pad. The current rise time will be measured and stored from
the ASIC (*7) .
The device automatically limits the PWM signals for the three phases to limit the current, but the currents in the
windings must be recirculated from firmware putting the motor in OLCOAST (*8) state.
A burst of eight ADVANCE signals (*9) must be asserted from SPI to reach the next configuration in the profile
memory, then the procedure can be repeated. Each winding can be excited more than one time, to average the
measurements, and at the end of the sensing sequence the ASIC decides the rotor position.
Figure 4. Inductive Sense Routine
Set KVAL
Write Reg.08H
Kv[7:0] = 11111111
Measure Current
Rise Time
By reading the
ZC (pin 22)
Set OLCOAST
Write Reg.03H
Spstate[3:0] = 0001
Set Torque Optimizer
Write Reg.07H
TO[4:0] = 00000
Set Load Coarse Phase
Write Reg.07H
LoadCP = 1
Set ADVANCE
Write Reg.07H
Advance = 1
Set INDUCTIVE SENSE
Write Reg.03H
Spstate[3:0] = 0101
Store the measured
Current Rise Time
& Nph associated
Set OLCOAST
Write Reg.03H
Spstate[3:0] = 0001
START
Inductive Sense Routine
Nadv=0 , Nph=0
Nadv=8
Inc Nadv
Inc Nph
Nph
= 48
Compare the Six
Measured Rise Time
to define the
ROTOR POSITION
EXIT
Inductive Sense
Routine
Wait for
Current Decay
Nadv=0
ZC=0
ZC=1
NO
YES
NO
(*1)
(*2)
(*3)
(*4)
(*5)
(*6)
(*7)
(*8)
(*9)