Firmware Functions
FXTH87xx11 and FXTH87xx12 Embedded Firmware User Guide, Rev. 2.1
Freescale Semiconductor, Inc.
21
•
Interrupt Management:
This function utilizes the ADC interrupt to wake-up from STOP mode.
•
Resources:
SMI, ADC, internal bond wires.
•
Input Parameters:
— UINT16 *u16UUMA: Pointer to Universal Uncompensated Measurement Array (as described
). Only the 10-bit uncompensated acceleration result will be updated.
— UINT8 u8Avg: Number of measurements to average into one result. The value can be set to 1,
2, 4, 8, or 16.
— UINT8 u8FiltSelect: If non-zero, 250-Hz filter enabled. Otherwise, 500-Hz filter selected.
— UINT8 u8DynamicOffset: Selects the offset setting for the appropriate acceleration reading.
Valid range is 0 - 15. Refer to product specification for acceleration ranges for a given offset
step.
•
Returns
:
— UINT8 u8Status: Valid error flags/outputs are described in
3.2.12
UINT8 TPMS_READ_DYNAMIC_ACCEL_Z(UINT8 u8Filter, UINT8*
u8Offset, UINT16* u16UUMA)
•
Description:
This function automatically executes a TPMS_READ_ACCELERATION_Z
measurement with a given initial dynamic offset. If the result is too high or too low, it will change
the dynamic offset value and re-execute TPMS_READ_ACCELERATION_Z until a) the result is
valid or b) the result is railed high or low and there are no more offset steps. Offset and
uncompensated acceleration inside the UUMA are updated.
•
Stack size:
48 bytes
•
Approx. Duration:
29065 usec from one extreme to the center; 2816 usec best case.
•
Power Management:
This function requires the core to be configured for STOP4 mode and
running at full bus speed.
•
Interrupt Management:
This function utilizes the ADC interrupt to wake-up from STOP mode.
•
Resources:
SMI, ADC, internal bond wires.
Table 17. Valid output conditions for TPMS_READ_ACCELERATION_X
u8Status Value
Measurement Value
Condition
$10
$03FF
Uncompensated acceleration reading outside of valid range (high).
$10
$0000
Uncompensated acceleration reading outside of valid range (low).
$30
$03FF
Uncompensated acceleration reading outside of valid range (high),
and LVWF set.
$30
$0000
Uncompensated acceleration reading outside of valid range (low),
and LVWF set.
$80
$0000
Uncompensated acceleration reading not acquired.
$A0
$0000
Uncompensated acceleration reading not acquired, and LVWF set.
$00
Between $0001 - $03FE
Valid uncompensated acceleration reading.
$20
Between $0001 - $03FE
Valid uncompensated acceleration reading, but LVWF set.