Specifications
BMA180
Preliminary data sheet
Bosch Sensortec
Rev. 1.0 Page 34 / - proprietary information - 06 March 2009
© Bosch Sensortec GmbH reserves all rights even in the event of industrial property rights. We reserve all rights of disposal such
as copying and passing on to third parties. BOSCH and the symbol are registered trademarks of Robert Bosch GmbH, Germany.
Specifications within this document are preliminary and subject to change without notice. Document is not intended for publication.
7.8.12 CRC - checksum bits
CRC are checksum bits used to verify the integrity of the trimming codes. This is used for the
check of the EEPROM content during the packaging procedure. Furthermore it could be
checked, whether a trimming procedure at customer side has been performed.
7.8.13 ee_cd1, ee_cd2 - customer data
These 2 bytes can be used by customers to store any data in the non-volatile memory. Its
content does not influence the ASIC functionality. At Bosch production site these registers are
used to store inter-mediate data, the content of which may differ from sensor to sensor. This is
of no importance for the proper functionality of the sensor.
7.9 Interrupt settings
The sensor is providing 6 different types of user programmable interrupts. When any interrupt
condition is valid, the INT pad goes to 1. If many interrupts are activated at the same time, INT
goes high when at least one of the interrupt criteria exists. Interrupts can be chosen as latched
(interrupt reset by µC necessary) or non latched (interrupt disappears as soon as interrupt
condition disappears)
Interrupts generations may be disturbed by EEPROM, image or control bits changes because
some of these bits influence the interrupt calculation. As a consequence, no write sequence
should occur when microprocessor is triggered by INT or the interrupt should be disabled on the
microprocessor side when write sequences must be operated.
Interrupt criteria are using digital code coming from digital filter output, as a consequence all
thresholds are scaled with full scale selection (depends on range control bits). Timings used for
high acceleration and low acceleration debouncing are absolute values (1 LSB of high_dur and
low_dur registers corresponds to 5*Tupdate (=2.085ms), timing accuracy is proportional to
oscillator accuracy = ±10%), thus it does not depend on selected bandwidth. Timings used for
slope interrupt and slope alert detection are proportional to bandwidth settings.
All interrupt criteria are combined and drive the INT pad with an OR condition.
All interrupts are temporarily blocked after the wake-up, system reset or filtering bandwidth
change until there are enough samples to evaluate the interrupt condition for the first time (1
sample for threshold, 4 samples for slope and tap sensing). There is a dependence on the
filtering settings of the selected interrupt:
- if low_filt = 0, interrupt condition is evaluated from the non-filtered data and might be enable
virtually immediately after the power-up.
- If low_filt = 1, interrupt condition is evaluated from the filtered data and shall be enabled as
soon as the transient response of the filter disappears.
New data interrupt is enabled only if samples are available for reading.










