
Analog Integrated Circuit Device Data
Freescale Semiconductor 17
33970
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 Confi gu ra tio n
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 co mmand 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 resul ting in consistently
successful zero detections depends on a clear understanding
of the motor characteristics. Specifically, resonant
frequencies exist due to the interaction be tween 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
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 va lue
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 th e threshold
indicate a stalled pointer, thereby resulting in the cessation of
the RTZ event.
The RTZ accumulator bits are sign ed 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 value s 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 accumula tor value to -1.
.
Table 12. RTZCR SI Register Assignment
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