
Analog Integrated Circuit Device Data
Freescale Semiconductor
26
33977
FUNCTIONAL DEVICE OPERATION
LOGIC COMMANDS AND REGISTERS
(1111) in increments of 4.096 ms (refer to
Table 14
). The
t
is multiplied by the factor M, 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 calculated 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 RC3: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/(Full Step 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
Table 13. Return to Zero Register Configuration Register (RTZCR)
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 15
. The accumulator should be loaded with a value
resulting in an accumulator MSB to Logic [1] when the motor
is stalled. For the default mode, after a power-up or any reset,
the 33977 device sets the accumulator value to -1.
The bits in
Table 13
are
write-only.
(RC12:RC11) Bits D12:D11
These bits, along with RC3:RC0 (D3:D0) and RC4 (D4),
determine the full step time and, therefore, the rate at which
the pointer will move during an RTZ event. The values of
D12:D11 determine the multiplier (M) used in equation (1)
(refer to the previous page).
RC12:RC11 = M; default value = 00
00 = 1
01 = 2
10 = 4
11 = 8 (Not to be used for design)
(RC10:RC5) Bits D10:D5
These bits determine the value preloaded into the RTZ
integration accumulator to adjust the detection threshold.
Values range from -1 (00000000) to -1009 (11111111) as
shown in
Table 15
,
the default value = 000000.
(RC4) Bit D4
This bit determines the RTZ blanking time
(blanking (t)).
The default value = 0
0 = 512
μ
s
1 = 768
μ
s
(RC3:RC0) Bits D3:D0
These bits, along with RC12:RC11 (D12:D11) and RC4
(D4), determine the time variables used to calculate the full
step times with equations (1) or (2) illustrated above.
RC3:RC0 determines the
t time. The
t values range from 0
(0000) to 61.440 ms (1111) and are shown in
Table 14
.
The
default
t is 0 (0011).
Note:
Equation (2) (refer to the preceding page) is only
used to calculate the full step time if RC3:RC0 = 0000. Use
equation (1) for all other combinations of RC3:RC0.
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