English
Language : 

33970 Datasheet, PDF (17/36 Pages) Freescale Semiconductor, Inc – Dual Gauge Driver Integrated Circuit with Improved Damping Algorithms
FUNCTIONAL DEVICE OPERATION
LOGIC COMMANDS AND REGISTERS
RZ1 (D1) — Return to Zero Direction. This bit commands
the selected gauge to return the pointer to zero position.
• 0 = Return to Zero Disabled
• 1 = Return to Zero Enabled
RZ0 (D0) — Gauge Select: Gauge 0/Gauge 1. This bit
selects the gauge to be commanded.
• 0 = Selects Gauge 0
• 1 = Selects Gauge 1
Address 101 — Gauge Return to Zero Configuration
Register
Gauge Return to Zero Configuration Register (RTZCR) is
used to configure the Return to Zero Event (refer to
Table 12). It is written to modify the step time, or rate; at
which the pointer moves during an RTZ event. Also, the
integration blanking time, which is the time immediately
following the transition of a coil from a driven state to an open
state in the RTZ mode, is adjustable with this command.
Finally, this command is used to adjust the threshold of the
RTZ integration register.
The values used for this register should be selected during
development to optimize the RTZ for each application.
Selecting an RTZ step rate resulting in consistently
successful zero detections depends on a clear understanding
of the motor characteristics. Specifically, resonant
frequencies exist due to the interaction between the motor
and the pointer. This command allows movement of the RTZ
pointer speed away from these frequencies. Also, some
motors require a significant amount of time for the pointer to
settle to a steady state position when moving from one full
step position to the next. Consistent and accurate integration
values require the pointer be stationary at the end of the full
step time.
Bits RC3:RC0, RC12:RC11, and RC4 determine the time
spent at each full step during an RTZ event. Bits RC3:RC0
are used to select a ∆t ranging from 0 ms (0000) to 61.44 ms
(1111) in increments of 4.096 ms (refer to Table 13). The ∆t
is multiplied by the factor M, which is defined by bits
RC12:RC11. The product is then added to the blanking time,
selected using bit RC4, to generate the full step time. The
multiplier selected with RC12:RC11 will be 1 (00), 2 (01), or
4 (10) as illustrated in the equations below. Note that the
RC12:RC11 value of 8 (11) is not recommended for use in a
product design application, because of the potential for an
RTZ accumulator internal overflow, due to the long time step.
The blanking time is either 512 µs when RC4 is logic [0], or
.
Table 12. RTZCR SI Register Assignment
768 µs when it is logic [1].The full step time is generated
using the following equations:
When D3:D0 (RC3:RC0) ≠ 0000
Full Step (t) = ∆t x M + blanking (t)(1)
When D3:D0 (RC3:RC0) = 0000
Full Step (t) = blanking (t) + 2.048 ms(2)
Note In equation (2), a 2.048 ms offset is added to the full
step time when the RC:3:RC0 = 0000. The full step time
default value after a logic reset is 12.80 ms
(RC12:RC11 = 00, RC4 = 0, and RC3:RC0 = 0011).
If there are two full steps per degree of pointer movement,
the pointer speed is 1/(FullStep x 2) deg/s.
Detecting pointer movement is accomplished by
integrating the EMF present in the non-driven coil during the
RTZ event. The integration circuitry is implemented using a
Sigma-Delta converter resulting in the placement of a value
in the 15-bit RTZ accumulator at the end of each full step. The
value in the RTZ accumulator represents the change in flux
and is compared to a threshold. Values above the threshold
indicate a pointer is moving. Values below the threshold
indicate a stalled pointer, thereby resulting in the cessation of
the RTZ event.
The RTZ accumulator bits are signed and represented in
two’s complement. After a full step of integration, a sign bit of
0 is the indicator of an accumulator exceeding the decision
threshold of 0, and the pointer is assumed to still be moving.
Similarly, if the sign bit is logic [1] after a full step of
integration, the accumulator value is negative and the pointer
is assumed to be stopped. The integrator and accumulator
are initialized after each full step. If the PECCR command is
written to clock out the RTZ accumulator values via the SO,
the OD14 bit corresponds to the sign bit of the RTZ
accumulator.
Accurate pointer stall detection depends on a correctly
preloaded accumulator for specific gauge, pointer, and full
step combinations. Bits RC10:RC5 are used to offset the
initial RTZ accumulator value, properly detecting a stalled
motor. The initial accumulator value at the start of a full step
of integration is negative. If the accumulator was correctly
preloaded, a free-moving pointer will result in a positive value
at the end of the integration time, and a stalled pointer will
result in a negative value. The preloaded values associated
with each combination of bits RC10:RC5 are illustrated in
Table 14. The accumulator should be loaded with a value
resulting in an accumulator MSB to a logic [1] when the motor
is stalled. For the default mode, after a power-up or any reset,
the 33970 device sets the accumulator value to -1.
Address 101
Bits D12
D11
D10
D9
D8
D7
D6
D5
D4
D3
D2
D1
D0
Read –
–
–
–
–
–
–
–
–
–
–
–
–
Write RC12 RC11 RC10 RC9
RC8
RC7
RC6
RC5
RC4
RC3
RC2
RC1
RC0
Analog Integrated Circuit Device Data
Freescale Semiconductor
33970
17