A3981KLP-T [ALLEGRO]

暂无描述;
A3981KLP-T
型号: A3981KLP-T
厂家: ALLEGRO MICROSYSTEMS    ALLEGRO MICROSYSTEMS
描述:

暂无描述

驱动器
文件: 总42页 (文件大小:943K)
中文:  中文翻译
下载:  下载PDF数据表文档文件
A3981  
Automotive, Programmable Stepper Driver  
Description  
Features and Benefits  
TheA3981isaflexiblemicrosteppingmotordriverwithbuilt-in  
• Peak motor current up to ±1.4 A, 28 V  
translatorforeasyoperation.Itisasingle-chipsolution,designed  
to operate bipolar stepper motors in full-, half-, quarter- and  
sixteenth-step modes, at up to 28 V and ±1.4 A. The A3981  
can be controlled by simple Step and Direction inputs, or  
through the SPI-compatible serial interface that also can be  
used to program many of the integrated features and to read  
diagnostic information.  
• Low RDS(on) outputs, 0.5 Ω source and sink, typical  
• Automatic current decay mode detection/selection  
• Mixed, Fast, and Slow current decay modes  
• Synchronous rectification for low power dissipation  
• Internal OVLO, UVLO, and Thermal Shutdown circuitry  
• Crossover-current protection  
• Short circuit and open load diagnostics  
• Hot and cold thermal warning  
• Stall detect features  
• SPI-compatible or simple Step and Direction motion control  
• Highly configurable via SPI-compatible serial interface  
The current regulator can be programmed to operate in fixed  
off-time or fixed frequency PWM, with several decay modes  
to reduce audible motor noise and increase step accuracy.  
In addition the phase current tables can be programmed via  
the serial interface to create unique microstep current  
profiles to further improve motor performance for  
specific applications.  
Applications  
• Automotive stepper motors  
• Engine management  
The current in each phase of the motor is controlled through a  
DMOS full bridge, using synchronous rectification to improve  
power dissipation. Internal circuits and timers prevent cross-  
conduction and shoot-through, when switching between high-  
side and low-side drives.  
• Headlamp positioning  
Package: 28-pin TSSOP with exposed  
thermal pad (suffix LP)  
The outputs are protected from short circuits, and features  
for low load current and stalled rotor detection are included.  
Chip-levelprotectionincludes:hotandcoldthermalwarnings,  
overtemperature shutdown, and overvoltage and undervoltage  
lockout.  
TheA3981 is supplied in a 28-pin TSSOPpower package with  
an exposed thermal pad (package type LP). This package is  
lead (Pb) free with 100% matte-tin leadframe plating.  
Not to scale  
Typical Applications  
Automotive  
12V Power Net  
Automotive  
12V Power Net  
Logic  
Supply  
Logic  
Supply  
CP1 CP2  
VDD  
STEP  
DIR  
MS0  
MS1  
ENABLE  
RESETn  
DIAG  
CP1 CP2  
VDD  
STEP  
DIR  
MS0  
MS1  
ENABLE  
RESETn  
DIAG  
VCP VBB  
OAP  
VCPVBB  
OAP  
OAM  
OAM  
Micro-  
controller  
or  
Micro-  
controller  
or  
Stepper  
Motor  
Stepper  
Motor  
REF  
REF  
OBP  
OBM  
OBP  
OBM  
SDI  
SDI  
ECU  
ECU  
SDO  
SCK  
STRn  
SDO  
SCK  
STRn  
VREG  
VREG  
SENSA  
SENSB  
SENSA  
SENSB  
OSC  
OSC  
AGND PGND  
AGND PGND  
Serial Interface Control  
Parallel Control  
A3981-DS, Rev. 4  
A3981  
Automotive, Programmable Stepper Driver  
Selection Guide  
Part Number  
A3981KLP-T  
Packing*  
50 pieces per tube  
4.4 mm × 9.7 mm, 1.2 mm nominal height TSSOP  
with exposed thermal pad  
A3981KLPTR-T  
4000 pieces per reel  
*Contact Allegro® for additional packing information.  
Absolute Maximum Ratings With respect to GND  
Characteristic  
Symbol  
Notes  
Rating  
–0.3 to 50  
–0.3 to 6  
Unit  
V
Load Supply Voltage  
VBBx  
Applies to VBBA and VBBB  
Logic Supply Voltage  
Pin CP1  
VDD  
V
–0.3 to VBB  
–0.3 to VBB+8  
–0.3 to 6  
V
Pins CP2, VCP  
V
Pins STEP, DIR, ENABLE, DIAG  
Pin VREG  
V
–0.3 to 8.5  
–0.3 to 6  
V
Pin RESETn  
Can be pulled to VBB with 38 kΩ  
V
Pin OSC  
–0.3 to 6  
V
Pins MS0, MS1  
–0.3 to 6  
V
Pins SDI, SDO, SCK, STRn  
Pin REF  
–0.3 to 6  
V
–0.3 to 6  
V
Pins OAP, OAM, OBP, OBM  
Pins SENSA, SENSB  
–0.3 to VBB  
–0.3 to 1  
V
V
Ambient Operating Temperature  
Range  
TA  
Range K; limited by power dissipation  
–40 to 150  
150  
°C  
°C  
Maximum Continuous Junction  
Temperature  
TJ(max)  
Overtemperature event not exceeding 10 s,  
lifetime duration not exceeding 10 hours,  
guaranteed by design and characterization  
Transient Junction Temperature  
Storage Temperature Range  
TtJ  
175  
°C  
°C  
Tstg  
–55 to 150  
Thermal Characteristics may require derating at maximum conditions  
Characteristic  
Symbol  
Test Conditions*  
Value  
28  
Unit  
ºC/W  
ºC/W  
4-layer PCB based on JEDEC standard  
2-layer PCB with 24.52 cm2 of copper area each side  
Package Thermal Resistance  
(Junction to Ambient)  
RθJA  
32  
Package Thermal Resistance  
(Junction to Pad)  
RθJP  
2
ºC/W  
*Additional thermal information available on the Allegro website  
Allegro MicroSystems, Inc.  
115 Northeast Cutoff  
2
Worcester, Massachusetts 01615-0036 U.S.A.  
1.508.853.5000; www.allegromicro.com  
A3981  
Automotive, Programmable Stepper Driver  
Functional Block Diagram  
OSC  
VREG  
CP1  
CP2  
3.3V  
VDD  
REF  
VCP  
Oscillator  
Regulator  
Charge  
Pump  
REF  
DAC  
VBAT  
DMOS Full Bridge  
SENSA  
6-bit  
DAC  
VBBA  
+
-
OAP  
OAM  
STEP  
DIR  
PWM  
Control  
MS1  
MS0  
SENSA  
RESETn  
ENABLE  
System  
Control  
and  
Bridge  
Control  
Logic  
Gate  
Drive  
Registers  
DMOS Full Bridge  
VBAT  
SDI  
SDO  
SCK  
VBBB  
STRn  
PWM  
Control  
OBP  
OBM  
REF  
+
-
6-bit  
DAC  
SENSB  
SENSB  
Undervoltage, Overvoltage  
Cold Warning, Hot Warning, Overtemperature  
Short Detect, Open Load Detect  
Stall Detect  
DIAG  
AGND  
PAD  
PGND  
Allegro MicroSystems, Inc.  
115 Northeast Cutoff  
3
Worcester, Massachusetts 01615-0036 U.S.A.  
1.508.853.5000; www.allegromicro.com  
A3981  
Automotive, Programmable Stepper Driver  
ELECTRICAL CHARACTERISTICS1,2 Valid at TJ = –40°C to 150°C, VBB = 7 to 28 V, VDD = 3 to 5.5 V; unless otherwise noted  
Characteristics  
Symbol  
Test Conditions  
Min.  
Typ.  
Max.  
Unit  
Supplies  
Functional  
0
7
3
1
4
50  
VBBOV  
4
V
Load Supply Voltage Range3  
VBB  
Outputs Driving  
ENABLE = 0  
Sleep mode  
V
mA  
μA  
V
Load Supply Quiescent Current  
Logic Supply Voltage Range  
IBBQ  
VDD  
10  
5.5  
5
ENABLE = 0  
mA  
mA  
μA  
μA  
ENABLE=0, VDD > 5 V  
Sleep mode, VDD = 3.3 V  
Sleep mode, VDD = 5 V  
5.5  
15  
Logic Supply Quiescent Current  
IDDQ  
25  
With repect to VBB, VBB >7.5 V, ENABLE = 0,  
RESETn = 1  
Charge Pump Voltage  
VCP  
6.7  
V
Internal Regulator Voltage  
Internal Regulator Dropout Voltage  
Motor Bridge Output  
VREG  
ENABLE = 0, RESETn = 1, VBB > 7.5 V  
7.2  
V
VREGDO ENABLE = 0, RESETn = 1, VBB > 5.6 V  
100  
200  
mV  
VBB = 13.5 V, IOUT = –1 A, TJ = 25°C  
500  
900  
625  
600  
1100  
750  
mΩ  
mΩ  
mΩ  
High-Side On-Resistance  
RONH  
VBB = 13.5 V, IOUT = –1 A, TJ = 150°C  
VBB = 7 V, IOUT = –1 A, TJ = 25°C  
IF = 1 A  
High-Side Body Diode Forward  
Voltage  
VFH  
1.4  
V
VBB = 13.5 V, IOUT = 1 A, TJ = 25°C  
VBB = 13.5 V, IOUT = 1 A, TJ = 150°C  
500  
900  
625  
600  
1100  
750  
mΩ  
mΩ  
mΩ  
Low-Side On-Resistance  
RONL  
V
BB = 7 V, IOUT = 1 A, TJ = 25°C  
Low-Side Body Diode Forward  
Voltage  
VFL  
IF = –1 A  
1.4  
V
ENABLE = 0, RESETn = 1, VO = VBB  
ENABLE = 0, RESETn = 1, VO = 0 V  
ENABLE = 0, RESETn = 0, VO = VBB  
ENABLE = 0, RESETn = 0, VO = 0 V  
–120  
–200  
–65  
–120  
<1.0  
<1.0  
μA  
μA  
μA  
μA  
Output Leakage Current  
ILO  
20  
–20  
Current Control  
OSC = AGND  
3.2  
3.6  
3
4
4.8  
4.4  
5
MHz  
MHz  
MHz  
ns  
Internal Oscillator Frequency  
fOSC  
51 kΩ from OSC to VDD  
External Oscillator Frequency Range  
Blank Time4  
fEXT  
tBLANK  
tOFF  
Default Blank-Time  
Default Off-Time  
1500  
44  
Off-Time (In Fixed Off-Time Mode)4  
μs  
PWM Frequency (In Fixed Frequency  
Mode)4  
fPWM  
Default PWM Frequency  
16.7  
kHz  
Continued on the next page…  
Allegro MicroSystems, Inc.  
115 Northeast Cutoff  
4
Worcester, Massachusetts 01615-0036 U.S.A.  
1.508.853.5000; www.allegromicro.com  
A3981  
Automotive, Programmable Stepper Driver  
ELECTRICAL CHARACTERISTICS1,2 (continued) Valid at TJ = –40°C to 150°C, VBB= 7 to 28 V, VDD = 3 to 5.5 V; unless  
otherwise noted  
Characteristics  
Current Control (continued)  
Fast Decay Time4  
Symbol  
Test Conditions  
Min.  
Typ.  
Max.  
Unit  
tFAST  
VREF  
Default Fast Decay Time  
8
2
μs  
V
Reference Input Voltage  
Internal Reference Voltage  
Current Control (continued)  
Reference Input Current  
Maximum Sense Voltage  
Current Trip Point Error5  
0.8  
1.1  
VREFint  
REF tied to VDD  
1.2  
1.3  
V
IREF  
VSMAX  
EITrip  
–3  
0
125  
3
μA  
mV  
%
VREF = 2 V, MxI0 = MxI1 = 1  
±5  
Logic Input And Output – DC Parameters  
0.3×VDD  
V
V
Input Low Voltage  
VIL  
VIH  
VDD > 4.5 V  
0.28×VDD  
Input High Voltage  
0.7×VDD  
500  
V
Input Hysteresis  
VIhys  
IIN  
250  
mV  
μA  
kΩ  
V
Input Current (Except RESETn)  
Input Pull-Down Resistor (RESETn)  
Output Low Voltage  
0 V < VIN < VDD  
–1  
1
RPD  
VOL  
VOH  
IO  
50  
IOL = 2 mA  
0.2  
0.4  
Output High Voltage  
IOL = –2 mA  
VDD–0.4  
–1  
VDD–0.2  
V
Output Leakage (SDO)  
0 V < VO < VDD, STRn = 1  
1
μA  
Logic Input And Output – Dynamic Parameters  
Reset Pulse Width  
tRST  
tRSD  
0.2  
10  
4.5  
μs  
μs  
ns  
ns  
ns  
ns  
ns  
ns  
ns  
ns  
ns  
ns  
ns  
ns  
Reset Shutdown Width  
Input Pulse Filter Time (STEP, DIR)  
Clock High Time  
tPIN  
35  
tSCKH  
tSCKL  
tSTLD  
tSTLG  
tSTRH  
tSDOE  
tSDOD  
tSDOV  
tSDOH  
tSDIS  
tSDIH  
A in figure 1  
B in figure 1  
C in figure 1  
D in figure 1  
E in figure 1  
F in figure 1  
G in figure 1  
H in figure 1  
I in figure 1  
J in figure 1  
K in figure 1  
50  
50  
30  
30  
300  
Clock Low Time  
Strobe Lead Time  
Strobe Lag Time  
Strobe High Time  
Data Out Enable Time  
40  
30  
40  
Data Out Disable Time  
Data Out Valid Time from Clock Falling  
Data Out Hold Time from Clock Falling  
Data In Set-Up Time to Clock Rising  
Data In Hold Time From Clock Rising  
5
15  
10  
STEP Rising to STRn Rising  
Setup Time  
tSPS  
tSPH  
L in figure 1, only when D15 = 1 and D14 = 0  
M in figure 1, only when D15 = 1 and D14 = 0  
100  
300  
ns  
ns  
STEP Rising from STRn Rising  
Hold Time  
Continued on the next page…  
Allegro MicroSystems, Inc.  
115 Northeast Cutoff  
5
Worcester, Massachusetts 01615-0036 U.S.A.  
1.508.853.5000; www.allegromicro.com  
A3981  
Automotive, Programmable Stepper Driver  
ELECTRICAL CHARACTERISTICS1,2 (continued) Valid at TJ = –40°C to 150°C, VBB= 7 to 28 V, VDD = 3 to 5.5 V; unless  
otherwise noted  
Characteristics  
Symbol  
Test Conditions  
Min.  
Typ.  
Max.  
Unit  
Logic Input And Output – Dynamic Parameters (continued)  
Step Low Time  
tSTPH  
tSU  
1
μs  
Setup Time Control Input Change  
to STEP  
MS1, MS2, DIR  
MS1, MS2, DIR  
200  
ns  
Hold Time Control Input Change  
from STEP  
tH  
200  
1
ns  
Wake-Up from RESET  
tEN  
ms  
Diagnostics and Protection  
VBB Overvoltage Threshold  
VBBOV  
VBBOVHys  
VREGUV  
VRGUVHys  
VDDUV  
VDDUVHys  
tWD  
VBB rising  
VREG falling  
VDD falling  
Bit 13 = 1  
32  
2
34  
36  
4
V
V
VBB Overvoltage Hysteresis  
VREG Undervoltage Threshold  
VREG Undervoltage Hysteresis  
VDD Undervoltage Threshold  
VDD Undervoltage Hysteresis  
OSC Timeout  
5.1  
5.4  
V
1
V
2.6  
50  
0.5  
1.4  
3
2.9  
V
100  
1
mV  
μs  
A
1.5  
2.65  
8
High-Side Overcurrent Threshold  
High-Side Current Limit  
IOCH  
Sampled after tSCT  
2.05  
5.5  
250  
2000  
ILIMH  
Active during tSCT  
A
Low-Side Overcurrent Sense Voltage  
Overcurrent Fault Delay  
VOCL  
Sampled after tSCT  
210  
1500  
290  
2700  
±10  
mV  
ns  
%
tSCT  
Default Fault Delay  
Open Load Current Threshold Error  
Temperature Voltage Output Offset  
Temperature Voltage Output Slope  
Cold Temperature Warning Threshold  
Cold Temperature Warning Hysteresis  
Hot Temperature Warning Threshold  
Hot Temperature Warning Hysteresis  
Overtemperature Shutdown Threshold  
Overtemperature Hysteresis  
EIOC  
VREF = 2 V, Mx0 = Mx1 = 1  
Temperature output selected on DIAG pin  
VTO  
1440  
–3.92  
–10  
15  
mV  
mV/°C  
ºC  
ºC  
ºC  
ºC  
ºC  
ºC  
AT  
TJWC  
Temperature decreasing  
Temperature increasing  
–20  
0
TJWChys  
TJWH  
TJWHhys  
TJF  
125  
135  
15  
145  
Temperature increasing  
Recovery = TJF – TJhys  
155  
170  
15  
TJhys  
1For input and output current specifications, negative current is defined as coming out of (sourcing) the specified device pin.  
2All references to “VBB” apply to VBBA and VBBB.  
3Function is correct but parameters are not guaranteed above or below the general limits (7 to 28 V). Outputs not operational above VBBOV or  
below VREGUVL  
.
4Assumes a 4 MHz clock.  
5Current Trip Point Error is the difference between actual current trip point and the target current trip point, referred to maximum full scale (100%)  
current: EItrip = 100 × [ItripActual – ItripTarget ] / IFullScale (%).  
Allegro MicroSystems, Inc.  
115 Northeast Cutoff  
6
Worcester, Massachusetts 01615-0036 U.S.A.  
1.508.853.5000; www.allegromicro.com  
A3981  
Automotive, Programmable Stepper Driver  
No rise when  
D15=1 and D14=0  
STEP  
L
M
STRn  
SCK  
SDI  
C
A
B
D
E
J
K
X
D15  
X
D14  
X
D0  
X
F
I
G
SDO  
Z
D15'  
D14'  
D0'  
Z
H
Figure 1. Serial Interface Timing Diagram  
Key  
A
Characteristic  
Clock High Time  
Key  
Characteristic  
H
I
Data Out Valid Time from Clock Falling  
Data Out Hold Time from Clock Falling  
Data In Set-Up Time to Clock Rising  
Data In Hold Time From Clock Rising  
STEP Rising to STRn Rising Setup Time  
STEP Rising from STRn Rising Hold Time  
“Don’t care”  
B
Clock Low Time  
C
Strobe Lead Time  
Strobe Lag Time  
Strobe High Time  
Data Out Enable Time  
J
D
K
L
M
X
Z
E
F
G
Data Out Disable Time  
High-impedance (tristate)  
tSTPH  
tSTPL  
STEP  
tSU  
tH  
DIR, MS0, MS1  
RESETn  
tEN  
ENABLE*  
* ENABLE(Pin) OR RUN[EN] bit  
Figure 2. Control Input Interface Timing Diagram  
Allegro MicroSystems, Inc.  
115 Northeast Cutoff  
7
Worcester, Massachusetts 01615-0036 U.S.A.  
1.508.853.5000; www.allegromicro.com  
A3981  
Automotive, Programmable Stepper Driver  
Functional Description  
The A3981 is an automotive stepper motor driver suitable for  
high temperature applications such as headlamp bending and  
leveling, throttle control, and gas recirculation control. It is also  
suitable for other low current stepper applications such as air con-  
ditioning and venting. It provides a highly flexible microstepping  
motor driver that can be configured via the SPI-compatible serial  
interface. It can be controlled with simple Step and Direction  
inputs, for high speed stepping applications, or directly through  
the serial interface by writing a step change value.  
AGND Analog reference ground. Quiet return for measurement  
and input references. Connect to PGND (see Layout section).  
PGND Digital and power ground. Connect to supply ground and  
AGND (see Layout section).  
OAP, OAM Motor connection for phase A. Positive motor phase  
current direction is defined as flowing from OAM to OAP.  
OBP, OBM Motor connection for phase B. Positive motor phase  
current direction is defined as flowing from OBM to OBP.  
The two DMOS full bridges are capable of driving bipolar step-  
per motors in full-, half-, quarter-, eighth- and sixteenth-step  
modes, at up to 28 V and ±1.4 A. The current in each phase of the  
stepper motor is regulated by a peak detect PWM current control  
scheme that can be programmed to operate in fixed off-time or  
fixed frequency. Several decay modes can be selected to reduce  
audible motor noise and increase step accuracy. In addition the  
phase current tables, which default to a sinusoidal current profile,  
can be programmed via the serial interface to create unique  
microstep current profiles to further improve motor performance  
for specific applications.  
SENSA Phase A current sense. Connect sense resistor between  
SENSA and PGND.  
SENSB Phase B current sense. Connect sense resistor between  
SENSB and PGND.  
REF Reference input to set absolute maximum current level for  
both phases. Defaults to internal reference when tied to VDD.  
STEP Step logic input. Motor advances on rising edge. Filtered  
input with hysteresis.  
DIR Direction logic input. Direction changes on the next STEP  
rising edge. When high, the Phase Angle Number is increased  
on the rising edge of STEP. Has no effect when using the serial  
interface. Filtered input with hysteresis.  
The outputs are protected from short circuits, and features for  
open load and stalled rotor detection are included. Chip level pro-  
tection includes hot and cold thermal warning, overtemperature  
shutdown, and overvoltage and undervoltage lockout.  
MS0 Microstep resolution select input.  
MS1 Microstep resolution select input.  
Pin Functions  
VBBA, VBBB Main motor supply and chip supply for internal  
regulators and charge pump. VBBA and VBBB should be con-  
nected together and each decoupled to ground with a low ESR  
electrolytic capacitor and a good ceramic capacitor.  
RESETn Resets faults when pulsed low. Forces low-power shut-  
down (sleep) when held low for more than the Reset Shutdown  
Width, tRSD . Can be pulled to VBB with 30 kΩ resistor.  
ENABLE Controls activity of bridge outputs. When held low,  
deactivates the outputs, that is, turns off all output bridge FETs.  
Internal logic continues to follow input commands.  
Note: Any reference to “VBB” in this specification is defined as  
applying to both VBBA and VBBB.  
CP1, CP2 Pump capacitor connection for charge pump. Connect  
SDI Serial data input. 16-bit serial word input MSB first.  
a 100 nF (50 V) ceramic capacitor between CP1 and CP2.  
SDO Serial data output. High impedance when STRn is high. Out-  
puts bit 15 of the diagnostic registers (Fault Register 0 and Fault  
Register 1), the Fault Register flag, as soon as STRn goes low.  
VCP Above-supply voltage for high-side drive. A 100 nF (16 V)  
ceramic capacitor should be connected between VCP and VBB to  
provide the pump storage reservoir.  
SCK Serial interface clock. Data is latched in from SDI on the  
VDD Logic supply. Compatible with 3.3 V and 5 V logic. Should rising edge of the SCK clock signal. There must be 16 rising  
be decoupled to ground with a 100 nF (10 V) ceramic capacitor.  
edges per write and SCK must be held high when STRn changes.  
VREG Regulated supply for bridge gate drive. Should be decou-  
STRn Serial data strobe and serial access enable. When STRn  
pled to ground with a 470 nF (10 V) ceramic capacitor.  
is high any activity on SCK or SDI is ignored, and SDO is high  
Allegro MicroSystems, Inc.  
115 Northeast Cutoff  
8
Worcester, Massachusetts 01615-0036 U.S.A.  
1.508.853.5000; www.allegromicro.com  
A3981  
Automotive, Programmable Stepper Driver  
impedance allowing multiple SDI slaves to have common SDI,  
SCK, and SDO connections.  
partially- or fully-programmed through the serial interface.  
Each leg (high-side, low-side pair) of a bridge is protected from  
shoot-through by a fixed dead time. This is the time between  
switching off one FET and switching on the complementary FET.  
Cross-conduction is prevented by lock-out logic in each driver pair.  
DIAG Diagnostic output. Function selected via the serial inter-  
face, setting Configuration Register 1. Default is Fault output.  
OSC With bit 13 in Configuration Register 1 set to 0, either con-  
nect this pin to AGND to use the internal oscillator running at the  
default frequency of 4 MHz, or connect a resistor to VDD to set  
the internal oscillator frequency. (The approximate frequency is  
calculated from:  
The phase currents and in particular the relative phase currents  
are defined in the Phase Current table (table 7). This table defines  
the two phase currents at each microstep position. For each of the  
two phases, the currents are measured using a sense resistor, RS,  
with voltage feedback to the respective SENSx pin. The target  
current level is defined by the voltage from the digital-to-analog  
converter (DAC) for that phase. The sense voltage is amplified by  
a fixed gain and compared to the output of the DAC.  
f
OSC = 10 000 / (48 ROSC – 20)  
where fOSC is the internal oscillator frequency in MHz, and ROSC  
is the value, in kΩ of the resistor between OSC and VDD.)  
If bit 13 in Configuration Register 1 is set to 1, then OSC is the  
input for an external system clock, which must have a frequency  
between 3 and 5 MHz. In this mode a watchdog is provided to  
detect loss of the system clock. If the OSC pin remains high or  
low for more than the watchdog time, tWD , 1 μs typical, then the  
Fault Register flag (bit 15 in the diagnostic registers) is set and  
the outputs are disabled until the clock restarts.  
There are two types of maximum current: the absolute maximum,  
ISMAX, the maximum possible current defined by the sense resis-  
tor and the reference input; and the phase maximum, IPMAX, the  
maximum current delivered to a motor phase.  
The absolute maximum current, ISMAX, is defined as:  
ISMAX = VREF / (16 × RS)  
where VREF is the voltage at the REF pin, and RS is the sense  
resistor value.  
Driving a Stepper Motor  
A two-phase stepper motor is made to rotate by sequencing  
the relative currents in each phase. In its simplest form, each  
phase is simply fully energized in turn by applying a voltage to  
the winding. For more precise control of the motor torque over  
temperature and voltage ranges, current control is required. For  
efficiency this is usually accomplished using pulse width modula-  
tion (PWM) techniques. In addition current control also allows  
the relative current in each phase to be controlled, providing more  
precise control over the motor movement and hence improve-  
ments in torque ripple and mechanical noise. Further details of  
stepper motor control are provided in Appendix A.  
The phase maximum, IPMAX , is the 100% reference level for the  
phase current table and may be a fraction of the absolute maxi-  
mum current, ISMAX , depending on the value of the MXI0 and  
MXI1 bits in Configuration Register 0.  
For example:  
• if RS = 180 mΩ and VREF = 2 V, then ISMAX = 694 mA  
• if MXI1= 1 and MXI0 = 0, then IPMAX = 520 mA  
The actual current delivered to each phase at each Step Angle  
Number is determined by the value of IPMAX and the contents  
of the Phase Current table. For each phase, the value in the table  
is passed to the DAC, which uses IPMAX as the reference 100%  
level (code 63) and reduces the current target depending on the  
DAC code. The output from the DAC is used as the input to the  
current comparators.  
For bipolar stepper motors the current direction is significant,  
so the voltage applied to each phase must be reversible. This  
requires the use of a full bridge (also known as an H-bridge)  
which can switch each phase connection to supply or to ground.  
Phase Current Control  
In the A3981, current to each phase of the two-phase bipolar  
stepper motor is controlled through a low impedance N-channel  
DMOS full bridge. This allows efficient and precise control of  
the phase current using PWM switching. The full-bridge con-  
figuration provides full control over the current direction during  
the PWM on-time, and over the current decay mode during the  
PWM off-time. Due to the flexibility of the A3981 these control  
techniques can be completely transparent to the user or can be  
The current comparison is ignored at the start of the PWM  
on-time for a duration referred to as the blank time. The blank  
time is necessary to prevent any capacitive switching currents  
from causing a peak current detection.  
The PWM on-time starts at the beginning of each PWM period.  
The current rises in the phase winding until the sense voltage  
reaches the required current level. At this point the PWM off-time  
Allegro MicroSystems, Inc.  
115 Northeast Cutoff  
9
Worcester, Massachusetts 01615-0036 U.S.A.  
1.508.853.5000; www.allegromicro.com  
A3981  
Automotive, Programmable Stepper Driver  
starts and the bridge is switched into one of two decay modes,  
slow decay or fast decay:  
MXI[0..1]) in Configuration Register 0. The phase currents for  
each entry in the Phase Current table are expressed as a percent-  
age of this maximum phase current.  
• Slow decay is most effective when the current is rising from  
step to step, and it occurs when the phase winding is effectively  
shorted by switching-on either both high-side FETs or both low-  
side FETs in the full bridge.  
When using the STEP and DIR inputs to control the stepper  
motor, the A3981 automatically increases or decreases the Step  
Angle Number according to the step sequence associated with  
the selected step mode. The default step mode, reset at power-  
up or after a power on reset, is full step. Half-, quarter-, and  
sixteenth-step sequences are also available when using the STEP  
and DIR inputs, and are selected using the logical OR of the MS0  
and MS1 inputs and the MS0 and MS1 bits in Configuration Reg-  
ister 0. The eighth-step sequence is shown in the Phase Current  
table for reference only.  
• Fast decay is most effective when the current is falling from  
step to step, and it occurs when the voltage on the phase is  
reversed.  
One disadvantage of fast decay is the increased current ripple in  
the phase winding. However, this can be reduced while main-  
taining good current control, by using a short time of fast decay  
followed by slow decay for the remainder of the PWM off-time.  
This technique is commonly referred to as mixed decay  
When using the serial interface to control the stepper motor, a  
step change value (6-bit) is input through the serial interface to  
increase or decrease the Step Angle Number. The step change  
value is a two’s complement (2’sC) number, where a positive  
value increases the step angle and a negative value decreases  
the step angle. A single step change in the Step Angle Number is  
equivalent to a single one-sixteenth microstep. Therefore, for cor-  
rect motor movement, the step change value should be restricted  
to no greater than 16 steps, positive or negative.  
The A3981 provides two methods to determine the PWM  
frequency: fixed off-time and fixed frequency. At power-up the  
default mode is fixed off-time. Fixed frequency can be selected  
through the serial interface. Fixed off-time provides a marginal  
improvement in current accuracy over a wide range of current  
levels. Fixed frequency provides a fixed fundamental frequency  
to allow more precise supply filtering for EMC reduction. In both  
cases the PWM off-time will not be present if the peak current  
limit is not attained during the PWM on-time.  
This facility enables full control of the stepper motor at any  
microstep resolution up to and including sixteenth-step, plus  
the ability to change microstep resolution “on-the-fly” from one  
microstep to the next.  
Phase Current Table  
The relative phase currents are defined by the Phase Current table  
(table 7). This table contains 64 lines and is addressed by the Step  
Angle Number, where Step Angle Number 0 corresponds to 0° or  
360°. The Step Angle Number is generated internally by the step  
sequencer, which is controlled either by the STEP and DIR inputs  
or by the step change value from the serial input. The Step Angle  
Number determines the motor position within the 360° electri-  
cal cycle and a sequence of Step Angle Numbers determines the  
motor movement. Note that there are four full mechanical steps  
per 360° electrical cycle.  
In both control input method cases, the resulting Step Angle  
Number is used to determine the phase current value and current  
direction for each phase, based on the Phase Current table. The  
decay mode is determined by the position in the Phase Current  
table and the intended direction of rotation of the motor.  
Diagnostics  
The A3981 integrates a number of diagnostic features to protect  
the driver and load as far as possible from fault conditions and  
extreme operating environments. At the system level the supply  
voltages and the chip temperature are monitored. A number of  
these features automatically disable the current drive to protect  
the outputs and the load. Others only provide an indication of  
the likely fault status, as shown in the Fault table (table 1). A  
single diagnostic output pin (DIAG) can be programmed through  
the serial interface to provide several different internal signals.  
At power-up, or after a power-on-reset the DIAG pin outputs a  
simple Fault Output flag which will be low if a fault is present.  
The Fault Output flag remains low while the fault is present or if  
one of the latched faults (for example, a bridge short circuit) has  
been detected and the outputs disabled.  
Each line of the Phase Current table (table 7) has a 6-bit value per  
phase to set the DAC level for that phase, plus an additional bit  
per phase to determine the current direction for that phase. The  
Step Angle Number sets the electrical angle of the stepper motor  
in one-sixteenth microsteps, approximately equivalent to electri-  
cal steps of 5.625°.  
On first power-up or after a VDD power-on reset, the Phase Cur-  
rent table values are reset to define a sinusoidal current profile  
and the Step Angle Number is set to 8, equivalent to the electri-  
cal cycle 45° position. This position is defined as the “home”  
position. The maximum current in each phase, IPMAX , is defined  
by the sense resistor and the Maximum Current setting (bits  
Allegro MicroSystems, Inc.  
115 Northeast Cutoff  
10  
Worcester, Massachusetts 01615-0036 U.S.A.  
1.508.853.5000; www.allegromicro.com  
A3981  
Automotive, Programmable Stepper Driver  
Alternative to the Fault Output flag, the DIAG output can be pro- At the system level the supply voltages and chip temperature are  
grammed via the serial interface to output: the stall detect signal,  
which goes low when a stall is detected; the phase A PWM-on  
signal, which is high during the phase A PWM on-time; or an  
analog signal indicating the silicon temperature.  
monitored.  
Supply Voltage Monitors  
The logic supply, the motor supply, and the regulator output are  
monitored: the motor supply for overvoltage, and the regulator  
output and logic supply for undervoltage.  
If required, specific fault information can be determined by read-  
ing the diagnostic registers (see Serial Interface section).  
• If the motor supply voltage, VBBA and VBBB, goes above the  
VBB overvoltage threshold, the A3981 will disable the outputs  
and indicate the fault. When the motor supply voltage goes be-  
low the VBB overvoltage threshold, the outputs will be re-en-  
abled and the fault flag removed. The fault bits in the diagnostic  
registers remain set until cleared by a diagnostic registers reset.  
The first bit (bit 15) in both diagnostic registers contains a com-  
mon Fault Register flag which will be high if any of the fault bits  
in either register has been set. This allows a fault condition to be  
detected using the serial interface, by simply taking STRn low.  
As soon as STRn goes low the fist bit in the diagnostic registers  
can be read to determine if a fault has been detected at any time  
since the last diagnostic registers reset. In all cases the fault bits  
in the diagnostic registers are latched and only cleared after a  
diagnostic registers reset.  
• If the motor supply voltage, VBBA and VBBB, goes below the  
VBB undervoltage threshold, the A3981 will indicate the fault  
and reduce the VREG undervoltage threshold to the low level.  
When the motor supply voltage goes above the VBB under-  
voltage threshold, the VREG undervoltage threshold will be  
increased to the high level and the fault flag removed. The fault  
bits in the diagnostic registers remain set until cleared by a  
diagnostic registers reset.  
Note that the Fault Register flag in the diagnostic registers, does  
not provide the same function as the Fault Output flag on the  
DIAG pin. The Fault Output flag on the DIAG pin provides an  
indication that either a fault is present or the outputs have been  
disabled due to a short circuit fault. The Fault Register flag sim-  
ply provides an indication that a fault has occurred since the last  
diagnostic registers reset and has been latched.  
• If the output of the internal regulator, VREG , goes below the  
VREG undervoltage threshold, the A3981 will disable the  
outputs and indicate the fault. When the regulator output rises  
above the VREG undervoltage threshold, the outputs will be  
re-enabled and the fault flag removed. The fault bits in the diag-  
nostic registers remain set until cleared by a diagnostic registers  
reset.  
• If the logic supply voltage, VDD, goes below the VDD under-  
voltage threshold, the A3981 will be completely disabled except  
to monitor the VDD voltage level. When the logic supply voltage  
rises above the VDD undervoltage threshold, a power-on reset  
will take place and all registers will be reset to the default state.  
Table 1. Fault Table  
Diagnostic  
Action  
Latched  
Disable outputs, set  
Fault Register flag  
VBB Overvoltage  
No  
Disable outputs, set  
Fault Register flag  
Note that both the VREG undervoltage monitor and the VBB  
undervoltage monitor indicate a fault by using the same fault  
bit, UV, in both Fault registers. The state of the UV fault bit is  
determined by the logical OR of the fault output from these two  
undervoltage monitors.  
VREG Undervoltage  
No  
Power-down,  
full reset  
VDD Undervoltage  
Temperature Warning  
Overtemperature  
No  
No  
No  
Set Fault Register flag  
Disable outputs, set  
Fault Register flag  
Temperature Monitors  
Disable outputs, set  
Fault Register flag  
Bridge Short  
Yes  
Three specific temperature thresholds are provided: a hot  
warning, a cold warning, and an overtemperature shutdown. In  
addition, the analog internal signal used to determine the chip  
temperature can be selected in Configuration Register 1 as the  
output on the DIAG pin through the serial interface. The analog  
scale is TJ (VDIAG – VTO ) / AT .  
Bridge Open  
Stall Detect  
Set Fault Register flag  
Set ST flag  
No  
No  
Allegro MicroSystems, Inc.  
115 Northeast Cutoff  
11  
Worcester, Massachusetts 01615-0036 U.S.A.  
1.508.853.5000; www.allegromicro.com  
A3981  
Automotive, Programmable Stepper Driver  
FAULT0 and driving the DIAG output low if the Fault Output  
flag is selected. The output is switched off and remains off until a  
fault reset occurs.  
Hot Warning If the chip temperature rises above the Hot Tem-  
perature Warning Threshold, TJWH , the Fault flag will go low and  
the Hot Warning bits will be set in the diagnostic registers. No  
action will be taken by the A3981. When the temperature drops  
below the Hot Temperature Warning Threshold, the Fault flag  
will go high but the Hot Warning bits remain set in the diagnostic  
registers until reset.  
Note that the sense resistor cannot distinguish which low-side  
FET is in an overcurrent state. So, if more than one low-side FET  
is active when the fault is detected, for example during low-side  
recirculation with synchronous rectification, then the shorted con-  
nection is determined from the internal PWM state.  
Cold Warning If the chip temperature falls below the Cold  
Temperature Warning Threshold, TJWC , the Fault flag will go low  
and the Cold Warning bits will be set in the diagnostic registers.  
No action will be taken by the A3981. When the temperature rises  
above the Cold Temperature Warning Threshold, the Fault flag  
will go high but the Cold Warning bits remain set in the diagnos-  
tic registers until reset.  
The actual overcurrent that VOCL represents is determined by the  
value of the sense resistor and is typically 2 × ISMAX  
.
Short to Ground A short from any of the motor connections  
to ground is detected by directly monitoring the current through  
each of the high-side FETs in each bridge.  
When a high-side FET is in the On state the maximum current  
is typically always less than 1 A. In this state, an overcurrent is  
determined to exist when the current through the active high-side  
Overtemperature Shutdown If the chip temperature rises  
above the Overtemperature Shutdown Threshold, TJF , the Fault  
flag will go low and the Thermal Shutdown bits will be set in the  
diagnostic registers. The A3981 will disable the outputs to try to  
prevent a further increase in the chip temperature. When the tem-  
perature drops below the Overtemperature Shutdown Threshold,  
the Fault flag will go high but the Thermal Shutdown bits remain  
set in the diagnostic registers until reset.  
FET exceeds the High-Side Overcurrent Threshold, IOCH  
.
This overcurrent must be present for at least the Overcurrent  
Fault Delay, tSCT, before the short fault is confirmed by setting  
the relevant bit in FAULT0 and driving the DIAG output low if  
the Fault Output flag is selected. The output is switched off and  
remains off until a fault reset occurs.  
Bridge and Output Diagnostics  
Note that when a short to ground is present the current through  
the high-side FET is limited to the High-Side Current Limit,  
The A3981 includes monitors that can detect a short to supply or  
a short to ground at the motor phase connections. These condi-  
tions are detected by monitoring the current from the motor  
phase connections through the bridge to the motor supply and to  
ground.  
ILIMH , during the Overcurrent Fault Delay, tSCT . This prevents  
large negative transients at the phase output pins when the out-  
puts are switched off.  
Shorted Load A short across the load is indicated by concurrent  
short faults on both high side and low side.  
Low current comparators and timers are provided to help detect  
possible open load conditions.  
Short Fault Blanking All overcurrent conditions are ignored  
for the duration of the Overcurrent Fault Delay, tSCT. The short  
detection delay timer is started when an overcurrent first occurs.  
If the overcurrent is still present at the end of the short detection  
delay time then a short fault will be generated and latched. If the  
overcurrent goes away before the short detection delay time is  
complete, then the timer is reset and no fault is generated.  
Short to Supply A short from any of the motor connections to  
the motor supply (VBBA or VBBB) is detected by monitoring the  
voltage across the low-side current sense resistor in each bridge.  
This gives a direct measurement of the current through the low  
side of the bridge.  
When a low-side FET is in the On state, the voltage across the  
sense resistor, under normal operating conditions, should never  
be more than the Maximum Sense Voltage, VSMAX. In this state,  
an overcurrent is determined to exist when the voltage across the  
sense resistor exceeds the Low-Side Overcurrent Sense Voltage,  
This prevents false short detection caused by supply and load  
transients. It also prevents false short detections resulting from  
current transients generated by the motor or wiring capacitance  
when a FET is first switched on.  
V
OCL, typically 2 × VSMAX. This overcurrent must be continu-  
ously present for at least the Overcurrent Fault Delay, tSCT  
before the short fault is confirmed by setting the relevant bit in  
,
Short Fault Reset and Retry When a short circuit has been  
detected all outputs for the faulty phase are disabled until the  
Allegro MicroSystems, Inc.  
115 Northeast Cutoff  
12  
Worcester, Massachusetts 01615-0036 U.S.A.  
1.508.853.5000; www.allegromicro.com  
A3981  
Automotive, Programmable Stepper Driver  
next occurrence of: the next rising edge on the STEP input, the  
RESETn input is pulsed low, or until the diagnostic registers  
are reset by writing to one of the registers through the serial  
interface. At the next STEP command or after a fault reset, the  
Fault Register flag is cleared, the outputs are re-enabled, and the  
voltage across the FET is resampled. Note that the diagnostic  
registers are not cleared by the rising edge of the STEP input.  
ary. This can be due to a mechanical blockage such as an end stop  
or it can be due to the step sequence exceeding the motor capabil-  
ity for the attached load. Reliable stall detection in a simple step-  
per driver is only possible by combining the PWM monitor with  
a continuous step sequence at a sufficiently high step rate.  
When a motor is stopped or moving slowly there is no back EMF  
to impede the current in the phase windings. This allows the  
current to rise to the limit quickly and the PWM current control  
to activate. However, when a motor is running at speed the back  
EMF, generated by the speed of the magnetic poles in the motor  
passing the phase windings, acts against the supply voltage and  
reduces the rise time of the phase current. Therefore the PWM  
current control takes longer to activate. Assuming a constant step  
rate, this results in fewer PWM cycles for each step of the motor.  
While the fault persists the A3981 will continue this cycle,  
enabling the outputs for a short period then disabling the out-  
puts. This allows the A3981 to handle a continuous short circuit  
without damage. If, while stepping rapidly, a short circuit appears  
and no action is taken, the repeated short circuit current pulses  
will eventually cause the temperature of the A3981 to rise and an  
overtemperature fault will occur.  
Open Load Detection Open load conditions are detected  
by monitoring the phase current when the phase DAC value  
is greater than 31. The Open Load Current Threshold, IOL, is  
defined by the OL0 and OL1 bits in the Run register as a percent-  
age of the maximum (100%) phase current, IPMAX , defined in the  
Phase Current table. The 100% level in the Phase Current table is  
defined by the sense resistor value and the contents of the MXI0  
and MXI1 bits in Configuration Register 0.  
The A3981 uses this difference to detect a motor changing from  
continuous stepping to stalled. Two PWM counters, one for each  
phase, accumulate the number of PWM cycles when the phase  
current is stepped from zero to full current. At the end of each  
phase current rise, the counter for that phase is compared to the  
counter for the previous current rise, in the opposite phase. If the  
difference is greater than the number in the PWM compare regis-  
ter, then the ST bit in the diagnostic registers is set. In addition, if  
the ST signal is selected as the output on the DIAG pin, then the  
pin will go low.  
For example:  
• if RS = 180 mΩ and VREF = 2 V, then ISMAX = 694 mA  
• if MXI1 = 1 and MXI0 = 0, then IPMAX = 520 mA  
• if OL1=0 and OL0=1, then IOL = 156 mA  
This stall detection scheme assumes a number of factors:  
• The motor must be stepping fast enough for the back EMF to  
reduce the phase current slew rate. Stall detection reliability  
improves as the current slew rate reduces.  
The open load current monitor is only active after a blank  
time from the start of a PWM cycle. An open load can only be  
detected if the DAC value for the phase is greater than 31 and the  
current has not exceeded the Open Load Current Threshold for  
more than 15 PWM cycles.  
• The motor is not being stepped in full step mode.  
• The phase current table must conform to the 0% and ±100%  
conditions at steps 0, 16, 32, and 48.  
The A3981 continues to drive the bridge outputs under an open  
load condition and clears the Fault Register flag as soon as the  
phase current exceeds the Open Load Current Threshold or the  
DAC value is less than 32. The diagnostic registers retain the  
open load fault bits, OLA and OLB, and will not be cleared until  
RESETn is pulsed low or one of the diagnostic registers is written  
through the serial interface.  
• The phase current profiles must be the same for both phases.  
Although stall detection cannot be guaranteed using this detection  
method, good stall detection reliability can be achieved by careful  
selection of motor speed, count difference, and by conforming to  
the above factors.  
In addition to using the integrated features of the A3981, it is  
also possible to perform stall detection by examining the PWM  
on-time for a single phase using an external microcontroller. In  
the A3981 the PWM-on signal for phase A can be selected as the  
output on the DIAG pin, by using the serial interface.  
Stall Detection A PWM monitor feature is included in the  
A3981 to assist in determining the stall condition of the stepper  
motor. A stalled motor condition is when the phase currents are  
being sequenced to step the motor but the motor remains station-  
Allegro MicroSystems, Inc.  
115 Northeast Cutoff  
13  
Worcester, Massachusetts 01615-0036 U.S.A.  
1.508.853.5000; www.allegromicro.com  
A3981  
Automotive, Programmable Stepper Driver  
Serial Interface Description  
A three wire synchronous serial interface, compatible with  
SPI, can be used to configure and control all the features of the  
A3981. A fourth wire can be used to provide diagnostic feedback.  
The registers that are accessible through the serial interface are  
defined in table 2.  
Writing to Configuration and Control Registers  
When writing to the serial register, data is received on the SDI  
pin and clocked through a shift register on the rising edge of the  
clock signal input on the SCK pin. STRn is normally held high,  
and is only brought low to initiate a serial transfer. No data is  
clocked through the shift register when STRn is high, thus allow-  
ing multiple SDI slave units to use common SDI, SCK, and SDO  
connections. Each independent slave requires a dedicated STRn  
connection.  
The A3981 can be operated without using the serial interface,  
by using the default configuration and control register settings  
and the STEP and DIR logic inputs for motor control. However,  
application-specific configurations are only possible by setting  
the appropriate register bits through the serial interface. In addi-  
tion to setting the configuration bits, the serial interface can also  
be used to control the motor directly.  
The serial data word has 16 bits, MSB input first. After 16 data  
bits have been clocked into the shift register, STRn must be taken  
high to latch the data into the selected register. When this occurs,  
the internal control circuits act on the new configuration and  
control data, and the diagnostic registers are reset.  
The serial interface timing requirements are specified in the Elec-  
trical Characteristics table, and illustrated in figure 1.  
Table 2. Serial Register Definition*  
15  
14  
13  
12  
11  
10  
9
8
7
6
5
4
3
2
1
0
Configuration and Control Registers (Write)  
TOF2 TOF1 TOF0  
FRQ2 FRQ1 FRQ0  
Configuration  
Register 0  
(CONFIG0)  
SYR  
1
MS1  
0
MS0  
0
MXI1  
1
MXI0 PFD2 PFD1 PFD0 TBK1 TBK0  
PWM  
0
0
0
1
1
0
0
0
1
1
1
0
Configuration  
Register 1  
(CONFIG1)  
OSC  
0
TSC1 TSC0  
CD3  
1
CD2  
0
CD1  
0
CD0 DIAG1 DIAG0  
0
1
1
1
0
1
0
0
0
0
0
1
0
0
0
0
EN  
0
OL1  
0
OL0  
1
HLR SLEW BRK  
DCY1 DCY0  
SC5  
0
SC4  
0
SC3  
0
SC2  
0
SC1  
0
SC0  
0
Run Register  
(RUN)  
0
1
0
0
1
Table Load  
Register  
(TBLLD)  
PTP  
1
PT5  
0
PT4  
0
PT3  
0
PT2  
0
PT1  
0
PT0  
0
0
0
0
0
0
0
0
Diagnostic Registers (Read)  
Fault  
Register 0  
(FAULT0)  
FF  
TW1  
TW0  
OV  
OV  
UV  
UV  
ST  
ST  
OLB  
OLB  
OLA  
OLA  
BML  
0
BMH  
0
BPL  
SA5  
BPH  
SA4  
AML  
SA3  
AMH  
SA2  
APL  
SA1  
APH  
SA0  
Fault  
Register 1  
(FAULT1)  
FF  
TW1  
TW0  
*Power-on reset value shown below each input register bit.  
Allegro MicroSystems, Inc.  
115 Northeast Cutoff  
14  
Worcester, Massachusetts 01615-0036 U.S.A.  
1.508.853.5000; www.allegromicro.com  
A3981  
Automotive, Programmable Stepper Driver  
If there are more than 16 rising edges on SCK, or if STRn goes  
high and there are fewer than 16 rising edges on SCK, the write  
will be cancelled without writing data to the configuration and  
control registers. In addition the diagnostic registers will not be  
reset. Instead the FF bit will be set to 1 in the diagnostic registers,  
to indicate a data transfer error.  
remains high while STRn is low. When STRn goes high the trans-  
fer will be terminated and SDO will go into its high impedance  
state. Configuration and Run Registers  
These registers are used for system configuration and motor con-  
trol. Access is described in the section Writing to Configuration  
and Control Registers, above.  
The first two bits of the serial word are used to select the register  
to be written. This provides access to four writable registers:  
CONFIG0 sets certain system parameters, and CONFIG1 sets  
system and diagnostic output selection parameters. The RUN  
register contains motor drive settings used to control the motor  
movement and phase current.  
• The Configuration registers are used for system configuration:  
CONFIG0 for system parameters, and CONFIG1 for system  
and diagnostic parameters.  
Phase Table Load Register  
• The RUN register contains motor drive settings used to control  
the motor movement and phase current.  
This is one of the configuration and control registers, accessed  
when both address bits are 1. It can be used to write a sequence  
of values to the phase current table in the A3981. This allows  
the current at each Step Angle Number to be tailored to suit  
the microstep current profile requirements of a specific motor.  
In most cases this feature will not be required and the default  
sinusoidal profile will suffice. However for some motor / load  
combinations, altering the current profile can improve torque  
ripple, resulting in lower mechanical vibration and noise.  
• The fourth writable register, TBLLD, is a port that allows se-  
quential loading of the 16 distinct phase current table settings.  
Reading from Diagnostic Registers  
In addition to the writable registers there are two diagnostic  
registers. The first eight (most significant) bits of both diagnostic  
registers contain the same flags, only the last eight (least signifi-  
cant) bits differ, as follows:  
Although the phase current table contains 64 entries for each of  
two phases, only 16 distinct values are required. These 16 values  
correspond to one quadrant of the table for a single phase, and  
they are repeated for the other three quadrants and again for the  
four quadrants of the other phase. So each of the 16 values writ-  
ten to the Phase Table Load register are written to 8 locations in  
the phase current table.  
• FAULT0 contains the short-circuit fault flags  
• FAULT1 contains the present Step Angle Number  
Each time a configuration and control register is written, one  
of the diagnostic registers can be read, MSB first, on the serial  
output pin, SDO (see timing in figure 1). FAULT1 is made the  
active register for serial transfer and output on SDO only while  
CONFIG1 is being written, that is, only when the first bit of the  
input word is 0 and the second bit is 1. FAULT0 is the active  
register for serial transfer and output on SDO during writes to any  
other configuration or control register.  
The 16 values must be entered by sequential writes to the Phase  
Table Load register. The first write to the register after writing to  
any other register, or after a reset (RESETn pulse low or power-  
on), puts that value, PT[5..0], into the first phase table address,  
a 6-bit field defined as PT(0). Subsequent writes put values into  
successive addresses: PT(1), PT(2), and so forth up to PT(15).  
After the sixteenth value has been written, no more values are  
accepted and any writes to the Phase Table Load register are  
ignored. As each value is received, it is effectively distributed to  
all eight required locations in the phase current table.  
When STRn goes low to start a serial write, SDO comes out of its  
high impedance state and outputs the serial register Fault Register  
flag. This allows the main controller to poll the A3981 through  
the serial interface to determine if a fault has been detected. If no  
faults have been detected then the serial transfer may be termi-  
nated without generating a serial read fault by ensuring that SCK  
Allegro MicroSystems, Inc.  
115 Northeast Cutoff  
15  
Worcester, Massachusetts 01615-0036 U.S.A.  
1.508.853.5000; www.allegromicro.com  
A3981  
Automotive, Programmable Stepper Driver  
An optional simple odd parity scheme is included to provide  
some measure of error checking, if required. Each 6-bit value  
can be supplemented with an additional parity bit, PTP, to ensure  
an odd number of 1s in the transmission. This is checked by the  
A3981 and if a the number of 1s in the value plus parity bit is not  
odd, the FF bit will be set and the SDO pin will go high the next  
time STRn is taken low, indicating a parity error. That data will  
still be written to the next phase table value address; it is incum-  
bent upon the external controller to take action, if required.  
Diagnostic Registers  
The diagnostic registers comprise two read-only fault data regis-  
ters. Access is described in the section Reading from Diagnostic  
Registers, above.  
The diagnostic registers contain fault flags for each fault condi-  
tion and are reset to all 0s on the completion of each serial access.  
They are also reset to all 0s each time the RESETn input is low  
for longer than the Reset Pulse Width, tRST . FAULT0 is set to  
all 1s at power-up or after a power-on reset. This indicates to the  
external controller that a power-on reset has taken place and all  
registers have been reset. Note that a power-on reset only occurs  
when the VDD supply rises above its undervoltage threshold.  
If the write sequence is broken (by a reset, by writing to another  
register, or by a data transfer error) before the sequence has been  
completed, then the phase table value address will be reset to  
PT(0). If it is required to load the table, then the entire 16-value  
sequence must be sent.  
Power-on reset function is not affected by the state of the motor  
supply or VREG  
.
After loading, although the phase current table is volatile, a reset  
using a low pulse on the RESETn pin does not corrupt the table.  
The table is only reset to default values on a power-on reset.  
The first bit in both registers is the Fault Register flag, FF. This  
is high if any bits in FAULT0 are set, or if a serial write error or  
parity error has occurred.  
Allegro MicroSystems, Inc.  
115 Northeast Cutoff  
16  
Worcester, Massachusetts 01615-0036 U.S.A.  
1.508.853.5000; www.allegromicro.com  
A3981  
Automotive, Programmable Stepper Driver  
15  
0
14  
0
13  
12  
11  
10  
9
8
7
6
5
4
3
2
1
0
TOF2  
TOF1  
TOF0  
SYR  
1
MS1  
0
MS0  
0
MXI1  
1
MXI0  
1
PFD2 PFD1 PFD0  
TBK1  
0
TBK0  
1
PWM  
0
FRQ2 FRQ1 FRQ0  
CONFIG 0  
1
0
0
1
1
0
Configuration Register 0  
TOF[2..0]  
Off time (only valid when PWM bit = 0)  
Replaces FRQ bits  
Assumes 4-MHz clock  
SYR  
Synchronous rectification  
Synchronous Rectification  
Diode recirculation  
SYR  
Default  
0
1
TOF2  
TOF1  
TOF0 Off Time  
Default  
Synchronous  
D
0
0
0
0
1
1
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
20 μs  
24 μs  
28 μs  
32 μs  
36 μs  
40 μs  
44 μs  
48 μs  
MS[1..0] Microstep mode for external STEP input control  
MS1  
MS0  
Microstep Mode  
Default  
0
0
Full Step  
D
0
1
Half Step  
1
0
Quarter Step  
Sixteenth Step  
1
1
D
MXI[1..0] Max phase current as a percentage of ISMAX  
MXI1  
MXI0  
Maximum Current  
Default  
FRQ[2..0]  
Frequency (only valid when PWM bit = 1)  
Replace TOF bits  
Assumes 4-MHz clock  
0
0
1
1
0
1
0
1
25%  
50%  
75%  
FRQ2  
FRQ1  
FRQ0 Period / Frequency  
Default  
100%  
D
0
0
0
0
1
1
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
24 μs / 41.7 kHz  
32 μs / 31.3 kHz  
40 μs / 25.0 kHz  
46 μs / 21.7 kHz  
52 μs / 19.2 kHz  
56 μs / 17.9 kHz  
60 μs / 16.7 kHz  
64 μs / 15.6 kHz  
PFD[2..0]  
Fast decay time for mixed decay  
Assumes 4-MHz clock  
PFD2  
PFD1  
PFD0 Fast Decay Time  
Default  
0
0
0
0
1
1
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
2 μs  
3 μs  
D
4 μs  
6 μs  
8 μs  
D
PWM  
PWM configuration  
10 μs  
14 μs  
20 μs  
PWM MODE  
Default  
0
1
Fixed off-time  
D
Fixed frequency  
TBK[1..0]  
Blank Time  
Assumes 4-MHz clock  
TBK1  
TBK0 Blank Time  
Default  
0
0
1
1
0
1
0
1
1 μs  
1.5 μs  
2.5 μs  
3.5 μs  
D
Allegro MicroSystems, Inc.  
115 Northeast Cutoff  
17  
Worcester, Massachusetts 01615-0036 U.S.A.  
1.508.853.5000; www.allegromicro.com  
A3981  
Automotive, Programmable Stepper Driver  
15  
0
14  
1
13  
12  
11  
10  
0
9
0
8
0
7
0
6
0
5
4
3
2
1
0
OSC  
0
TSC1 TSC0  
CD3  
1
CD2  
0
CD1  
0
CD0  
0
DIAG1 DIAG0  
CONFIG 1  
1
0
0
0
EN  
0
OL1  
0
OL0  
1
HLR  
0
SLEW  
1
BRK  
0
DCY1 DCY0  
SC5  
0
SC4  
0
SC3  
0
SC2  
0
SC1  
0
SC0  
0
RUN  
1
0
0
1
Configuration Register 1  
Run Register  
Phase current enable  
OR with ENABLE pin  
OSC  
Selects clock source  
Clock Source  
Internal  
EN  
OSC  
Default  
0
1
D
EN  
0
Phase Current Enable  
Default  
External  
Output bridges disabled if ENABLE  
pin = 0  
D
1
Output bridges enabled  
Overcurrent fault delay  
TSC[1..0] Assumes 4-MHz clock  
Open load current threshold as a percentage of  
OL[1..0] maximum current defined by ISMAX and MXI[1..0]  
TSC1  
TSC0 Detect Delay Time  
Default  
0
0
1
1
0
1
0
1
0.5 μs  
1 μs  
OL1  
OL0  
Open Load Current  
Default  
0
0
20%  
30%  
40%  
50%  
2 μs  
D
0
1
D
3 μs  
1
0
1
1
PWM count difference for ST detection  
CD[3..0] Default to 8  
HLR  
Selects slow decay and brake recirculation path  
HLR  
0
Recirculation Path  
Default  
DIAG[1..0] Selects signal routed to DIAG output  
High side  
D
DIAG1 DIAG0 Signal on DIAG Pin  
Default  
1
Low side  
0
0
1
1
0
1
0
1
Fault–low true  
ST–low true  
D
SLEW  
Slew rate control  
SLEW Slew Rate Control  
Default  
PWM-on, Phase A  
Temperature  
0
1
Disable  
Enable  
D
BRK  
Brake enable  
Brake  
BRK  
0
Default  
Normal operation  
Brake active  
D
1
DCY[1..0] Decay mode selection  
DCY1  
DCY0 Decay Mode  
Default  
0
0
1
1
0
1
0
1
Slow  
Mixed—PFD fixed  
Mixed—PFD auto  
Fast  
D
SC[5..0]  
Step change number  
2’s complement format  
Positive value increases Step Angle Number  
Negative value decreases Step Angle Number  
Allegro MicroSystems, Inc.  
115 Northeast Cutoff  
18  
Worcester, Massachusetts 01615-0036 U.S.A.  
1.508.853.5000; www.allegromicro.com  
A3981  
Automotive, Programmable Stepper Driver  
15  
1
14  
1
13  
0
12  
0
11  
0
10  
0
9
0
8
0
7
0
6
5
4
3
2
1
0
PTP  
0
PT5  
1
PT4  
0
PT3  
0
PT2  
0
PT1  
0
PT0  
0
TBLLD  
Fault 0  
Fault 1  
FF  
FF  
TW1  
TW1  
TW0  
TW0  
OV  
OV  
UV  
UV  
ST  
ST  
OLB  
OLB  
OLA  
OLA  
BML  
0
BMH  
0
BPL  
SA5  
BPH  
SA4  
AML  
SA3  
AMH  
SA2  
APL  
SA1  
APH  
SA0  
Table Load Register  
PTP  
PT(0..15)[5..0] Phase Table Value  
Fault Register 0  
FF  
Fault register flag  
Parity bit (odd parity)  
TW1  
TW0  
OV  
Temperature diagnostic  
Temperature diagnostic  
Overvoltage on VBB detected  
Table Load Register Mapping  
Step Angle Number  
UV  
Undervoltage on VREG or VBB detected  
Stall detected  
Phase A  
Phase B  
ST  
0%  
0
1
2
3
4
5
6
7
8
9
32  
16  
48  
OLB  
OLA  
BML  
BMH  
BPL  
BPH  
AML  
AMH  
APL  
APH  
Open load detected on phase B  
Open load detected on phase A  
PT(0)  
PT(1)  
PT(2)  
PT(3)  
PT(4)  
PT(5)  
PT(6)  
PT(7)  
PT(8)  
PT(9)  
PT(10)  
PT(11)  
PT(12)  
PT(13)  
PT(14)  
PT(15)  
31 33 63 15 17 47 49  
30 34 62 14 18 46 50  
29 35 61 13 19 45 51  
28 36 60 12 20 44 52  
27 37 59 11 21 43 53  
26 38 58 10 22 42 54  
Overcurrent detected on BM output low side  
Overcurrent detected on BM output high side  
Overcurrent detected on BP output low side  
Overcurrent detected on BP output high side  
Overcurrent detected on AM output low side  
Overcurrent detected on AM output high side  
Overcurrent detected on AP output low side  
Overcurrent detected on AP output high side  
25 39 57  
24 40 56  
23 41 55  
9
8
7
6
5
4
3
2
1
0
23 41 55  
24 40 56  
25 39 57  
26 38 58  
27 37 59  
28 36 60  
29 35 61  
30 34 62  
31 33 63  
32  
10 22 42 54  
11 21 43 53  
12 20 44 52  
13 19 45 51  
14 18 46 50  
15 17 47 49  
Fault Register 1  
16  
48  
FF  
Fault register flag  
TW1  
TW0  
OV  
Temperature diagnostic  
Temperature diagnostic  
Overvoltage on VBB detected  
Undervoltage on VREG or VBB detected  
Stall detected  
UV  
ST  
OLB  
OLA  
Open load detected on phase B  
Open load detected on phase A  
SA[0..5] Step Angle Number read back  
OLA Open load detected on phase A  
TW[0..1] Temperature diagnostic  
TW1  
TW0  
Thermal Indicator  
0
0
No Fault  
0
1
Cold Warning  
1
0
Hot Warning  
1
1
Overtemperature Shutdown  
Allegro MicroSystems, Inc.  
115 Northeast Cutoff  
19  
Worcester, Massachusetts 01615-0036 U.S.A.  
1.508.853.5000; www.allegromicro.com  
A3981  
Automotive, Programmable Stepper Driver  
Application Information  
the phase angle within the full 360° electrical cycle and is called  
the Step Angle Number. This is illustrated in figure 3.  
Motor Movement Control  
The A3981 provides two independent methods to control the  
movement of a stepper motor. The simpler is the Step and Direc-  
tion method, which only requires two control signals to control  
the stepper motor in either direction. The other method is through  
the serial interface, which provides more flexible control capa-  
bility. Both methods can be used together (although it is not  
common), provided the timing restrictions of the STEP input in  
relation to the STRn input are preserved.  
Figure 5 shows the contents of the phase current table as a phase  
diagram. The phase B current, IB, from the phase current table, is  
plotted on horizontal axis and the phase A current, IA, is plotted  
on the vertical axis. The resultant motor current at each microstep  
is shown as numbered radial arrows. The number shown corre-  
sponds to the one-sixteenth microstep Step Angle Number in the  
phase current table.  
Figure 4 shows an example of calculating the resultant motor  
current magnitude and angle for step number 28. The target is to  
have the magnitude of the resultant motor current be 100% at all  
microstep positions. The relative phase currents from the phase  
current table are:  
Phase Table and Phase Diagram  
The key to understanding both of the available control methods  
lies in understanding the Phase Current table (table 7). This table  
contains the relative phase current magnitude and direction for  
each of the two motor phases at each microstep position. The  
maximum resolution of the A3981 is one-sixteenth microstep.  
That is 16 microsteps per full step. There are 4 full steps per elec-  
trical cycle, so the phase current table has 64 microstep entries.  
The entries are numbered from 0 to 63. This number represents  
IA = 37.50%  
IB = –92.19%  
Assuming a full scale (100%) current of 1A means that the two  
phase currents are:  
IA  
IA = 0.3750 A  
IB = -0.9219 A  
17 16 15  
18  
14  
19  
13  
20  
12  
21  
11  
22  
10  
23  
9
24  
8
25  
7
26  
27  
28  
29  
30  
6
5
4
IA  
24  
3
25  
26  
2
31  
1
27  
32  
33  
0
IB  
IA28  
=37.5%  
28  
29  
30  
31  
63  
62  
61  
60  
59  
58  
34  
28  
=
35  
36  
37  
38  
39  
40  
157.9°  
IB  
32  
57  
92.19%  
=
IB28  
56  
41  
55  
42  
54  
43  
53  
44  
52  
45  
51  
46  
50  
47 48 49  
Figure 3. A3981 Phase Current table as a phase diagram; values shown  
are referred to as the Step Angle Number  
Figure 4. Calculation of resultant motor current  
Allegro MicroSystems, Inc.  
115 Northeast Cutoff  
20  
Worcester, Massachusetts 01615-0036 U.S.A.  
1.508.853.5000; www.allegromicro.com  
A3981  
Automotive, Programmable Stepper Driver  
The magnitude of the resultant will be the square root of the sum  
of the squares of these two currents:  
and MS1 can be set to select full step, half step, quarter step, or  
sixteenth step microstepping as follows:  
| I28 |I A2 IB2 0.1406 0.8499 0.9953 (A)  
MS1  
MS0  
Microstep Mode  
0
0
0
1
Full step  
Half step  
So the resultant current magnitude is 99.53% of full scale. This  
is within 0.5% of the target (100%) and is well within the ±5%  
accuracy of the A3981.  
1
1
0
1
Quarter step  
Sixteenth step  
The reference angle, zero degrees (0°), within the full electrical  
cycle (360°), is defined as the angle where IB is at +100% and IA  
is zero. Each full step is represented by 90° in the electrical cycle  
so each one-sixteenth microstep is: 90°/16 steps = 5.625°. The  
target angle of each microstep position with the electrical cycle  
is determined by the product of the Step Angle Number and the  
angle for a single microstep. So for the example of figure 5:  
MS0 and MS1 can be accessed through the serial interface or  
directly on pins 13 and 12 respectively. The values of MS0 and  
MS1 are defined as the logical OR of the logic level on the input  
pins and the value in Configuration Register 0. The bits in the  
register default to 0 so if the serial interface is not used then MS0  
and MS1 are defined by the input pins alone. If only the serial  
interface is used to set the microstep resolution, then the MS0 and  
MS1 logic input pins should be tied low to ensure that the register  
retains full control over all resolutions. Note that the microstep  
select variables, MS0 and MS1, are only used with the STEP  
input; they can be ignored if the motor is fully controlled through  
the serial interface.  
A28(TARGET ) 285.625  157.5  
The actual angle is calculated using basic trigonometry as:  
I
A28( ACTUAL) 180 tan1  
A28   
IB28  
180   
22.1  
157.9  
In sixteenth step mode the translator simply increases or  
So the angle error is only 0.4°. Equivalent to about 0.1% error in  
360° and well within the current accuracy of the A3981.  
decreases the Step Angle Number on each rising edge of the  
STEP input, depending on the logic state of the DIR input. In the  
other three microstep resolution modes the translator outputs spe-  
cific Step Angle Numbers as defined in the phase current table.  
Note that each phase current in the A3981 is defined by a 6-bit  
DAC. This means that the smallest resolution of the DAC is  
100 / 64 = 1.56% of the full scale, so the A3981 cannot produce  
a resultant motor current of exactly 100% at each microstep. Nor  
can it produce an exact microstep angle. However, as can be seen  
from the calculations above, the results for both are well within  
the specified accuracy of the A3981 current control. The resultant  
motor current angle and magnitude are also more than precise  
enough for all but the highest precision stepper motors.  
Full step uses four of the entries in the phase current table. These  
are 8, 24, 40, and 56 as shown in figure 7. Note that the four posi-  
tions selected for full step are not the points at which only one  
current is active, as would be the case in a simple on-off full step  
driver. There are two advantages in using these positions rather  
than the single full current positions. With both phases active, the  
power dissipation is shared between two drivers. This slightly  
improves the ability to dissipate the heat generated and reduces  
the stress on each driver.  
With the phase current table, control of a stepper motor is simply  
a matter of increasing or decreasing the Step Angle Number  
to move around the phase diagram of figure 5. This can be in  
predefined multiples using the STEP input, or it can be variable  
using the serial interface.  
The second reason is that the holding torque is slightly improved  
because the forces holding the motor are mainly rotational rather  
than mainly radial.  
Using Step and Direction Control  
Half step uses eight of the entries in the phase current table.  
These are 0, 8, 16, 24, 32, 40, 48, and 56 as shown in figure 8.  
The STEP input moves the motor at the microstep resolution  
defined by the two microstep select variables, MS0 and MS1,  
logic levels. The DIR input defines the motor direction. These  
inputs define the output of a translator which determines the  
required Step Angle Number in the phase current table. The MS0  
Quarter step uses sixteen of the entries in the phase current table.  
These are 0, 4, 8, 12, 16, 20, 24, 28, 32, 36, 40, 44, 48, 52, 56,  
and 60 as shown in figure 9.  
Allegro MicroSystems, Inc.  
115 Northeast Cutoff  
21  
Worcester, Massachusetts 01615-0036 U.S.A.  
1.508.853.5000; www.allegromicro.com  
A3981  
Automotive, Programmable Stepper Driver  
In half step and in quarter step, the single phase active positions  
are used to preserve symmetry. However, if the motor is required  
to stop with a significant holding torque for any length of time  
it is recommended that the 45° positions be used; those are Step  
Angle Numbers 8, 24, 40, and 56, as used with full-step resolu-  
tion.  
control the output of the A3981:  
Mode  
Full  
Step Angle Numbers used  
8, 24, 40, 56  
Half  
0, 8, 16, 24, 32, 40, 48, 56  
Quarter  
0, 4, 8, 12, 16, 20, 24, 28, 32,  
36, 40, 44, 48, 52, 56, 60  
The following table summarizes the Step Angle Numbers used  
for the four resolutions available when using the STEP input to  
Sixteenth  
All  
The microstep select inputs can be changed between each rising  
edge of the STEP input. The only restriction is that the MSO and  
MS1 logic inputs must comply with the set-up and hold timing  
constraints. When the microstep resolution changes, the A3981  
moves to the next available Step Angle Number on the next rising  
edge of the STEP input. For example, if the microstep mode is  
sixteenth and the present Step Angle Number is 59, then with the  
direction forwards (increasing Step Angle Number), changing  
to quarter step mode will cause the phase number to go to 60 on  
the next rising edge of the STEP input. If instead the microstep  
mode is changed to half step then the phase number will go to 0  
on the next rising edge of the STEP input. If the microstep mode  
is changed to full step then the phase number will go to 8 on the  
next rising edge of the STEP input.  
IA  
24  
8
IB  
40  
56  
Figure 5. Full-step phase diagram using STEP input  
IA  
16  
24  
8
Control Through the Serial Interface  
The A3981 provides the ability to directly control the motor  
movement using only the serial interface. In fact, all features  
of the A3981, except sleep mode, can be controlled through the  
serial interface thus removing the requirement for individual  
control inputs. This can reduce the interface requirement from  
multiple I/O signals to a single four wire interface.  
32  
0
IB  
40  
56  
48  
Motor movement is controlled using the serial interface by  
increasing or decreasing the Step Angle Number. Note that the  
maximum value of the Step Angle Number is 63 and the mini-  
mum number is 0.Therefore, any increase or decrease in the  
microstep number is performed using modulo 64 arithmetic. This  
means that increasing a Step Angle Number of 63 by 1 will pro-  
duce a Step Angle Number of 0. Increasing by two from 63 will  
produce 1 and so on. Similarly in the reverse direction, decreasing  
a Step Angle Number of 0 by 1 will produce a Step Angle Num-  
ber of 63. Decreasing by two from 0 will produce 62 and so on.  
Figure 6. Half-step phase diagram using STEP input  
IA  
16  
20  
12  
24  
8
28  
32  
4
0
IB  
36  
60  
The least significant six bits of the Run register, bits 0 to 5, are  
the step change number, SC[5..0]. This number is a two’s comple-  
ment number that is added to the Step Angle Number causing it  
to increase or decrease. Two’s complement is the natural integer  
number system for most microcontrollers. This allows standard  
40  
56  
44  
52  
48  
Figure 7. Quarter-step phase diagram using STEP input  
Allegro MicroSystems, Inc.  
115 Northeast Cutoff  
22  
Worcester, Massachusetts 01615-0036 U.S.A.  
1.508.853.5000; www.allegromicro.com  
A3981  
Automotive, Programmable Stepper Driver  
arithmetic operators to be used, within the microcontroller, to  
determine the size of the next step increment. Table 6 shows the  
binary equivalent of each decimal number between –16 and +16.  
Table 6. Binary Equivalents  
2’s  
2’s  
Decimal  
Complement  
000000  
000001  
000010  
000011  
000100  
000101  
000110  
000111  
001000  
001001  
001010  
001011  
001100  
001101  
001110  
001111  
Decimal  
Complement  
Each increase in the Step Angle Number represents a forwards  
movement of one-sixteenth microstep. Each decrease in the Step  
Angle Number represents a reverse movement of one-sixteenth  
microstep.  
0
1
–1  
–2  
111111  
111110  
111101  
111100  
111011  
111010  
111001  
111000  
110111  
110110  
110101  
110100  
110011  
110010  
110001  
110000  
2
3
–3  
To move the motor one full step, the Step Angle Number must be  
increased or decreased by 16. To move the motor one half step,  
the Step Angle Number must be increased or decreased by 8. For  
quarter step the increase or decrease is 4 and for eighth step, 2.  
4
–4  
5
–5  
6
–6  
7
–7  
So, for example, to continuously move the motor forwards in  
quarter-step increments, the number 4 (000100) is repeatedly  
written to SC[5..0] through the serial interface Run register (see  
figure 10). To move the motor backwards in quarter step incre-  
ments, the number -4 (111100) is repeatedly written to SC[5..0]  
(see figure 11). The remaining bits in the Run register should be  
set for the required configuration and sent with the step change  
number each time.  
8
–8  
9
–9  
10  
11  
12  
13  
14  
15  
16  
–10  
–11  
–12  
–13  
–14  
–15  
–16  
The step rate is controlled by the timing of the serial interface.  
It is the inverse of the step time, tSTEP, shown in figure 10. The  
motor step only takes place when the STRn goes from low to  
010000  
+4  
1 0 1 0 1 0 1 0 1 0 0 0 0 1 0 0  
SDI  
SCK  
STRn  
tSTEP  
Figure 8. Serial interface sequence for quarter step in forward direction  
-4  
1 0 1 0 1 0 1 0 1 0 1 1 1 1 0 0  
SDI  
SCK  
STRn  
Figure 9. Serial interface sequence for quarter step in reverse direction  
Allegro MicroSystems, Inc.  
115 Northeast Cutoff  
23  
Worcester, Massachusetts 01615-0036 U.S.A.  
1.508.853.5000; www.allegromicro.com  
A3981  
Automotive, Programmable Stepper Driver  
high when writing to the Run register. The motor step rate is  
constant. The current at each Step Angle Number can be set to suit  
therefore determined by the timing of the rising edge of the STRn the microstep current profile requirements of a specific motor.  
input. The clock rate of the serial interface, defined by the fre-  
Note: This is an advanced feature of the A3981, which will not be  
quency of the SCK input, has no effect on the step rate.  
required for most applications. In general the default sinusoidal  
profile will suffice and therefore the phase current table does not  
have to be loaded.  
Using the Phase Table Load Capability  
Torque Ripple Reduction  
Loading the Phase Current Table  
The performance and audible noise of any motor drive system is  
The full phase current table in the A3981 contains one 6-bit value  
defined, to a large extent, by the torque ripple generated by both  
for each phase, at each microstep position. With 16 microsteps  
the motor and the load. In most cases, when using a stepper motor  
per mechanical step, 4 mechanical steps per electrical cycle, and  
as the mechanical drive, the torque ripple of the load is not related  
2 phases this gives a total of 128 values. However, due to symme-  
to the mechanical steps of the motor and must be reduced by  
try, described below, this reduces to 17 independent values, one  
means unrelated to the motor and its drive system. However, for  
of which is always zero. The remaining 16 values can be loaded  
stepper motors in particular, torque ripple produced by the motor  
sequentially through the serial interface using the Phase Table  
can be reduced by improvements in the mechanical design of the  
Load register. Figure 10 shows the default phase table values  
motor and by improvements in the phase current control system.  
plotted by Step Angle Number. Similar information is provided in  
Torque ripple will naturally be high when driving a stepper motor  
in full step mode, due to the nature of stepping. However the  
torque ripple can be reduced by using microstepping. Increas-  
ing the number of microsteps per mechanical step will result in  
reduced torque ripple. This is one of the major reasons for using  
microstepping.  
table 7.  
The diagram in figure 10 is marked with four quadrants, Q1 to  
Q4. The set of phase table values is the same in each quadrant in  
each phase. Consider phase A (bottom graph), quadrant 1 (Q1).  
This contains Step Angle Numbers 0 to 15. The default values  
in these 16 positions are selected to produce one quarter of a  
sinusoid.  
In the majority of cases the standard sinusoidal, microstep current  
profile will be sufficient to achieve a good performance with  
a good quality motor. In a few cases, further improvements in  
torque ripple performance may be achieved by modifying the  
microstep current profile to more closely match the motor charac-  
teristics. This is usually only necessary for higher quality, higher  
power stepper motors.  
Now consider the next quadrant (Q2) of phase A. The sequence  
of values in this quadrant form a mirror image, by Step Angle  
Number, of the values in Q1 so the same values are used but  
entered in the reverse sequence.  
The following table shows the Step Angle Number in the first  
row increasing from 0 to 15, from left to right, and the default  
values also increasing from left to right in the second row. These  
first two rows are the entries for Q1 of phase A.  
When using microstepping, the torque ripple is defined by the  
variation in torque at each microstep. In a hybrid stepper motor  
this is mostly determined by the mechanical construction of the  
motor, particularly the shape of the teeth on the poles of the sta-  
tor. The shape of these teeth determine the variation in the torque  
constant, the ratio between current and torque, as the motor  
rotates. The variation in the torque constant can be seen by mea-  
suring the back EMF of the motor when being driven as a genera-  
tor, that is when the shaft is driven by external means and the  
phase voltage is monitored. The back EMF represents the motor  
constant, which is essentially proportional to the torque constant.  
Step  
0
0
1
5
2
3
4
5
6
7
8
9
10 11 12 13 14 15  
Q1  
Q2  
Value  
11 18 23 29 35 40 44 48 52 55 58 60 62 63  
Step  
31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16  
11 18 23 29 35 40 44 48 52 55 58 60 62 63 63  
Value  
5
The second two rows are the entries for Q2 of phase A. The Step  
Angle Number in the third row increases from 16 to 31, this time  
from right to left, but the same default values still increase from  
left to right. A single value is therefore placed in more than one  
location in the table. Shown outlined above, steps 4 and 28 both  
contain the value 23.  
If such torque ripple reduction measures are required, the A3981  
provides the ability to modify the microstep current profile by  
programming the internal phase current table through the serial  
interface. The modified profile is then used, in place of the default The same principal can be applied to Q3 and Q4 of phase A. In  
sinusoidal profile, to compensate for any variation in motor torque this case the mirror image is in the horizontal axis, about the zero  
Allegro MicroSystems, Inc.  
115 Northeast Cutoff  
24  
Worcester, Massachusetts 01615-0036 U.S.A.  
1.508.853.5000; www.allegromicro.com  
A3981  
Automotive, Programmable Stepper Driver  
63  
62  
60  
58  
55  
52  
48  
44  
40  
35  
29  
IB  
(forwards)  
23  
18  
(DAC value)  
11  
5
Q4  
Q1  
Q2  
Q3  
5
11  
18  
23  
29  
35  
40  
44  
IB  
(reverse)  
(DAC value)  
48  
52  
55  
58  
60  
62  
63  
Step Angle Number  
63  
62  
60  
58  
55  
52  
48  
44  
40  
35  
29  
IA  
(forwards)  
23  
18  
(DAC value)  
11  
5
Q4  
Q1  
Q2  
Q3  
5
11  
18  
23  
29  
35  
40  
44  
IA  
(reverse)  
(DAC value)  
48  
52  
55  
58  
60  
62  
63  
Figure 10. Default phase table values  
Allegro MicroSystems, Inc.  
115 Northeast Cutoff  
25  
Worcester, Massachusetts 01615-0036 U.S.A.  
1.508.853.5000; www.allegromicro.com  
A3981  
Automotive, Programmable Stepper Driver  
reference value. Although the current in Q3 and Q4 for phase A is Shown outlined above, steps 4, 28, 36, and 60 all contain the  
value 23.  
effectively negative, the negation is provided by controlling the  
direction of the current. The current control scheme still operates  
using positive values.  
The other phase, phase B, uses the same values as phase A but  
shifted back by 16 Step Angle Numbers. The full distribution of  
the value entered in step 4 of phase A is highlighted in figure 12  
(and shown in table 7). This single value is used in a total of eight  
locations. The same distribution of values applies to all the values  
in steps 1 to 15. These values are defined in the A3981 as PT(0)  
to PT(14), respectively.  
As shown below, the table of values can be extended to include  
Q3 and Q4 with the current direction indicated in the last column.  
Note that the same value is now applied to four locations in the  
full 360-degree electrical cycle.  
Step  
0
0
1
5
2
3
4
5
6
7
8
9
10 11 12 13 14 15  
There are two exceptions to this data distribution principal. These  
are the zero value and the maximum value:  
Q1 FWD  
Q2 FWD  
Q3 Rev  
Q4 Rev  
Value  
11 18 23 29 35 40 44 48 52 55 58 60 62 63  
Step  
31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16  
11 18 23 29 35 40 44 48 52 55 58 60 62 63 63  
• The values in phase A steps 0 and 32 and phase B steps 16 and  
48 are always set to zero and cannot be programmed.  
Value  
5
Step 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47  
• The maximum value, PT(15), is distributed to only two Step  
Angle Numbers in each phase. These are the points in the cycle  
where the peak current is required, namely phase A steps 16 and  
48 and phase B steps 0 and 32.  
Value  
0
5 11 18 23 29 35 40 44 48 52 55 58 60 62 63  
Step  
63 62 61 60 59 58 57 56 55 54 53 52 51 50 49 48  
11 18 23 29 35 40 44 48 52 55 58 60 62 63 63  
Value  
5
Table 7. Phase Current Table (default, power-on content)  
Phase Current  
(% of IPMAX  
Step  
Angle  
Phase Current  
(% of IPMAX  
Step  
Angle  
Step Angle Number  
)
Phase  
DAC  
Step Angle Number  
)
Phase  
DAC  
Full 1/2 1/4 1/8 1/16  
A
B
A
B
A
B
Full 1/2 1/4 1/8 1/16  
A
B
A
B
A
B
0
1
2
3
4
0
1
2
3
4
5
6
7
8
0
1
2
3
4
5
6
7
8
9
0
1
2
3
4
5
6
7
8
0.00 100.00  
9.38 100.00  
0.0  
5.4  
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
0
5
63  
63  
4
5
6
7
0
8
9
16 32  
33  
17 34  
35  
18 36  
37  
19 38  
39  
0.00 -100.00 180.0  
-9.38 -100.00 185.4  
-18.75 -98.44 190.8  
-29.69 -95.31 197.3  
-37.50 -92.19 202.1  
-46.88 -87.50 208.2  
-56.25 -82.81 214.2  
-64.06 -76.56 219.9  
-70.31 -70.31 225.0  
-76.56 -64.06 230.1  
-82.81 -56.25 235.8  
-87.50 -46.88 241.8  
-92.19 -37.50 247.9  
-95.31 -29.69 252.7  
-98.44 -18.75 259.2  
0
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
0
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
5
63  
63  
18.75  
29.69  
37.50  
46.88  
56.25  
64.06  
70.31  
76.56  
82.81  
87.50  
92.19  
95.31  
98.44  
98.44  
95.31  
92.19  
87.50  
82.81  
76.56  
70.31  
64.06  
56.25  
46.88  
37.50  
29.69  
18.75  
9.38  
10.8  
17.3  
22.1  
28.2  
34.2  
39.9  
45.0  
50.1  
55.8  
61.8  
67.9  
72.7  
79.2  
84.6  
90.0  
95.4  
11 62  
18 60  
23 58  
29 55  
35 52  
40 48  
44 44  
48 40  
52 35  
55 29  
58 23  
60 18  
62 11  
11 62  
18 60  
23 58  
29 55  
35 52  
40 48  
44 44  
48 40  
52 35  
55 29  
58 23  
60 18  
62 11  
0
2
10 20 40  
41  
9
10  
11  
12  
13  
14  
21 42  
43  
11 22 44  
45  
23 46  
15 100.00  
16 100.00  
17 100.00  
18  
19  
63  
63  
63  
5
0
5
47 -100.00  
-9.38 264.6  
0.00 270.0  
9.38 275.4  
18.75 280.8  
29.69 287.3  
37.50 292.1  
46.88 298.2  
56.25 304.2  
64.06 309.9  
70.31 315.0  
76.56 320.1  
82.81 325.8  
87.50 331.8  
92.19 337.9  
95.31 342.7  
98.44 349.2  
63  
63  
63  
5
0
5
0.00  
-9.38  
12 24 48 -100.00  
49 -100.00  
98.44 -18.75 100.8  
95.31 -29.69 107.3  
92.19 -37.50 112.1  
87.50 -46.88 118.2  
82.81 -56.25 124.2  
76.56 -64.06 129.9  
70.31 -70.31 135.0  
64.06 -76.56 140.1  
56.25 -82.81 145.8  
46.88 -87.50 151.8  
37.50 -92.19 157.9  
29.69 -95.31 162.7  
18.75 -98.44 169.2  
9.38 -100.00 174.6  
0.00 -100.00 180.0  
62 11  
60 18  
58 23  
55 29  
52 35  
48 40  
44 44  
40 48  
35 52  
29 55  
23 58  
18 60  
11 62  
25 50  
-98.44  
-95.31  
-92.19  
-87.50  
-82.81  
-76.56  
-70.31  
-64.06  
-56.25  
-46.88  
-37.50  
-29.69  
-18.75  
62 11  
60 18  
58 23  
55 29  
52 35  
48 40  
44 44  
40 48  
35 52  
29 55  
23 58  
18 60  
11 62  
51  
10 20  
21  
11 22  
23  
12 24  
25  
13 26  
27  
14 28  
29  
15 30  
31  
13 26 52  
53  
27 54  
55  
1
3
14 28 56  
57  
29 58  
59  
15 30 60  
61  
31 62  
63  
5
0
63  
63  
-9.38 100.00 354.6  
0.00 100.00 0.0  
5
0
63  
63  
16 32  
0
0
0
Allegro MicroSystems, Inc.  
115 Northeast Cutoff  
26  
Worcester, Massachusetts 01615-0036 U.S.A.  
1.508.853.5000; www.allegromicro.com  
A3981  
Automotive, Programmable Stepper Driver  
Each of the 16 values written to the phase table is a 6-bit num-  
ber that determines the current trip point for the associated step.  
The highest value, 63, represents the maximum phase current,  
Phase Current Table Programming Example  
As an example of programming the phase current table, consider  
the current profile shown in figure 11. This shows a profile where  
the torque from each phase is required to be relatively higher  
at the detent points, that is, the points where only one phase is  
active. (This current profile does not relate to any specific motor,  
it is only shown as an example.)  
I
PMAX, defined in the section of the specification on phase cur-  
rent control. Other numbers represent a percentage of IPMAX . For  
example, the number 23 sets the phase current trip point to 23/63  
= 36.51% of IPMAX  
.
Figure 13 shows the required current for each phase at each  
Step Angle Number as a percentage of the maximum phase  
current, IPMAX , defined above. The waveform conforms to the  
required symmetry and zero crossing restrictions, so the profile  
for phase A for Step Angle Numbers from 0 to 16 (outlined and  
shaded) can be used to determine the phase table contents.  
There are two restrictions when using the phase table load capa-  
bility:  
• The required current profile must conform to the symmetry  
shown in figure 10. The forward (positive) current part must be  
symmetrical about Step Angle Number16 for phase A and about 0  
for phase B. The reverse (negative) current part must be sym-  
metrical about Step Angle Number 48 for phase A and about 32  
for phase B. The forward and reverse profiles for each phase must  
be the same.  
The first step is to digitize the profile into microsteps and the  
percentage values into 6-bit numbers, as shown in figure 12.  
At each of the one-sixteenth microsteps, identified by Step Angle  
Number, the value of the phase current, as a percentage of the  
maximum phase current, IPMAX , is digitized to a 6-bit value from  
0 to 63. The value 63 represents 100% of IPMAX , 32 represents  
• The phase current must be zero at Step Angle Numbers 0 and 32  
for phase A and Step Angle Numbers 16 and 48 for phase B.  
Figure 11. Example current profile  
Figure 12. Digitizing the example current profile  
Allegro MicroSystems, Inc.  
115 Northeast Cutoff  
27  
Worcester, Massachusetts 01615-0036 U.S.A.  
1.508.853.5000; www.allegromicro.com  
A3981  
Automotive, Programmable Stepper Driver  
32/63=50.8% and so on. The value at each Step Angle Number is  
then assigned to its corresponding phase table values as follows:  
PT  
n 1 DIn  
where DIn represents the digitized value of the current at Step  
Angle Number n.  
A selection of the values and the corresponding phase current  
table entries is shown in figure12. The full set of phase current  
table values is shown in the table below.  
Step  
Value 10 20 25 28 29 30 31 32 35 40 50 58 60 62 63 63  
PT 10 11 12 13 14 15  
1
2
3
4
5
6
7
8
9 10 11 12 13 14 15 16  
0
1
2
3
4
5
6
7
8
9
These 16 values are then loaded sequentially into the phase  
current table through the Phase Table Load register of the serial  
interface. Each value is then distributed to the appropriate Step  
Angle Numbers as described above and as shown in table 4C in  
the Phase Table Load Register section.  
Figure 13. Resulting example current profile  
A representation of the final result is shown in figure 13. This  
is the digitized version of the required current profile shown in  
figure 13.  
Allegro MicroSystems, Inc.  
115 Northeast Cutoff  
28  
Worcester, Massachusetts 01615-0036 U.S.A.  
1.508.853.5000; www.allegromicro.com  
A3981  
Automotive, Programmable Stepper Driver  
Power Dissipation  
chronous rectification is used current will flow most of the time  
The A3981 is a power circuit, therefore careful consideration  
must be given to power dissipation and the effects of high cur-  
rents on interconnect and supply wiring.  
through the DMOS transistors that are switched on. When syn-  
chronous rectification is not used the current will flow through  
the body diode of the DMOS transistors during the decay phase.  
A first order approximation of the power dissipation in the A3981 The use of fast or slow decay will also affect the dissipation. All  
can be determined by examining the power dissipation in each of  
the two bridges during each of the operation modes. When syn-  
the above combinations can be calculated from five basic DMOS  
output states as shown in figure 14.  
Synchronous Fast Decay  
Non-Synchronous Fast Decay  
• Diagonally opposite DMOS output  
transistors are on  
• Diagonally opposite body diodes  
conducting  
• Current flows from ground through  
load to positive supply  
• Current flows from ground through  
load to positive supply  
Dissipation is I2R losses in the  
DMOS transistors:  
Dissipation is IV losses in the diodes:  
PD(NF) = I × (VFH + VFL  
)
PD(SF) = I2 × (RDS(on)H+RDS(on)L  
)
Synchronous Slow Decay  
Non-Synchronous Slow Decay  
• Both low-side DMOS output  
transistors are on  
• Current circulates through both  
transistors and the load  
• One low-side DMOS output transistor  
and one body diode conducting  
• Current circulates through the diode,  
the transistor and the load  
Dissipation is I2R losses in the DMOS  
transistors:  
Dissipation is I2R losses in the DMOS  
transistors plus IV loss in the diode:  
PD(SS) = I2 × (2 × RDS(on)L  
)
PD(NS) = (I2 × RDS(on)L) (I × VF)  
Drive Current Ramp-up  
(Used in all combinations)  
• Diagonally opposite DMOS output  
transistors are on  
• Current flows from positive supply  
through load to ground  
Dissipation is I2R losses in the  
DMOS transistors:  
PD = I2 × (RDS(on)H + RDS(on)L  
)
Figure 14. Basic output states  
Allegro MicroSystems, Inc.  
115 Northeast Cutoff  
29  
Worcester, Massachusetts 01615-0036 U.S.A.  
1.508.853.5000; www.allegromicro.com  
A3981  
Automotive, Programmable Stepper Driver  
The total power dissipation for each of the four decay modes,  
PD(TOT) XX, is the average power for the drive current ramp por-  
tion, PD , and the drive current decay portion, PD(XX) of the PWM  
cycle. For slow decay the current will be rising for approximately  
20% of the cycle and decaying for approximately 80%. For fast  
decay the ratio will be approximately 50%. Note that these are  
approximate figures and will vary slightly depending on the  
motor characteristics and the use of synchronous rectification.  
The following formulas may be used to estimate total power dis-  
sipation:  
• Synchronous fast decay mode  
PD(TOT)SF = 0.5×PD + 0.5×PD(SF)  
PD(TOT)SF = I2 (RDS(on)H +RDS(on)L  
)
• Non-synchronous fast decay mode  
PD(TOT)NF = 0.5×PD + 0.5×PD(NF)  
PD(TOT)NF = 0.5(I2 [RDS(on)H+RDS(on)L]) + 0.5(I×[VFH +VFL])  
An approximation of the total dissipation can be calculated by  
summing the total power dissipated in both bridges and adding  
the control circuit power due to VBB ×IBB and VDD ×IDD  
.
• Synchronous slow decay mode  
P
D(TOT)SS = 0.2×PD + 0.8×PD(SS)  
The total power at the required ambient temperature can then be  
compared to the allowable power dissipation shown in figure 15.  
For critical applications, where the first order power estimate is  
close to the allowable dissipation, the power calculation should  
take several other parameters into account including: motor  
parameters, dead time, and switching losses in the controller.  
PD(TOT)SS = 0.2(I2 [RDS(on)H+RDS(on)L])+0.8(I2 ×RDS(on)L  
)
• Non-synchronous slow decay mode  
P
D(TOT)NS = 0.2×PD + 0.8×PD(NS)  
PD(TOT)NS = 0.2(I2[RDS(on)H+RDS(on)L])+0.8(I2×RDS(on)L+I×VF)  
5
4
R
= 28 °C/W  
θJA  
3
2
(on 4-layer PCB)  
R
= 32 °C/W  
θJA  
1
0
(on 2-layer PCB)  
25  
50  
75  
100  
125  
150  
Ambient Temperature (°C)  
Figure 15. Allowable power dissipation, on typical PCBs  
Allegro MicroSystems, Inc.  
115 Northeast Cutoff  
30  
Worcester, Massachusetts 01615-0036 U.S.A.  
1.508.853.5000; www.allegromicro.com  
A3981  
Automotive, Programmable Stepper Driver  
together externally. The copper ground plane located under the  
exposed thermal pad is typically used as the star ground point.  
Layout  
Traces  
Current Sense Resistor  
PCB The printed circuit board (PCB, or printed wiring board)  
should use a higher weight copper thickness than a standard small  
signal or digital circuit board. This helps to reduce the impedance  
of the printed traces when conducting high currents. PCB traces  
carrying switching currents should be as wide and short as pos-  
sible to reduce the inductance of the trace. This will help reduce  
any voltage transients caused by current switching during PWM  
current control.  
In sensing the output current level, to minimize inaccuracies  
caused by ground-trace IR drops, the current sense resistor (RS)  
should have an independent ground return to the star ground  
point. This path should be as short as possible. For low-value  
sense resistors, the IR drop in the PCB trace to the sense resis-  
tor can be significant and should be taken into account. Surface  
mount chip resistors are recommended to minimize contact  
resistance and parasitic inductance. The value, RS , of the sense  
resistor is given by:  
For optimum thermal performance, the exposed thermal pad on  
the underside of the A3981 should be soldered directly onto the  
board. A solid ground plane should be added to the opposite side  
of the board, and multiple vias through the board to the ground  
plane should be placed in the area under the thermal pad.  
V
REF  
RS   
16ISMAX  
There is no restriction on the value of RS or VREF , other than the  
range of VREF over which the output current precision is guaran-  
teed. However, it is recommended that the value of VREF be kept  
as high as possible to improve the current accuracy. The table  
below provides increasing values of ISMAX for suggested values  
of VREF and standard E96 values of RS.  
Decoupling  
All supplies should be decoupled with an electrolytic capacitor in  
parallel with a ceramic capacitor. The ceramic capacitor should  
have a value of 100 nF and should be placed as close as pos-  
sible to the associated supply and ground pins of the A3981. The  
electrolytic capacitor connected to VBB should be rated at least  
1.5 times the maximum circuit voltage, and selected to support  
the maximum ripple current provided to the motor. The value of  
the capacitor is unimportant but should be the lowest value with  
the necessary ripple current capability.  
Suggested Values  
ISMAX  
(mA)  
RS  
(mΩ)  
VREF  
(V)  
100  
200  
300  
405  
501  
610  
702  
812  
912  
1008  
499  
499  
417  
309  
249  
205  
178  
154  
137  
124  
0.8  
1.6  
2.0  
2.0  
2.0  
2.0  
2.0  
2.0  
2.0  
2.0  
The pump capacitor between CP1 and CP2, the pump storage  
capacitor between VCP and VBB, and the compensation capaci-  
tor between VREG and ground should be connected as close as  
possible to the respective pins of the A3981.  
Grounding  
A star ground system, with the common star point located close to  
the A3981, is recommended. The reference ground, AGND (pin  
7), and the power ground, PGND (pin 21), must be connected  
Allegro MicroSystems, Inc.  
115 Northeast Cutoff  
31  
Worcester, Massachusetts 01615-0036 U.S.A.  
1.508.853.5000; www.allegromicro.com  
A3981  
Automotive, Programmable Stepper Driver  
Pin-out Diagram  
1
2
28  
27  
26  
25  
24  
23  
22  
21  
20  
19  
18  
17  
16  
15  
SENSA  
STRn  
DIR  
VBBA  
RESETn  
ENABLE  
OAM  
3
4
OAP  
OSC  
SDI  
5
CP2  
6
CP1  
7
AGND  
REF  
VCP  
Ref  
8
PGND  
VREG  
STEP  
OBM  
9
Reg  
SCK  
VDD  
10  
11  
12  
13  
14  
VDD  
OBP  
MS1  
SDO  
MS0  
DIAG  
VBBB  
SENSB  
Terminal List Table  
Name  
AGND  
CP1  
Number Description  
Name  
PGND  
REF  
Number Description  
7
Analog reference ground  
21  
8
Power Ground  
24  
23  
16  
3
Charge pump capacitor terminal  
Charge pump capacitor terminal  
Diagnostic output  
Reference input voltage  
Chip reset  
CP2  
RESETn  
SCK  
27  
9
DIAG  
DIR  
Serial data clock  
Direction select input  
SDI  
6
Serial data input  
ENABLE  
MS0  
26  
13  
12  
25  
4
Bridge enable input  
SDO  
17  
1
Serial data output  
Current sense node – bridge A  
Current sense node – bridge B  
Step input  
Microstep select input  
Microstep select input  
Bridge A negative output  
Bridge A positive output  
Bridge B negative output  
Bridge B positive output  
Oscillator input  
SENSA  
SENSB  
STEP  
STRn  
VBBA  
VBBB  
VCP  
MS1  
14  
19  
2
OAM  
OAP  
Serial data strobe  
Motor supply – bridge A  
Motor supply – bridge B  
Above supply voltage  
Logic Supply  
OBM  
OBP  
18  
11  
5
28  
15  
22  
10  
20  
OSC  
PAD  
Connect exposed tab to ground  
VDD  
VREG  
Regulated voltage  
Allegro MicroSystems, Inc.  
115 Northeast Cutoff  
32  
Worcester, Massachusetts 01615-0036 U.S.A.  
1.508.853.5000; www.allegromicro.com  
A3981  
Automotive, Programmable Stepper Driver  
Package LP, 28-Pin TSSOP  
with Exposed Thermal Pad  
0.45  
0.65  
9.70±0.10  
28  
8º  
0º  
28  
1.65  
0.20  
0.09  
B
6.10  
3.00  
3 NOM 4.40±0.10 6.40±0.20  
0.60 ±0.15  
1.00 REF  
A
2
1
5.08 NOM  
1
2
0.25 BSC  
Branded Face  
5.00  
SEATING PLANE  
GAUGE PLANE  
C
SEATING  
PLANE  
28X  
0.10  
C
C
PCB Layout Reference View  
0.30  
0.19  
0.65 BSC  
For Reference Only; not for tooling use (reference MO-153 AET)  
Dimensions in millimeters  
1.20 MAX  
Dimensions exclusive of mold flash, gate burrs, and dambar protrusions  
Exact case and lead configuration at supplier discretion within limits shown  
0.15  
0.00  
Terminal #1 mark area  
A
B
C
Exposed thermal pad (bottom surface); dimensions may vary with device  
Reference land pattern layout (reference IPC7351  
SOP65P640X120-29CM);  
All pads a minimum of 0.20 mm from all adjacent pads; adjust as  
necessary to meet application process requirements and PCB layout  
tolerances; when mounting on a multilayer PCB, thermal vias at the  
exposed thermal pad land can improve thermal dissipation (reference  
EIA/JEDEC Standard JESD51-5)  
Allegro MicroSystems, Inc.  
115 Northeast Cutoff  
33  
Worcester, Massachusetts 01615-0036 U.S.A.  
1.508.853.5000; www.allegromicro.com  
A3981  
Automotive, Programmable Stepper Driver  
Appendix A. Driving a Stepper Motor  
A stepper motor is a particular form of brushless DC motor. As  
for any electric motor, motion is created by magnetic interaction  
between the stationary part of the motor, known as the stator, and  
the moving part of the motor, known as the rotor. The information  
presented here concentrates on a specific type of motor known as  
a hybrid stepper motor. This is the most common type of small  
stepper motor. It uses permanent magnets in the rotor to produce  
one set of constant magnetic fields and electromagnets in the  
stator to produce another set of varying magnetic fields. The term  
hybrid relates to the use of both electromagnets and permanent  
magnets.  
remainder of the information presented here relates specifically to  
2-phase bipolar motors.  
Moving a 2-Phase Bipolar Stepper Motor  
Figure A1 shows the four possible current combinations in two  
phase windings, A and B, and the effect on a simplified repre-  
sentation of part of a stepper motor. In each case the stator with  
the electromagnets is shown at the top of the diagram and the  
rotor with the permanent magnets is shown at the bottom of the  
diagram.  
In figure A1 the stator consists of alternate phase A and phase  
B electromagnets. The winding direction of the electromagnet  
changes for each sequential electromagnet in each phase as indi-  
cated by the overbar above the phase letter and identified below  
as A-bar and B-bar. The result is that the magnetic poles will  
alternate for each sequential electromagnet of each phase. That  
means, for example, when the A electromagnet produces a north  
(N) magnetic pole at the end nearest to the rotor, then the A-bar  
electromagnet will produce a south (S) magnetic pole at the end  
nearest to the rotor.  
Comparing Bipolar and Unipolar Motors  
There are two options in small hybrid stepper motor construction.  
In the first, known as a unipolar stepper motor, there are indepen-  
dent electromagnets to generate each magnetic polarity, so two  
electromagnets are required per phase. Each of these is energized  
with current in only one direction, producing a single magnetic  
field direction (unipolar). Because the current in each electromag-  
net only flows in a single fixed direction, the control circuit can  
be very simple. The drawback is that only one electromagnet per  
phase can be energized at any time so, at most, only half of the  
motor volume is ever used to create torque on the rotor.  
The windings for all the A and A-bar electromagnets are con-  
nected in series and driven by a single full bridge. Similarly the  
windings for all the B and B-bar electromagnets are connected  
in series and driven by another single full bridge. So a 2-phase  
bipolar stepper motor requires two full bridges for full control.  
A bipolar motor, in contrast, uses each electromagnet to pro-  
duce two opposing fields (bipolar) at different times, by allow-  
ing the current to flow in both directions. This means that the  
motor volume required for a bipolar motor is half of the volume  
required for a unipolar motor for the same torque output. The  
minor drawback is that a bipolar motor requires a more complex  
drive circuit in order to reverse the forcing voltage across the coil  
of the electromagnet. However, if the drive circuit is integrated  
into a single IC then the drive becomes cost effective. This, along  
with the improvement in torque output makes the bipolar motor  
a better solution for applications where the volume available is  
restricted. For this reason the following information will relate  
only to bipolar motors.  
The rotor is much simpler than the stator, and consists of a solid  
base holding permanent magnets with alternating pole directions.  
There are no windings on the rotor, so there is no requirement to  
conduct current to the moving part of the motor. In addition the  
lack of current and windings means that there is no heat generated  
in the rotor, making cooling of the moving parts much simpler.  
The diagrams in figure A1 provide a representation of a small  
section of the mechanics of the motor. In practice the motor struc-  
ture is a little different from this, but the principle of operation is  
the same.  
In order to create continuous motion in one direction it is neces-  
sary to have two or more sets of electromagnets, that is, two or  
more phases. The simplest and most cost effective configuration  
for a stepper motor is to have two phases. For some applications  
Starting at the top, panel (a) in figure A1, the current is flowing  
down through the phase A winding from top to bottom and there  
is no current in phase B. The result is an N magnetic pole on the  
A electromagnets and an S pole on the A-bar electromagnets. The  
that require an extremely low torque ripple, 3 phase, 5 phase, and rotor position is such that that the poles of the permanent magnets  
even 9 phase stepper motors are sometimes used. However, the  
align with the poles of the electromagnets, N to S.  
Allegro MicroSystems, Inc.  
115 Northeast Cutoff  
34  
Worcester, Massachusetts 01615-0036 U.S.A.  
1.508.853.5000; www.allegromicro.com  
A3981  
Automotive, Programmable Stepper Driver  
Stator  
_
_
_
_
A
B
A
B
A
B
A
B
(a)  
• Phase A energized in positive direction  
• Phase B not energized  
A
B
N
S
S
N
N
S
S
N
Permanent magnet poles on the rotor aligned with  
electromagnet poles on the stator  
N
S
N
S
Rotor  
Stator  
_
_
_
_
A
B
A
B
A
B
A
B
(b)  
• Phase A not energized  
• Phase B energized in positive direction  
A
B
N
S
S
N
N
S
S
N
Rotor moves to the right to realign permanent  
magnet poles on the rotor to the electromagnet  
poles on the stator.  
N
S
N
S
Rotor  
Stator  
_
_
_
_
A
B
A
B
A
B
A
B
(c)  
• Phase A energized in negative direction.  
• Phase B not energized  
A
B
S
N
N
S
S
N
N
S
Rotor moves to the right to realign permanent  
magnet poles on the rotor to the electromagnet  
poles on the stator.  
S
N
S
N
Rotor  
Stator  
_
_
A
_
A
_
B
(d)  
A
B
B
A
B
• Phase A not energized.  
• Phase B energized in negative direction  
A
B
S
N
N
S
S
N
N
S
Rotor moves to the right to realign permanent  
magnet poles on the rotor to the electromagnet  
poles on the stator.  
S
N
S
N
Rotor  
Figure A1. Basic principle of bipolar stepper motor operation  
Allegro MicroSystems, Inc.  
115 Northeast Cutoff  
35  
Worcester, Massachusetts 01615-0036 U.S.A.  
1.508.853.5000; www.allegromicro.com  
A3981  
Automotive, Programmable Stepper Driver  
In the next panel, panel (b), the current is flowing down through  
the phase B winding from top to bottom and there is no current  
in phase A. The result is an N pole on the B electromagnets and  
an S pole on the B-bar electromagnets. These magnetic poles will  
attract and repel the permanent magnets on the rotor producing a  
force that moves the rotor from left to right in the diagram until  
the poles of the permanent magnets again align with the poles of  
the electromagnets.  
Figure A2 shows the basic principle of microstepping. Panels (a)  
and (c) of figure A2 correspond to panels (a) and (b) of figure  
A1. Panel (b) shows each phase energized such that there are now  
two adjacent N poles and two adjacent S poles. In this example  
the currents in both phases is the same, and so the S and N poles  
of the rotor now move to half way between the positions in  
diagrams (a) and (c). Figure A2 only shows a single mechanical  
step in total, which is one quarter of a full electrical cycle. This  
sequence is the lowest resolution form of microstepping, known  
as half step, and is the simplest method of driving a stepper motor  
in half-step mode.  
In panel (c), the current is flowing up through the phase A wind-  
ing from bottom to top and there is no current in phase B. This  
reverses the pole orientation from the top panel, such that there  
is an S pole on the A electromagnets and an N pole on the A-bar  
electromagnets. As before, these magnetic poles will attract and  
repel the permanent magnets on the rotor producing a force that  
moves the rotor from left to right in the diagram, until poles of  
the permanent magnets again align with the poles of the electro-  
magnets.  
The currents are switched-on in the correct direction in sequence  
and no current control is required. The current is simply defined,  
Stator  
_
_
A
B
A
B
A
The bottom panel, panel (d), shows the final combination with  
current flowing up through the phase B winding from bottom to  
top and there is no current in phase A. This produces an N pole  
on the B electromagnets and a S pole on the B-bar electromag-  
nets. As before, these magnetic poles will attract and repel the  
permanent magnets on the rotor producing a force that moves the  
rotor from left to right until poles of the permanent magnets again  
align with the poles of the electromagnets.  
(a) Same as  
figure A1(a)  
A
B
N
S
S
N
N
S
N
S
N
Rotor  
Stator  
_
_
A
N
B
N
A
B
A
N
Each of the four steps in figure A1 represents a single full  
mechanical step of the stepper motor. The four steps together  
represent a single electrical cycle.  
(b) Half-step  
position  
A
B
S
N
S
S
N
The step resolution depends entirely on the mechanical construc-  
tion of the motor and typically there will be 200 or more full  
steps per mechanical revolution of the motor. A 200-step motor  
will provide a resolution of 360/200 = 1.8° of rotation per step.  
S
Rotor  
Stepping in the opposite direction to that described above is sim-  
ply a case of changing the step sequence or inverting one of the  
phase current directions.  
Stator  
_
A
_
B
A
B
A
(c) Same as  
figure A1(b)  
A
B
N
S
S
N
Microstepping  
N
In many applications it is necessary to improve the resolution of  
the stepper motor, for more precise positioning control, or simply  
to increase the number of steps per revolution to reduce the  
torque ripple and therefore the vibration and noise of the motor.  
Fortunately this can be achieved by driving both phases at the  
same time in order to move the rotor to a position between two  
electromagnets. This is known generically as microstepping.  
N
S
Rotor  
Figure A2. Half step operation  
Allegro MicroSystems, Inc.  
115 Northeast Cutoff  
36  
Worcester, Massachusetts 01615-0036 U.S.A.  
1.508.853.5000; www.allegromicro.com  
A3981  
Automotive, Programmable Stepper Driver  
in the first instance, by the resistance of the winding and the  
applied voltage.  
line and the phase B current by the horizontal line. The half-step  
numbers correspond to the numbers in figure A3. For example,  
at step 1 in figure A3, the phase A current and the phase B cur-  
rent are both positive and with the same magnitude. These two  
currents are shown in figure A4 as the two solid arrows. Adding  
these two current vectors together gives the resultant motor cur-  
rent vector indicated. The resultant is the hypotenuse of a right-  
angled triangle with the two other sides equal. If the other two  
sides are assumed to be 1 then the magnitude of the hypotenuse  
will be:  
From figure A2(b) it is also apparent that varying the relative  
current in each phase will make it possible to move the rotor to  
any intermediate position between the four positions of figure A1,  
which occur when only a single phase is energized. When there is  
one intermediate position this is known as half step. When there  
are three intermediate positions this is known as quarter step  
and so on. Higher resolution microstepping is described in more  
detail below.  
12 12 2 1.41  
Phase Current-Sequence Diagrams  
Figure A3 shows the full sequence of the two phase currents illus-  
trated in figure A2. This shows two electrical cycles, equivalent to  
4 full mechanical steps (8 half steps). The full-step positions are  
marked F and the half-step positions are marked H. Each half step  
in the electrical cycle is numbered, from 0 to 7, for reference later.  
So the resultant current vector will be 141% of the value of the  
current in phase A or B, positioned at 45°.  
Torque Ripple  
Now, the torque output of any electrical motor is directly propor-  
tional to the magnitude of the motor current, and the motor cur-  
rent is the resultant phase current. It is clear from figure A4 that  
the resultant phase current at the half-step position is higher than  
the current at the full-step position. This means that the motor  
torque will be changing as the motor rotates, resulting in what is  
known as torque ripple. Torque ripple in any rotating system will  
cause mechanical vibration and will result in increased audible  
noise and possible wear on other mechanical components. Torque  
ripple can be reduced by ensuring that the resultant current at the  
half-step point has the same magnitude as the full current in the  
single phase at the full-step positions.  
This figure shows that, when discussing stepper motor control, it  
is necessary to know the relative magnitude and direction of the  
current in each phase. So, rather than use physical representations  
of the motor, such as in figure A1 and A2, or simple time-based  
current waveforms, such as figure A3, it is simpler to use a phase  
diagram. For a 2-pole bipolar motor this diagram is created by  
plotting the current in the two phases as orthogonal vectors, that  
is, as vectors at 90° to each other as shown in figure A4.  
Phase Current-Phase Diagrams  
Figure A4 shows the currents of figure A3 plotted on a phase  
diagram where the phase A current is represented by the vertical  
F
F
F
F
F
F
F
F
F
H
H
H
H
H
H
H
H
Phase A  
Current  
Phase  
B
3
2
F
1
H
H
Current  
Resultant  
0
F
4
Phase B  
Current  
F
Phase  
A
Current  
H
H
5
6
F
7
6
7
0
1
2
3
4
5
6
7
0
1
2
3
4
5
6
Figure A3. Phase current sequence for simple half step  
Figure A4. Phase diagram for simple half step  
Allegro MicroSystems, Inc.  
115 Northeast Cutoff  
37  
Worcester, Massachusetts 01615-0036 U.S.A.  
1.508.853.5000; www.allegromicro.com  
A3981  
Automotive, Programmable Stepper Driver  
The current vectors at half-step position 1 are shown specifically  
to illustrate that the magnitude of the resultant sits on the 100%  
circle.  
Improved Half Step  
Figure A5 shows a circle superimposed on the phase diagram.  
This circle represents the required locus of the resultant phase cur-  
rent vectors to maintain 100% current magnitude. At the full-step  
positions, 0, 2, 4, and 6, only one phase is active and the magni-  
tude of the phase current is at 100%. At the half-step positions, 1,  
3, 5, and 7, both phases are active. To ensure that the magnitude  
of the resultant current is 100%, the magnitude of each phase cur-  
rent must be 70.7%. Calculating the value of the resultant current  
as before gives a resultant current of 100%.  
For a standard stepper motor to operate with minimum torque  
ripple, the resultant current must always lie on the constant torque  
circle irrespective of the number of microsteps. For higher resolu-  
tion microstepping this then defines the relative phase currents at  
each microstep position.  
Quarter Step  
For example consider the next resolution in microstepping; quar-  
ter step. The locus of the required phase currents are shown in  
figure A6. The required current level in each phase can be calcu-  
lated using simple trigonometry. For example, consider microstep  
position 7 in figure A6 as detailed in figure A7.  
0.7072 + 0.7072  
=
0.5 + 0.5  
=
1
=
1
Phase A  
Current  
2 F  
There are 4 quarter steps for each full step. A full step on the  
phase diagram is represented by 90°. So each quarter step incre-  
ments the phase angle by 90°/4 = 22.5°.  
3
1
H
H
In figure A7 the resultant motor current at quarter-step position 8  
is one quarter step from the horizontal, so it is at 22.5°. The mag-  
Resultant  
0
F
nitude of the current in phase A at quarter-step position 7, IA7  
is therefore sin 22.5°, which is equal to 0.383 or 38.3% of the  
maximum current.  
,
4
F
Phase B  
Current  
Similarly, the magnitude of the current in phase B at quarter-step  
position 7, IB7 , is therefore cos 22.5°, which is equal to 0.924 or  
92.4% of the maximum current.  
H
5
H
7
6
F
At the 45° positions, 2, 6, 10 and 14, the magnitude of the current  
in phase A and phase B will be cos 45° = 0.707 or 70.7%, which  
is the same magnitude as in the half-step case shown in figure A5.  
Due to symmetry, the phase A current is the same at quarter-step  
positions 7 and 1. The phase A current at quarter-step positions  
9 and 15 also has the same magnitude, but the current is in the  
Figure A5. Phase diagram for improved half step  
IA  
4
5
3
6
2
IA  
6
7
1
0
8
IB  
IA7  
7
=sin22.5°  
9
15  
10  
14  
22.5°  
11  
13  
IB  
12  
8
I
B7=-cos22.5°  
Figure A6. Phase diagram for quarter step  
Figure A7. Calculating phase current magnitudes  
Allegro MicroSystems, Inc.  
115 Northeast Cutoff  
38  
Worcester, Massachusetts 01615-0036 U.S.A.  
1.508.853.5000; www.allegromicro.com  
A3981  
Automotive, Programmable Stepper Driver  
opposite direction. In addition the phase B current at quarter-  
step positions 3, 5, 11, and 13 also have the same magnitude as  
that of phase A at quarter-step position 7, with a positive current  
direction for steps 3 and 13 and a negative direction for steps 5  
and 11. Similar symmetry can be applied to the phase B current at  
quarter-step position 7, calculated above.  
Higher Microstep Resolution  
The principles described above can easily be extended to higher  
microstep resolutions. As the microstep resolution increases, it  
becomes more apparent that the phase current sequences approxi-  
mate ever closer to a sin and cosine function. Figure A9 shows  
the measured phase current sequence of the A3981 running in  
sixteenth-step mode. The phase current sequences for eighth-step  
and sixteenth-step resolutions are shown in figures A10 and A11.  
This means that only five discrete current magnitudes are  
required, including 0% and 100%, in order to drive the stepper  
motor to all 16 quarter-step positions. Using the same nomencla-  
ture as figure A7, that is, IPn , where P is the phase, A or B, and n  
is the quarter-step number from figure A6, table A1 shows where  
each of the five magnitude values are used.  
Most applications using small motors are limited to sixteenth-step  
mode due to the mechanical precision of the motor. Larger, high-  
precision stepper motors are sometimes driven at 32, 64, or even  
up to 256 microsteps in some extreme cases.  
Figure A8 shows these values plotted as a current sequence  
diagram. This figure is therefore the time-based equivalent of the  
phase diagram in figure A6.  
Practical Implementation  
A system to drive a stepper motor with microstep capability  
requires sequencers, current reference generators, and current  
controllers. Developing such a system from discrete components,  
or even using a fast microcontroller, is a complex task. The  
A3981 is one of several fully integrated stepper drivers that are  
available with microstep resolutions, from simple half step to  
sixteenth step and higher, using programmable current tables. All  
aspects of the stepper control system are included in these single  
chip solutions and many of them can be controlled by a simple  
Step and Direction interface.  
Table A1. Quarter-Step Phase Current Magnitudes  
Magnitude  
Phase B  
Phase A  
(%)  
0.  
IA0  
IA1  
IA2  
IA3  
IA8  
IA9  
IA10  
IA11  
IB4  
IB5  
IB6  
IB7  
IB12  
IB13  
IB14  
IB15  
38.3  
70.7  
92.4  
IA7  
IA6  
IA5  
IA4  
IA15  
IA14  
IA13  
IA12  
IB3  
IB2  
IB1  
IB0  
IB11  
IB10  
IB9  
100.  
IB8  
IB  
100%  
92%  
70%  
38%  
0
-38%  
-70%  
-92%  
-100%  
100%IA  
92%  
70%  
38%  
0
-38%  
-70%  
-92%  
-100%  
12 13 14 15  
0
1
2
3
4
5
6
7
8
9
10 11 12  
Figure A8. Phase current sequence for quarter step  
Figure A9. Measured sixteenth-step phase current sequence  
Allegro MicroSystems, Inc.  
115 Northeast Cutoff  
39  
Worcester, Massachusetts 01615-0036 U.S.A.  
1.508.853.5000; www.allegromicro.com  
A3981  
Automotive, Programmable Stepper Driver  
voltage the resulting voltage difference will be insufficient to  
Practical limitations  
drive the phase current required to produce the necessary output  
torque. When this occurs the motor will stall and slip out of syn-  
chronization with the driving circuit.  
The information presented here assumes ideal stepper motors  
being stepped slowly, with accurate, efficient current control  
circuits. In practice the stepper motor phase windings are repre-  
sented by two non-ideal inductors and the motor may be driven at  
a high stepping rate.  
The mechanical precision of the motor will also have an effect  
on the overall performance of the system. If the effect of the  
motor windings on the rotor are non-linear then the relationship  
between current and torque may not be linear. The magnitude of  
the currents at each microstep may then require a relationship  
other than sinusoidal. The A3981 and a few other integrated driv-  
ers are able to accommodate this by allowing the phase current  
values for each microstep position to be reprogrammed. In most  
systems this effect will be very small and can be ignored but in  
some cases some improvement in torque ripple and audible noise  
can be achieved.  
A high stepping rate will produce a back EMF, like any other  
motor, that will act against any current control circuits. The  
current control circuits must also be able to work with inductive  
loads. In general the current control circuit will be a PWM cur-  
rent control scheme to make the driver as efficient as possible and  
reduce the dissipation in the driver.  
Like any other motor, the back EMF will also limit the maximum  
stepping rate of the motor. As the motor speed increases the back  
EMF will increase. When it reaches a value close to the supply  
100%  
98%  
92%  
83%  
70%  
56%  
38%  
19%  
IB  
19%  
38%  
56%  
70%  
83%  
92%  
98%  
100%  
24 25 26 27 28 29 30 31 0  
1
2
3
4
5
6
7
8
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24  
100%  
98%  
92%  
83%  
70%  
56%  
38%  
19%  
IA  
19%  
38%  
56%  
70%  
83%  
92%  
98%  
100%  
Figure A10. Phase current sequence for eighth step  
Allegro MicroSystems, Inc.  
115 Northeast Cutoff  
40  
Worcester, Massachusetts 01615-0036 U.S.A.  
1.508.853.5000; www.allegromicro.com  
A3981  
Automotive, Programmable Stepper Driver  
100%  
98%  
99%  
96%  
92%  
88%  
83%  
77%  
70%  
63%  
56%  
47%  
38%  
29%  
19%  
10%  
IB  
10%  
19%  
29%  
38%  
47%  
56%  
63%  
70%  
77%  
83%  
88%  
92%  
96%  
99%  
98%  
100%  
100%  
98%  
99%  
96%  
92%  
88%  
83%  
77%  
70%  
63%  
56%  
47%  
38%  
29%  
19%  
10%  
IA  
10%  
19%  
29%  
38%  
47%  
56%  
63%  
70%  
77%  
83%  
88%  
92%  
96%  
99%  
98%  
100%  
Figure A11. Phase current sequence for sixteenth step  
Allegro MicroSystems, Inc.  
115 Northeast Cutoff  
41  
Worcester, Massachusetts 01615-0036 U.S.A.  
1.508.853.5000; www.allegromicro.com  
A3981  
Automotive, Programmable Stepper Driver  
Revision History  
Revision  
Revision Date  
Description of Revision  
Rev. 4  
June 21, 2012  
Update Electrical Characteristics table  
Copyright ©2010-2012, Allegro MicroSystems, Inc.  
Allegro MicroSystems, Inc. reserves the right to make, from time to time, such departures from the detail specifications as may be required to per-  
mit improvements in the performance, reliability, or manufacturability of its products. Before placing an order, the user is cautioned to verify that the  
information being relied upon is current.  
Allegro’s products are not to be used in life support devices or systems, if a failure of an Allegro product can reasonably be expected to cause the  
failure of that life support device or system, or to affect the safety or effectiveness of that device or system.  
The information included herein is believed to be accurate and reliable. However, Allegro MicroSystems, Inc. assumes no responsibility for its use;  
nor for any infringement of patents or other rights of third parties which may result from its use.  
For the latest version of this document, visit our website:  
www.allegromicro.com  
Allegro MicroSystems, Inc.  
115 Northeast Cutoff  
42  
Worcester, Massachusetts 01615-0036 U.S.A.  
1.508.853.5000; www.allegromicro.com  

相关型号:

A3981KLPTR-T

Stepper Motor Controller, PDSO28, 9.70 X 4.40 MM, 1.20 MM HEIGHT, LEAD FREE, MO-153AET, TSSOP-28
ALLEGRO

A3981_V

Automotive, Programmable Stepper Driver
ALLEGRO

A3982

DMOS Stepper Motor Driver with Translator
ALLEGRO

A3982SLB

DMOS Stepper Motor Driver with Translator
ALLEGRO

A3982SLB-T

DMOS Stepper Motor Driver with Translator
ALLEGRO

A3982SLBTR-T

Stepper Motor Controller, 2A, NMOS, PDSO24, LEAD FREE, MS-013AD, SOIC-24
ALLEGRO

A3982_13

DMOS Stepper Motor Driver with Translator
ALLEGRO

A3983

DMOS Microstepping Driver with Translator
ALLEGRO

A3983SLP

DMOS Microstepping Driver with Translator
ALLEGRO

A3983SLP-T

DMOS Microstepping Driver with Translator
ALLEGRO

A3983SLPTR

DMOS Microstepping Driver with Translator
ALLEGRO

A3983SLPTR-T

DMOS Microstepping Driver with Translator
ALLEGRO