3-Axis, ±200 g Digital Accelerometer ADXL375 Data Sheet FEATURES GENERAL DESCRIPTION Low power: as low as 35 µA in measurement mode and 0.1 µA in standby mode at VS = 2.5 V Power consumption scales automatically with bandwidth Embedded, 32-level FIFO buffer minimizes processor load Bandwidth of up to 1 kHz Bandwidth selectable via serial command Shock event detection Activity/inactivity monitoring Supply voltage range: 2.0 V to 3.6 V I/O voltage range: 1.7 V to VS SPI (3- or 4-wire) and I2C digital interfaces Wide temperature range: −40°C to +85°C 10,000 g shock survival Pb free/RoHS compliant Small and thin: 3 mm × 5 mm × 1 mm LGA package The ADXL375 is a small, thin, 3-axis accelerometer that provides low power consumption and high resolution measurement up to ±200 g. The digital output data is formatted as 16-bit, twos complement data and is accessible through a SPI (3- or 4-wire) or I2C digital interface. An integrated memory management system with a 32-level first in, first out (FIFO) buffer can be used to store data to minimize host processor activity and lower overall system power consumption. Low power modes enable intelligent motion-based power management with threshold sensing and active acceleration measurement at extremely low power dissipation. The ADXL375 is supplied in a small, thin, 3 mm × 5 mm × 1 mm, 14-lead LGA. APPLICATIONS Concussion and head trauma detection High force event detection FUNCTIONAL BLOCK DIAGRAM VS ADXL375 VDD I/O POWER MANAGEMENT ADC 3-AXIS SENSOR DIGITAL FILTER 32-LEVEL FIFO CONTROL AND INTERRUPT LOGIC INT1 INT2 SDA/SDI/SDIO SERIAL I/O SDO/ALT ADDRESS SCL/SCLK CS GND 11669-001 SENSE ELECTRONICS Figure 1. Rev. 0 Document Feedback Information furnished by Analog Devices is believed to be accurate and reliable. However, no responsibility is assumed by Analog Devices for its use, nor for any infringements of patents or other rights of third parties that may result from its use. Specifications subject to change without notice. No license is granted by implication or otherwise under any patent or patent rights of Analog Devices. Trademarks and registered trademarks are the property of their respective owners. One Technology Way, P.O. Box 9106, Norwood, MA 02062-9106, U.S.A. Tel: 781.329.4700 ©2013 Analog Devices, Inc. All rights reserved. Technical Support www.analog.com ADXL375 Data Sheet TABLE OF CONTENTS Features .............................................................................................. 1 Serial Communications ................................................................. 15 Applications ....................................................................................... 1 SPI Mode ..................................................................................... 15 General Description ......................................................................... 1 I2C Mode...................................................................................... 18 Functional Block Diagram .............................................................. 1 Register Map ................................................................................... 20 Revision History ............................................................................... 2 Register Descriptions ................................................................. 21 Specifications..................................................................................... 3 Applications Information .............................................................. 26 Absolute Maximum Ratings ............................................................ 4 Power Supply Decoupling ......................................................... 26 Thermal Resistance ...................................................................... 4 Mechanical Considerations for Mounting .............................. 26 ESD Caution .................................................................................. 4 Shock Detection ......................................................................... 26 Soldering Profile ........................................................................... 5 Threshold Detection and Bandwidth ...................................... 27 Pin Configuration and Function Descriptions ............................. 6 Link Mode ................................................................................... 27 Typical Performance Characteristics ............................................. 7 Sleep Mode vs. Low Power Mode............................................. 28 Theory of Operation ...................................................................... 10 Offset Calibration ....................................................................... 28 Power Sequencing ...................................................................... 10 Current Consumption and Output Data Rate ........................ 10 Data Formatting at Output Data Rates of 3200 Hz and 1600 Hz ................................................................................ 28 Power Saving Modes .................................................................. 11 Using Self-Test ............................................................................ 29 FIFO Buffer ................................................................................. 11 Axes of Acceleration Sensitivity ............................................... 30 Self-Test........................................................................................ 12 Layout and Design Recommendations ................................... 31 Interrupts ......................................................................................... 13 Package Information .................................................................. 31 Enabling and Disabling Interrupts ........................................... 13 Outline Dimensions ....................................................................... 32 Clearing Interrupts ..................................................................... 13 Ordering Guide .......................................................................... 32 Bits in the Interrupt Registers ................................................... 13 REVISION HISTORY 8/13—Revision 0: Initial Version Rev. 0 | Page 2 of 32 Data Sheet ADXL375 SPECIFICATIONS TA = 25°C, VS = 2.5 V, VDD I/O = 2.5 V, acceleration = 0 g, CS = 10 µF tantalum, CI/O = 0.1 µF, output data rate (ODR) = 800 Hz, unless otherwise noted. Table 1. Parameter SENSOR INPUT Measurement Range 2 Nonlinearity Cross-Axis Sensitivity 3 SENSITIVITY Sensitivity at XOUT, YOUT, ZOUT2, 4 Scale Factor at XOUT, YOUT, ZOUT2, 4 Sensitivity Change Due to Temperature 0 g OFFSET 0 g Output for XOUT, YOUT, ZOUT 0 g Offset vs. Temperature NOISE OUTPUT DATA RATE AND BANDWIDTH 5 Output Data Rate (ODR)4, 6 SELF-TEST 7 Output Change in Z-Axis POWER SUPPLY Operating Voltage Range (VS) Interface Voltage Range (VDD I/O) Supply Current Measurement Mode Standby Mode Turn-On and Wake-Up Time 8 TEMPERATURE Operating Temperature Range WEIGHT Device Weight Test Conditions/Comments Each axis Min Typ 1 ±180 ±200 ±0.25 ±2.5 18.4 44 20.5 49 ±0.02 22.6 54 LSB/g mg/LSB %/°C −6000 ±400 ±10 5 +6000 mg mg/°C mg/√Hz 3200 Hz Percentage of full scale Each axis ODR ≤ 800 Hz ODR ≤ 800 Hz Max Unit g % % Each axis X-, y-, and z-axes User selectable 0.1 g 6.4 2.0 1.7 ODR ≥ 100 Hz ODR ≤ 3 Hz 2.5 1.8 3.6 VS 145 35 0.1 1.4 ODR = 3200 Hz −40 µA µA µA ms +85 30 V V °C mg Typical specifications are for at least 68% of the population of parts and are based on the worst case of mean ± 1 σ distribution, except for sensitivity, which represents the target value. 2 Minimum and maximum specifications represent the worst case of mean ± 3 σ distribution and are not guaranteed in production. 3 Cross-axis sensitivity is defined as coupling between any two axes. 4 The output format for the 1600 Hz and 3200 Hz output data rates is different from the output format for the other output data rates. For more information, see the Data Formatting at Output Data Rates of 3200 Hz and 1600 Hz section. 5 Bandwidth is the −3 dB frequency and is half the output data rate: bandwidth = ODR/2. 6 Output data rates < 6.25 Hz exhibit additional offset shift with increased temperature. 7 Self-test change is defined as the output (g) when the SELF_TEST bit = 1 (DATA_FORMAT register, Address 0x31) minus the output (g) when the SELF_TEST bit = 0. Due to device filtering, the output reaches its final value after 4 × τ when enabling or disabling self-test, where τ = 1/(data rate). For the self-test to operate correctly, the part must be in normal power operation (LOW_POWER bit = 0 in the BW_RATE register, Address 0x2C). 8 Turn-on and wake-up times are determined by the user-defined bandwidth. At a 100 Hz data rate, the turn-on and wake-up times are each approximately 11.1 ms. For other data rates, the turn-on and wake-up times are each approximately τ + 1.1 ms, where τ = 1/(data rate). 1 Rev. 0 | Page 3 of 32 ADXL375 Data Sheet ABSOLUTE MAXIMUM RATINGS THERMAL RESISTANCE Table 2. Parameter Acceleration, Any Axis Unpowered Powered VS VDD I/O Digital Pins Output Short-Circuit Duration (Any Pin to Ground) Temperature Range Powered Storage θJA is specified for the worst-case conditions, that is, a device soldered in a circuit board for surface-mount packages. Rating 10,000 g 10,000 g −0.3 V to +3.9 V −0.3 V to +3.9 V −0.3 V to VDD I/O + 0.3 V or 3.9 V, whichever is less Indefinite Table 3. Package Characteristics Package Type 14-Terminal LGA ESD CAUTION −40°C to +105°C −40°C to +105°C Stresses above those listed under Absolute Maximum Ratings may cause permanent damage to the device. This is a stress rating only; functional operation of the device at these or any other conditions above those indicated in the operational section of this specification is not implied. Exposure to absolute maximum rating conditions for extended periods may affect device reliability. Rev. 0 | Page 4 of 32 θJA 150 θJC 85 Unit °C/W Data Sheet ADXL375 SOLDERING PROFILE Figure 2 and Table 4 provide information about the recommended soldering profile. CRITICAL ZONE TL TO TP tP TP tL TSMAX TSMIN tS RAMP-DOWN PREHEAT 11669-015 TEMPERATURE RAMP-UP TL t25°C TO PEAK TIME Figure 2. Recommended Soldering Profile Table 4. Recommended Soldering Profile Limits 1, 2 Profile Feature Average Ramp Rate (TL to TP) Preheat Minimum Temperature (TSMIN) Maximum Temperature (TSMAX) Time from TSMIN to TSMAX (tS) Ramp-Up Rate (TSMAX to TL) Liquidous Temperature (TL) Time Maintained Above TL (tL) Peak Temperature (TP) Time Within 5°C of Actual TP (tP) Ramp-Down Rate Time 25°C (t25°C) to Peak Temperature 1 2 Sn63/Pb37 3°C/sec maximum Pb-Free 3°C/sec maximum 100°C 150°C 60 sec to 120 sec 3°C/sec maximum 183°C 60 sec to 150 sec 240°C +0°C/−5°C 10 sec to 30 sec 6°C/sec maximum 6 minutes maximum 150°C 200°C 60 sec to 180 sec 3°C/sec maximum 217°C 60 sec to 150 sec 260°C +0°C/−5°C 20 sec to 40 sec 6°C/sec maximum 8 minutes maximum Based on JEDEC Standard J-STD-020D.1. For best results, the soldering profile should be in accordance with the recommendations of the manufacturer of the solder paste used. Rev. 0 | Page 5 of 32 ADXL375 Data Sheet PIN CONFIGURATION AND FUNCTION DESCRIPTIONS ADXL375 TOP VIEW (Not to Scale) SCL/SCLK VDD I/O 1 GND 2 RESERVED 3 14 13 SDA/SDI/SDIO 12 SDO/ALT ADDRESS 11 RESERVED 10 NC 9 INT2 8 INT1 +X GND 4 GND 5 VS 6 +Y +Z 7 11669-002 CS NOTES 1. NC = NOT INTERNALLY CONNECTED. Figure 3. Pin Configuration Table 5. Pin Function Descriptions Pin No. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 Mnemonic VDD I/O GND RESERVED GND GND VS CS INT1 INT2 NC RESERVED SDO/ALT ADDRESS SDA/SDI/SDIO SCL/SCLK Description Digital Interface Supply Voltage. Ground. This pin must be connected to ground. Reserved. This pin must be connected to VS or left open. Ground. This pin must be connected to ground. Ground. This pin must be connected to ground. Supply Voltage. Chip Select. Interrupt 1 Output. Interrupt 2 Output. Not Internally Connected. Reserved. This pin must be connected to ground or left open. SPI 4-Wire Serial Data Output (SDO)/I2C Alternate Address Select (ALT ADDRESS). I2C Serial Data (SDA)/SPI 4-Wire Serial Data Input (SDI)/SPI 3-Wire Serial Data Input and Output (SDIO). I2C Serial Communications Clock (SCL)/SPI Serial Communications Clock (SCLK). Rev. 0 | Page 6 of 32 Data Sheet ADXL375 TYPICAL PERFORMANCE CHARACTERISTICS 25 1.0 0.6 OFFSET DRIFT (g) 20 15 10 0.4 0.2 0 –0.2 –0.4 –0.8 –1.0 –50 3.0 2.6 2.2 1.8 1.4 1.0 0.6 0.2 –0.2 –0.6 –1.0 –1.4 –1.8 –2.2 –2.6 –3.0 0 11669-203 –0.6 5 11669-200 PERCENT OF POPULATION (%) 0.8 –35 –20 –5 10 25 40 55 TEMPERATURE (°C) 70 85 100 OFFSET (g) Figure 7. X-Axis Offset Drift, 15 Parts Soldered to PCB, VS = 2.5 V Figure 4. X-Axis Zero g Offset at 25°C, VS = 2.5 V 25 1.0 OFFSET DRIFT (g) 0.6 15 10 0.4 0.2 0 –0.2 –0.4 –0.8 –1.0 –50 3.0 2.6 2.2 1.8 1.4 1.0 0.6 0.2 –0.2 –0.6 –1.0 –1.4 –1.8 –2.2 –2.6 –3.0 0 11669-204 –0.6 5 11669-201 PERCENT OF POPULATION (%) 0.8 20 –35 –20 –5 10 25 40 55 TEMPERATURE (°C) 70 85 100 OFFSET (g) Figure 5. Y-Axis Zero g Offset at 25°C, VS = 2.5 V Figure 8. Y-Axis Offset Drift, 15 Parts Soldered to PCB, VS = 2.5 V 16 1.0 0.8 0.6 OFFSET DRIFT (g) 12 10 8 6 0.4 0.2 0 –0.2 –0.4 4 11669-202 –0.8 –1.0 –50 3.0 2.6 2.2 1.8 1.4 1.0 0.6 0.2 –0.2 –0.6 –1.0 –1.4 –1.8 –2.2 –2.6 0 11669-205 –0.6 2 –3.0 PERCENT OF POPULATION (%) 14 –35 –20 –5 10 25 40 55 TEMPERATURE (°C) 70 85 100 OFFSET (g) Figure 6. Z-Axis Zero g Offset at 25°C, VS = 2.5 V Figure 9. Z-Axis Offset Drift, 15 Parts Soldered to PCB, VS = 2.5 V Rev. 0 | Page 7 of 32 ADXL375 Data Sheet 25 23.0 SENSITIVITY (LSB/g) 22.0 15 10 5 21.5 21.0 20.5 20.0 19.5 18.5 18.0 –50 18.0 18.2 18.4 18.6 18.8 19.0 19.2 19.4 19.6 19.8 20.0 20.2 20.4 20.6 20.8 21.0 21.2 21.4 21.6 21.8 22.0 22.2 22.4 22.6 22.8 23.0 0 11669-209 19.0 11669-206 PERCENT OF POPULATION (%) 22.5 20 –35 –20 –5 10 25 40 55 70 85 100 TEMPERATURE (°C) SENSITIVITY (LSB/g) Figure 10. X-Axis Sensitivity at 25°C, VS = 2.5 V Figure 13. X-Axis Sensitivity vs. Temperature, 16 Parts Soldered to PCB, VS = 2.5 V 25 23.0 20 SENSITIVITY (LSB/g) 22.0 15 10 5 21.5 21.0 20.5 20.0 19.5 18.5 18.0 –50 18.0 18.2 18.4 18.6 18.8 19.0 19.2 19.4 19.6 19.8 20.0 20.2 20.4 20.6 20.8 21.0 21.2 21.4 21.6 21.8 22.0 22.2 22.4 22.6 22.8 23.0 0 11669-210 19.0 11669-207 PERCENT OF POPULATION (%) 22.5 –35 –20 –5 10 25 40 55 70 85 100 TEMPERATURE (°C) SENSITIVITY (LSB/g) Figure 14. Y-Axis Sensitivity vs. Temperature, 16 Parts Soldered to PCB, VS = 2.5 V Figure 11. Y-Axis Sensitivity at 25°C, VS = 2.5 V 23.0 16 22.5 22.0 SENSITIVITY (LSB/g) 12 10 8 6 21.5 21.0 20.5 20.0 19.5 4 11669-208 0 11669-211 19.0 2 18.5 18.0 –50 18.0 18.2 18.4 18.6 18.8 19.0 19.2 19.4 19.6 19.8 20.0 20.2 20.4 20.6 20.8 21.0 21.2 21.4 21.6 21.8 22.0 22.2 22.4 22.6 22.8 23.0 PERCENT OF POPULATION (%) 14 –35 –20 –5 10 25 40 55 70 85 100 TEMPERATURE (°C) SENSITIVITY (LSB/g) Figure 12. Z-Axis Sensitivity at 25°C, VS = 2.5 V Figure 15. Z-Axis Sensitivity vs. Temperature, 16 Parts Soldered to PCB, VS = 2.5 V Rev. 0 | Page 8 of 32 Data Sheet ADXL375 200 SUPPLY CURRENT (µA) 20 15 10 150 100 50 5 11669-212 0 2.0 80 85 90 95 100 105 110 115 120 125 130 135 140 145 150 155 160 165 170 175 180 0 2.4 2.8 3.2 11669-215 PERCENT OF POPULATION (%) 25 3.6 SUPPLY VOLTAGE (V) SELF-TEST RESPONSE (LSB) Figure 19. Supply Current vs. Supply Voltage (VS) at 25°C Figure 16. Z-Axis Self-Test Response at 25°C, VS = 2.5 V 200 X-AXIS, DUT1 X-AXIS, DUT2 Y-AXIS, DUT1 Y-AXIS, DUT2 Z-AXIS, DUT1 Z-AXIS, DUT2 20 150 OUTPUT (g) 15 10 100 0 100 110 120 130 140 150 160 170 180 190 11669-216 50 5 11669-213 PERCENT OF POPULATION (%) 25 0 200 0 50 CURRENT CONSUMPTION (µA) 100 150 200 REFERENCE ACCELERATION (g) Figure 20. Output Linearity over the Dynamic Range Figure 17. Current Consumption at 25°C, 100 Hz Output Data Rate, VS = 2.5 V 160 1.2 1.0 NORMALIZED SENSITIVITY 120 100 80 60 40 0.8 X-AXIS Y-AXIS Z-AXIS 0.6 0.4 0 0 10 1.60 3.12 6.25 12.50 25 50 100 200 400 800 1600 3200 OUTPUT DATA RATE (Hz) 11669-217 0.2 20 11669-214 CURRENT CONSUMPTION (µA) 140 100 FREQUENCY (Hz) Figure 21. Frequency Response Figure 18. Current Consumption vs. Output Data Rate at 25°C, 10 Parts Soldered to PCB, VS = 2.5 V Rev. 0 | Page 9 of 32 1000 ADXL375 Data Sheet THEORY OF OPERATION The ADXL375 is a complete 3-axis acceleration measurement system with a measurement range of ±200 g. It measures both dynamic acceleration resulting from motion or shock and static acceleration, such as gravity. When the device is in standby mode, any register can be written to or read from. It is recommended that the device be configured in standby mode before enabling measurement mode. Clearing the measure bit returns the device to standby mode. The sensor is a polysilicon surface-micromachined structure built on top of a silicon wafer. Polysilicon springs suspend the structure over the surface of the wafer and provide resistance against forces due to applied acceleration. CURRENT CONSUMPTION AND OUTPUT DATA RATE Deflection of the structure is measured using differential capacitors that consist of independent fixed plates and plates attached to the moving mass. Acceleration deflects the proof mass and unbalances the differential capacitor, resulting in a sensor output whose amplitude is proportional to acceleration. Phase sensitive demodulation is used to determine the magnitude and polarity of the acceleration. POWER SEQUENCING Power can be applied to VS or VDD I/O in any sequence without damaging the ADXL375. Table 7 provides a description of all the power modes. The interface voltage level is set using the interface supply voltage, VDD I/O, which must be present to ensure that the ADXL375 does not create a conflict on the communication bus. For single-supply operation, VDD I/O can be the same as the main supply, VS. In a dual-supply application, however, VDD I/O can differ from VS to accommodate the desired interface voltage, as long as VS is greater than or equal to VDD I/O. After VS is applied, the device enters standby mode. In standby mode, power consumption is minimized; the device waits for VDD I/O to be applied and for the command to enter measurement mode. This command can be initiated by setting the measure bit (Bit D3) in the POWER_CTL register (Address 0x2D). The ADXL375 automatically modulates its current consumption in proportion to its output data rate (see Table 6). The device bandwidth and output data rate are specified using the rate bits (Bits[D3:D0]) in the BW_RATE register (Address 0x2C). Table 6. Typical Current Consumption vs. Data Rate (TA = 25°C, VS = 2.5 V, VDD I/O = 1.8 V) Rate Bits 1111 1110 1101 1100 1011 1010 1001 1000 0111 0110 0101 0100 0011 0010 0001 0000 Output Data Rate (Hz) 3200 1600 800 400 200 100 50 25 12.5 6.25 3.13 1.56 0.78 0.39 0.20 0.10 Bandwidth (Hz) 1600 800 400 200 100 50 25 12.5 6.25 3.13 1.56 0.78 0.39 0.20 0.10 0.05 IDD (µA) 145 90 140 140 140 140 90 60 50 40 35 35 35 35 35 35 Table 7. Power Modes Power Mode Power Off VS Off VDD I/O Off Bus Disabled On Off Bus Enabled Standby or Measurement Off On On On Description The device is completely off, but it is still possible for the device to create a conflict on the communication bus. The device is on in standby mode, but communication is unavailable and the device can create a conflict on the communication bus. Minimize the duration of the bus disabled state during power-up to prevent a conflict on the communication bus. No functions are available, but the device does not create a conflict on the communication bus. At power-up, the device is in standby mode, awaiting a command to enter measurement mode, and all sensor functions are off. After the device is instructed to enter measurement mode, all sensor functions are available. Rev. 0 | Page 10 of 32 Data Sheet ADXL375 POWER SAVING MODES FIFO BUFFER Low Power Mode The ADXL375 contains patented technology for an embedded memory management system with a 32-level FIFO buffer that can be used to minimize host processor burden. This buffer has four modes: bypass, FIFO, stream, and trigger. Each mode can be selected by setting the FIFO_MODE bits (Bits[D7:D6]) in the FIFO_CTL register (Address 0x38; see Table 9). A low power mode is available for additional power savings. In low power mode, the internal sampling rate is reduced, allowing for power savings in the 12.5 Hz to 400 Hz data rate range at the expense of slightly greater noise. To enter low power mode, set the LOW_POWER bit (Bit D4) in the BW_RATE register (Address 0x2C). Table 8 shows the current consumption in low power mode for output data rates where there is an advantage to using low power mode. Table 8. Typical Current Consumption vs. Data Rate, Low Power Mode (TA = 25°C, VS = 2.5 V, VDD I/O = 1.8 V) Rate Bits 1100 1011 1010 1001 1000 0111 Output Data Rate (Hz) 400 200 100 50 25 12.5 Bandwidth (Hz) 200 100 50 25 12.5 6.25 IDD (µA) 90 60 50 45 40 35 Table 9. FIFO Modes (FIFO_CTL Register, Address 0x38) Setting D7 D6 0 0 0 1 FIFO Mode Bypass FIFO 1 0 Stream 1 1 Trigger Description FIFO buffer is bypassed. FIFO buffer collects up to 32 samples and then stops collecting data, collecting new data only when the buffer is not full. FIFO buffer holds the last 32 samples. When the buffer is full, the oldest data is overwritten with newer data. FIFO buffer holds the last samples before the trigger event and continues to collect data until full. New data is collected only when the buffer is not full. For data rates not shown in Table 8, the use of low power mode does not provide any advantage over normal power mode. Therefore, it is recommended that low power mode be used only for the data rates shown in Table 8. For an in-depth description of the FIFO buffer and FIFO modes, see the AN-1025 Application Note, Utilization of the First In, First Out (FIFO) Buffer in Analog Devices, Inc., Digital Accelerometers. Autosleep Mode In bypass mode, the FIFO buffer is not operational and, therefore, remains empty. Additional power can be saved if the ADXL375 automatically switches to sleep mode during periods of inactivity. To enable the autosleep mode feature, 1. 2. Set the THRESH_INACT register (Address 0x25) and the TIME_INACT register (Address 0x26) to values that signify inactivity. The appropriate values depend on the application. Set the AUTO_SLEEP bit (Bit D4) and the link bit (Bit D5) in the POWER_CTL register (Address 0x2D). Current consumption at the sub-12.5 Hz data rates that are used in autosleep mode is typically 35 µA for VS = 2.5 V. For information about the advantages of using low power mode vs. autosleep mode, see the Sleep Mode vs. Low Power Mode section. Standby Mode For even lower power operation, standby mode can be used. In standby mode, current consumption is reduced to 0.1 µA (typical). In this mode, no measurements are made, but the contents of the FIFO buffer are preserved. To enter standby mode, clear the measure bit (Bit D3) in the POWER_CTL register (Address 0x2D). Bypass Mode FIFO Mode In FIFO mode, data from measurements of the x-, y-, and z-axes is stored in the FIFO buffer. When the number of samples in the FIFO buffer equals the level specified by the samples bits of the FIFO_CTL register (Address 0x38), the watermark interrupt is set (see the Watermark Bit section). The FIFO buffer continues to accumulate samples until it is full (32 samples from measurements of the x-, y-, and z-axes) and then stops collecting data. After the FIFO buffer stops collecting data, the device continues to operate; therefore, features such as shock detection can be used after the FIFO buffer is full. The watermark interrupt bit remains set until the number of samples in the FIFO buffer is less than the value stored in the samples bits of the FIFO_CTL register. Stream Mode In stream mode, data from measurements of the x-, y-, and z-axes is stored in the FIFO buffer. When the number of samples in the FIFO buffer equals the level specified by the samples bits of the FIFO_CTL register (Address 0x38), the watermark interrupt is set (see the Watermark Bit section). The FIFO buffer continues to accumulate samples; the buffer stores the latest 32 samples from measurements of the x-, y-, and z-axes, discarding older data as new data arrives. The watermark interrupt bit remains set until the number of samples in the FIFO buffer is less than the value stored in the samples bits of the FIFO_CTL register. Rev. 0 | Page 11 of 32 ADXL375 Data Sheet Trigger Mode In trigger mode, the FIFO buffer accumulates samples, storing the latest 32 samples from measurements of the x-, y-, and z-axes. After a trigger event occurs, an interrupt is sent to the INT1 or INT2 pin (determined by the trigger bit in the FIFO_CTL register), and the FIFO_TRIG bit (Bit D7) is set in the FIFO_STATUS register (Address 0x39). The FIFO buffer keeps the last n samples (n is the value specified by the samples bits in the FIFO_CTL register) and then operates in FIFO mode, collecting new samples only when the FIFO buffer is not full. A delay of at least 5 µs must elapse between the occurrence of the trigger event and the start of data readback from the FIFO buffer to allow the buffer to discard and retain the necessary samples. Additional trigger events cannot be recognized until the part is reset to trigger mode. To reset the part to trigger mode, 1. 2. 3. If desired, read data from the FIFO buffer (see the Retrieving Data from the FIFO Buffer section). Before resetting the part to trigger mode, read back the FIFO data; placing the device into bypass mode clears the FIFO buffer. Configure the device for bypass mode by setting Bits[D7:D6] at Address 0x38 to 00. Configure the device for trigger mode by setting Bits[D7:D6] at Address 0x38 to 11. Retrieving Data from the FIFO Buffer When the FIFO buffer operates in FIFO, stream, or trigger mode, FIFO data can be read from the data registers (Address 0x32 to Address 0x37). Each time data is read from the FIFO buffer, the oldest x-, y-, and z-axis data is moved into the DATAX, DATAY, and DATAZ registers. If a single-byte read operation is performed, the remaining bytes of data for the current FIFO sample are lost. Therefore, data for all axes of interest must be read in a burst (multiple-byte) read operation. To ensure that the FIFO buffer is empty (that is, all new data has moved into the data registers), an interval of at least 5 µs must elapse between the end of the readback from the data registers and the start of a new read of the data registers or the FIFO_STATUS register (Address 0x39). The end of a read operation from the data registers is signified by the transition from Register 0x37 to Register 0x38 or by the CS pin going high. When SPI operation is enabled at a frequency of 1.6 MHz or lower, the register addressing portion of the transmission provides a sufficient delay to ensure that the FIFO buffer has completely emptied. When SPI operation is enabled at a frequency higher than 1.6 MHz, the CS pin must be deasserted to ensure a total delay of 5 µs; otherwise, the delay is not sufficient. When SPI operation is enabled at 5 MHz, the total delay necessary is at most 3.4 µs. When I2C mode is enabled on the part, the communication rate is low enough to ensure a sufficient delay between FIFO reads. SELF-TEST The ADXL375 incorporates a self-test feature that effectively tests its mechanical and electronic systems simultaneously. When the self-test function is enabled (via the SELF_TEST bit in the DATA_FORMAT register, Address 0x31), an electrostatic force is exerted on the mechanical sensor. This electrostatic force moves the mechanical sensing element in the same manner as acceleration, and it is additive to the external acceleration experienced by the device. This added electrostatic force results in an output change in the x-, y-, and z-axes. Because the electrostatic force is proportional to VS2, the output change varies with VS. The self-test response in the x- and y-axes exhibits bimodal behavior and, therefore, is not always a reliable indicator of sensor health or potential shift in device sensitivity. For this reason, perform the self-test check in the z-axis. Use of the self-test feature at data rates of less than 100 Hz or at 1600 Hz may yield values outside the limits shown in Figure 16. For the self-test function to operate correctly, the part must be in normal power operation (LOW_POWER bit = 0 in the BW_RATE register, Address 0x2C) and be configured for a data rate from 100 Hz to 800 Hz, or for a data rate of 3200 Hz (see Table 6). For more information about the self-test feature, see the Using Self-Test section. Rev. 0 | Page 12 of 32 Data Sheet ADXL375 INTERRUPTS The ADXL375 provides two output pins for driving interrupts: INT1 and INT2. Both interrupt pins are push-pull, low impedance pins (see Table 10 for output specifications). The default configuration of the interrupt pins is active high. The polarity can be changed to active low by setting the INT_INVERT bit (Bit D5) in the DATA_FORMAT register (Address 0x31). All interrupt functions can be enabled simultaneously, but some functions may need to share the same interrupt pin. ENABLING AND DISABLING INTERRUPTS Interrupts are enabled by setting the appropriate bits in the INT_ENABLE register (Address 0x2E); the interrupt is mapped to the INT1 pin or the INT2 pin based on the contents of the INT_MAP register (Address 0x2F). When the user configures the interrupt pins for the first time, it is recommended that the functions and interrupt mapping be configured before the interrupts are enabled. BITS IN THE INTERRUPT REGISTERS This section describes the interrupts that can be set in the INT_ENABLE register (Address 0x2E) and monitored in the INT_SOURCE register (Address 0x30). For an in-depth description of the FIFO buffer and the interrupt bits, see the AN-1025 Application Note, Utilization of the First In, First Out (FIFO) Buffer in Analog Devices, Inc., Digital Accelerometers. DATA_READY Bit The DATA_READY bit is set when new data is available and is cleared when no new data is available. SINGLE_SHOCK Bit When changing the configuration of an interrupt, follow this procedure. The SINGLE_SHOCK bit is set when a single acceleration event that is greater than the value in the THRESH_SHOCK register (Address 0x1D) occurs for less time than is specified by the DUR register (Address 0x21). For more information, see the Shock Detection section. 1. DOUBLE_SHOCK Bit Disable the interrupt by clearing the bit corresponding to the function in the INT_ENABLE register. Reconfigure the interrupt function. Reenable the interrupt in the INT_ENABLE register. CLEARING INTERRUPTS The DOUBLE_SHOCK bit is set when two acceleration events that are greater than the value in the THRESH_SHOCK register (Address 0x1D) occur for less time than is specified by the DUR register (Address 0x21). The second shock event starts after the time specified by the latent register (Address 0x22) but within the time specified by the window register (Address 0x23). For more information, see the Shock Detection section. The interrupt functions are latched and can be cleared as follows: Activity Bit 1. The activity bit is set when acceleration greater than the value stored in the THRESH_ACT register (Address 0x24) is experienced on any participating axis. Participating axes are specified by the ACT_INACT_CTL register (Address 0x27). 2. 3. Configuration of the functions while the interrupts are disabled helps to prevent the accidental generation of an interrupt. 2. Read the data registers (Address 0x32 to Address 0x37) to clear the data-related interrupts. Read the INT_SOURCE register (Address 0x30) to clear the remaining interrupts. Table 10. Interrupt Pin Digital Output Specifications Parameter DIGITAL OUTPUT Low Level Output Voltage (VOL) High Level Output Voltage (VOH) Low Level Output Current (IOL) High Level Output Current (IOH) PIN CAPACITANCE RISE/FALL TIME Rise Time (tR) 2 Fall Time (tF) 3 Test Conditions/Comments IOL = 300 µA IOH = −150 µA VOL = VOL, MAX VOH = VOH, MIN fIN = 1 MHz, VS = 2.5 V CLOAD = 150 pF Limits based on characterization results; not production tested. Rise time is measured as the transition time from VOL, MAX to VOH, MIN of the interrupt pin. 3 Fall time is measured as the transition time from VOH, MIN to VOL, MAX of the interrupt pin. 1 2 Rev. 0 | Page 13 of 32 Min Limit 1 Max 0.2 × VDD I/O Unit −150 8 V V µA µA pF 210 150 ns ns 0.8 × VDD I/O 300 ADXL375 Data Sheet Inactivity Bit Overrun Bit The inactivity bit is set when acceleration less than the value stored in the THRESH_INACT register (Address 0x25) is experienced for more time than is specified by the TIME_INACT register (Address 0x26) on all participating axes. Participating axes are specified by the ACT_INACT_CTL register (Address 0x27). The maximum value for TIME_INACT is 255 sec. The overrun bit is set when new data replaces unread data. The precise operation of the overrun function depends on the FIFO mode (see the FIFO Buffer section). Watermark Bit • The watermark bit is set when the number of samples in the FIFO buffer equals the value stored in the samples bits (Bits[D4:D0]) of the FIFO_CTL register (Address 0x38). The watermark bit is cleared automatically when the FIFO buffer is read and the FIFO contents return to a value below the value specified by the samples bits. • In bypass mode, the overrun bit is set when new data replaces unread data in the data registers (Address 0x32 to Address 0x37). In FIFO mode, stream mode, and trigger mode, the overrun bit is set when the FIFO buffer is full. The overrun bit is automatically cleared when the FIFO buffer contents are read. Rev. 0 | Page 14 of 32 Data Sheet ADXL375 SERIAL COMMUNICATIONS The ADXL375 supports I2C and SPI digital communications. In both cases, the ADXL375 operates as a slave device. When the CS pin is tied high to VDD I/O, I2C mode is enabled. The CS pin must be tied high to VDD I/O or be driven by an external controller. If the CS pin is left unconnected, the user may not be able to communicate with the part. In SPI mode, the CS pin is controlled by the bus master. In both SPI and I2C modes of operation, ignore data transmitted from the ADXL375 to the master device during writes to the ADXL375. To read or write multiple bytes in a single transmission, the multiple-byte bit (MB in Figure 25 to Figure 27), located after the R/W bit in the first byte transfer, must be set. After the register address byte and the first byte of data, each subsequent set of eight clock pulses causes the ADXL375 to point to the next register for a read or write. This shifting continues until the clock pulses cease and CS is deasserted. To perform reads or writes on different, nonsequential registers, CS must be deasserted between transmissions and the new register must be addressed separately. SPI MODE Figure 25 and Figure 26 show the timing diagrams for 4-wire SPI writes and reads, respectively. Figure 27 shows the timing diagram for 3-wire SPI reads or writes. For correct operation of the part, the logic thresholds and timing parameters in Table 11 and Table 12 must be met at all times. The ADXL375 can be configured for 3-wire SPI mode or 4-wire SPI mode, as shown in Figure 22 and Figure 23. Clearing the SPI bit (Bit D6) in the DATA_FORMAT register (Address 0x31) selects 4-wire mode; setting the SPI bit selects 3-wire mode. The maximum SPI clock speed is 5 MHz with 100 pF maximum loading. The timing scheme requires clock polarity (CPOL) = 1 and clock phase (CPHA) = 1. If power is applied to the ADXL375 before the clock polarity and phase of the host processor are configured, take the CS pin high before changing the clock polarity and phase. When using 3-wire SPI mode, it is recommended that the SDO pin be either pulled up to VDD I/O or pulled down to GND via a 10 kΩ resistor. D OUT SCLK Preventing Bus Traffic Errors D IN/OUT SDO D OUT Figure 22. 3-Wire SPI Connection Diagram PROCESSOR CS D OUT SDI D OUT SDO SCLK D IN D OUT 11669-003 ADXL375 Figure 23. 4-Wire SPI Connection Diagram CS is the serial port enable line and is controlled by the SPI master. This line must go low at the start of a transmission and high at the end of a transmission, as shown in Figure 25 to Figure 27. SCLK is the serial port clock and is supplied by the SPI master. SCLK should idle high during a period of no transmission. In 4-wire SPI mode, SDI and SDO are the serial data input and output, respectively. In 3-wire SPI mode, SDIO functions as both the serial data input and output. Data is updated on the falling edge of SCLK and should be sampled on the rising edge of SCLK. The ADXL375 CS pin is used both for initiating SPI transactions and for enabling I2C mode. When the ADXL375 is used on a SPI bus with multiple devices, its CS pin is held high while the master communicates with the other devices. There may be conditions where a SPI command transmitted to another device looks like a valid I2C command. In this case, the ADXL375 interprets this command as an attempt to communicate in I2C mode and may interfere with other bus traffic. Unless bus traffic can be adequately controlled to ensure that such a condition never occurs, it is recommended that a logic gate be added in front of Pin 13 (SDA/SDI/SDIO), as shown in Figure 24. This OR gate holds the SDA line high when CS is high to prevent SPI bus traffic at the ADXL375 from appearing as an I2C start command. Rev. 0 | Page 15 of 32 ADXL375 CS SDA/SDI/SDIO SDO SCLK PROCESSOR D OUT D IN/OUT D IN D OUT 11669-104 CS SDIO PROCESSOR 11669-004 ADXL375 Use of the 3200 Hz and 1600 Hz output data rates is recommended only with SPI communication speeds greater than or equal to 2 MHz. The 800 Hz output data rate is recommended only with communication speeds greater than or equal to 400 kHz, and the remaining data rates scale proportionally. For example, the minimum recommended communication speed for a 200 Hz output data rate is 100 kHz. Operation at an output data rate above the recommended maximum value may result in undesirable effects on the acceleration data, including missing samples or additional noise. Figure 24. Recommended SPI Connection Diagram When Using Multiple SPI Devices on a Single Bus ADXL375 Data Sheet CS tM tSCLK tDELAY tS tQUIET tCS, DIS SCLK tHOLD W SDI MB A5 tSDO X SDO A0 D7 ADDRESS BITS X D0 tDIS DATA BITS X X X X 11669-017 tSETUP Figure 25. SPI 4-Wire Write Timing Diagram CS tM tSCLK tDELAY tS tCS, DIS tQUIET SCLK tHOLD R SDI MB A5 tSDO X SDO A0 X X tDIS ADDRESS BITS X X X D7 D0 11669-018 tSETUP DATA BITS Figure 26. SPI 4-Wire Read Timing Diagram CS tDELAY tM tSCLK tS tQUIET tCS, DIS SCLK tSETUP SDIO tHOLD R/W tSDO MB A5 A0 D0 DATA BITS 11669-019 ADDRESS BITS D7 NOTES 1. tSDO IS ONLY PRESENT DURING READS. Figure 27. SPI 3-Wire Read/Write Timing Diagram Rev. 0 | Page 16 of 32 Data Sheet ADXL375 Table 11. SPI Digital Input/Output Specifications Parameter DIGITAL INPUT Low Level Input Voltage (VIL) High Level Input Voltage (VIH) Low Level Input Current (IIL) High Level Input Current (IIH) DIGITAL OUTPUT Low Level Output Voltage (VOL) High Level Output Voltage (VOH) Low Level Output Current (IOL) High Level Output Current (IOH) PIN CAPACITANCE 1 Test Conditions/Comments Min Limit 1 Max 0.3 × VDD I/O 0.7 × VDD I/O VS = VDD I/O VS = 0 V 0.1 −0.1 IOL = 10 mA IOH = −4 mA VOL = VOL, MAX VOH = VOH, MIN fIN = 1 MHz, VS = 2.5 V 0.2 × VDD I/O 0.8 × VDD I/O 10 −4 8 Unit V V µA µA V V mA mA pF Limits based on characterization results; not production tested. Table 12. SPI Timing (TA = 25°C, VS = 2.5 V, VDD I/O = 1.8 V) 1 Parameter fSCLK tSCLK tDELAY tQUIET tDIS tCS, DIS tS tM tSETUP tHOLD tSDO tR 4 tF4 Min Limit 2, 3 Max 5 200 5 5 10 150 0.3 × tSCLK 0.3 × tSCLK 5 5 40 20 20 Unit MHz ns ns ns ns ns ns ns ns ns ns ns ns Description SPI clock frequency Mark-space ratio (1/(SPI clock frequency)) for the SCLK input is 40/60 to 60/40 CS falling edge to SCLK falling edge SCLK rising edge to CS rising edge CS rising edge to SDO/SDIO disabled CS deassertion between SPI communications SCLK low pulse width (space) SCLK high pulse width (mark) SDI/SDIO valid before SCLK rising edge SDI/SDIO valid after SCLK rising edge SCLK falling edge to SDO/SDIO output transition SDO/SDIO output high to output low transition SDO/SDIO output low to output high transition The CS, SCLK, SDI, and SDO pins are not internally pulled up or down; they must be driven for proper operation. Limits based on characterization results, with fSCLK = 5 MHz and bus load capacitance of 100 pF; not production tested. 3 The timing values are referred to the input thresholds (VIL and VIH) given in Table 11. 4 Output rise and fall times measured with capacitive load of 150 pF. tR and tF are not shown in Figure 25 to Figure 27. 1 2 Rev. 0 | Page 17 of 32 ADXL375 Data Sheet I2C MODE VDD I/O When the CS pin is tied high to VDD I/O, the ADXL375 is configured for I2C mode. I2C mode requires a simple 2-wire connection, as shown in Figure 28. The ADXL375 conforms to the UM10204 I2C-Bus Specification and User Manual, Rev. 03— 19 June 2007, available from NXP Semiconductors. The ADXL375 supports standard (100 kHz) and fast (400 kHz) data transfer modes if the bus parameters given in Table 13 and Table 14 are met. ADXL375 RP RP PROCESSOR CS SDA D IN/OUT ALT ADDRESS SCL 11669-008 D OUT Figure 28. I2C Connection Diagram (Address 0x53) Single- or multiple-byte reads and writes are supported, as shown in Figure 29. When the ALT ADDRESS pin (Pin 12) is tied high to VDD I/O, the 7-bit I2C address for the device is 0x1D, followed by the R/W bit. In this configuration, the write address is 0x3A, and the read address is 0x3B. An alternate I2C address of 0x53 can be selected by grounding the ALT ADDRESS pin (see Figure 28). In this configuration, the write address is 0xA6, and the read address is 0xA7. Due to communication speed limitations, the maximum output data rate when using 400 kHz I2C mode is 800 Hz, which scales linearly with a change in the I2C communication speed. For example, using I2C mode at 100 kHz limits the maximum ODR to 200 Hz. Operation at an output data rate above the recommended maximum value may result in undesirable effects on the acceleration data, including missing samples or additional noise. Unused pins have no internal pull-up or pull-down resistors; therefore, the CS and ALT ADDRESS pins have no known state or default state if the pins are left floating or unconnected. When using I2C mode, it is required that the CS pin be connected to VDD I/O and that the ALT ADDRESS pin be connected to either VDD I/O or GND. If other devices are connected to the same I2C bus, the nominal operating voltage level of the other devices cannot exceed VDD I/O by more than 0.3 V. External pull-up resistors, RP, are necessary for proper I2C operation (see Figure 28). To ensure proper operation, refer to the UM10204 I2C-Bus Specification and User Manual, Rev. 03—19 June 2007, when selecting pull-up resistor values. SINGLE-BYTE WRITE MASTER START SLAVE ADDRESS + WRITE SLAVE DATA REGISTER ADDRESS ACK ACK STOP ACK MULTIPLE-BYTE WRITE MASTER START SLAVE ADDRESS + WRITE SLAVE DATA REGISTER ADDRESS ACK ACK DATA STOP ACK ACK SINGLE-BYTE READ MASTER START SLAVE ADDRESS + WRITE SLAVE START1 REGISTER ADDRESS ACK SLAVE ADDRESS + READ ACK NACK ACK DATA ACK DATA STOP MULTIPLE-BYTE READ MASTER START SLAVE ADDRESS + WRITE SLAVE ACK SLAVE ADDRESS + READ ACK NACK START IS EITHER A REPEATED START OR A STOP FOLLOWED BY A START. NOTES 1. THE SHADED AREAS REPRESENT WHEN THE DEVICE IS LISTENING. Figure 29. I2C Device Addressing Table 13. I2C Digital Input/Output Specifications Parameter DIGITAL INPUT Low Level Input Voltage (VIL) High Level Input Voltage (VIH) Low Level Input Current (IIL) High Level Input Current (IIH) DIGITAL OUTPUT Low Level Output Voltage (VOL) Low Level Output Current (IOL) PIN CAPACITANCE 1 STOP DATA 11669-033 1THIS START1 REGISTER ADDRESS ACK Test Conditions/Comments Min Limit 1 Max 0.3 × VDD I/O 0.7 × VDD I/O VS = VDD I/O VS = 0 V 0.1 −0.1 VDD I/O < 2 V, IOL = 3 mA VDD I/O ≥ 2 V, IOL = 3 mA VOL = VOL, MAX fIN = 1 MHz, VS = 2.5 V Limits based on characterization results; not production tested. Rev. 0 | Page 18 of 32 0.2 × VDD I/O 400 3 8 Unit V V µA µA V mV mA pF Data Sheet ADXL375 Table 14. I2C Timing (TA = 25°C, VS = 2.5 V, VDD I/O = 1.8 V) Parameter fSCL t1 t2 t3 t4 t5 t6 3, 4, 5 t7 t8 t9 t10 Min Limit 1, 2 Max 400 2.5 0.6 1.3 0.6 100 0 0.6 0.6 1.3 0.9 300 0 t11 300 250 400 Cb Unit kHz µs µs µs µs ns µs µs µs µs ns ns ns ns pF Description SCL clock frequency SCL cycle time SCL high time SCL low time Hold time for start/repeated start condition Data setup time Data hold time Setup time for repeated start condition Setup time for stop condition Bus-free time between a stop condition and a start condition Rise time of SCL and SDA when receiving Rise time of SCL and SDA when receiving or transmitting Fall time of SCL and SDA when receiving Fall time of SCL and SDA when transmitting Capacitive load for each bus line Limits based on characterization results, with fSCL = 400 kHz and a 3 mA sink current; not production tested. The timing values are referred to the input thresholds (VIL and VIH) given in Table 13. 3 t6 is the data hold time that is measured from the falling edge of SCL. It applies to data during the transmission and acknowledge phases. 4 To bridge the undefined region of the falling edge of SCL, a transmitting device must internally provide an output hold time of at least 300 ns for the SDA signal (with respect to VIH, MIN of the SCL signal). 5 The maximum value for t6 must be met only if the device does not stretch the low period (t3) of the SCL signal. The maximum value for t6 is a function of the clock low time (t3), the clock rise time (t10), and the minimum data setup time (t5(MIN)). This value is calculated as t6(MAX) = t3 − t10 − t5(MIN). 1 2 SDA t3 t9 t4 t11 t10 SCL t6 t2 t5 t7 REPEATED START CONDITION Figure 30. I2C Timing Diagram Rev. 0 | Page 19 of 32 t1 t8 STOP CONDITION 11669-034 t4 START CONDITION ADXL375 Data Sheet REGISTER MAP All registers in the ADXL375 are eight bits in length. Table 15. Register Map Address Hex Decimal 0x00 0 0x01 to 0x1C 1 to 28 0x1D 29 0x1E 30 0x1F 31 0x20 32 0x21 33 0x22 34 0x23 35 0x24 36 0x25 37 0x26 38 0x27 39 0x2A 42 0x2B 43 0x2C 44 0x2D 45 0x2E 46 0x2F 47 0x30 48 0x31 49 0x32 50 0x33 51 0x34 52 0x35 53 0x36 54 0x37 55 0x38 56 0x39 57 Register Name DEVID Reserved THRESH_SHOCK OFSX OFSY OFSZ DUR Latent Window THRESH_ACT THRESH_INACT TIME_INACT ACT_INACT_CTL SHOCK_AXES ACT_SHOCK_STATUS BW_RATE POWER_CTL INT_ENABLE INT_MAP INT_SOURCE DATA_FORMAT DATAX0 DATAX1 DATAY0 DATAY1 DATAZ0 DATAZ1 FIFO_CTL FIFO_STATUS Access Type R N/A R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R R/W R/W R/W R/W R R/W R R R R R R R/W R Reset Value 11100101 N/A 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00001010 00000000 00000000 00000000 00000010 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 Rev. 0 | Page 20 of 32 Description Device ID Reserved; do not access Shock threshold X-axis offset Y-axis offset Z-axis offset Shock duration Shock latency Shock window Activity threshold Inactivity threshold Inactivity time Axis enable control for activity and inactivity detection Axis control for single shock/double shock Source of single shock/double shock Data rate and power mode control Power saving features control Interrupt enable control Interrupt mapping control Interrupt source Data format control X-Axis Data 0 X-Axis Data 1 Y-Axis Data 0 Y-Axis Data 1 Z-Axis Data 0 Z-Axis Data 1 FIFO control FIFO status Data Sheet ADXL375 REGISTER DESCRIPTIONS Register 0x25—THRESH_INACT (Read/Write) All registers in the ADXL375 are eight bits in length. The THRESH_INACT register contains the unsigned threshold value for detecting inactivity. The magnitude of the inactivity event is compared with the value in the THRESH_INACT register. The scale factor is 780 mg/LSB. A value of 0 may result in undesirable behavior if the inactivity interrupt is enabled. Register 0x00—DEVID (Read Only) D7 1 D6 1 D5 1 D4 0 D3 0 D2 1 D1 0 D0 1 The read-only DEVID register holds the fixed device ID code of 0xE5 (345 octal). Register 0x1D—THRESH_SHOCK (Read/Write) The THRESH_SHOCK register contains the unsigned threshold value for shock interrupts. The magnitude of the shock event is compared with the value in the THRESH_SHOCK register for shock detection. The scale factor is 780 mg/LSB. A value of 0 may result in undesirable behavior if single shock/double shock interrupts are enabled. Register 0x1E, Register 0x1F, Register 0x20—OFSX, OFSY, OFSZ (Read/Write) The OFSX, OFSY, and OFSZ registers contain user-configured offset adjustments in twos complement format with a scale factor of 1.56 g/LSB. The value stored in the offset registers is automatically added to the acceleration data, and the resulting value is stored in the output data registers (Address 0x32 to Address 0x37). For more information about offset calibration and the use of the offset registers, see the Offset Calibration section. Register 0x21—DUR (Read/Write) The DUR register contains an unsigned time value representing the maximum time that an event must be above the THRESH_ SHOCK threshold to qualify as a shock event. The scale factor is 625 μs/LSB. A value of 0 disables the single shock and double shock functions. Register 0x22—Latent (Read/Write) The latent register contains an unsigned time value representing the wait time from the detection of a shock event to the start of the time window (specified by the window register) during which a possible second shock event can be detected. The scale factor is 1.25 ms/LSB. A value of 0 disables the double shock function. Register 0x23—Window (Read/Write) The window register contains an unsigned time value representing the amount of time after the expiration of the latency time (specified by the latent register) during which a second valid shock can begin. The scale factor is 1.25 ms/LSB. A value of 0 disables the double shock function. Register 0x24—THRESH_ACT (Read/Write) The THRESH_ACT register contains the unsigned threshold value for detecting activity. The magnitude of the activity event is compared with the value in the THRESH_ACT register. The scale factor is 780 mg/LSB. A value of 0 may result in undesirable behavior if the activity interrupt is enabled. Register 0x26—TIME_INACT (Read/Write) The TIME_INACT register contains an unsigned time value representing the amount of time that acceleration must be less than the value in the THRESH_INACT register for inactivity to be detected. The scale factor is 1 sec/LSB. Unlike the other interrupt functions, which use unfiltered output data (see the Threshold Detection and Bandwidth section), the inactivity function uses filtered output data. At least one output sample must be generated for the inactivity interrupt to be triggered. For this reason, the inactivity function may appear to be unresponsive if the TIME_INACT register is set to a value less than the time constant of the output data rate. A value of 0 results in an interrupt when the output data is less than the value in the THRESH_INACT register. The maximum value for TIME_INACT is 255 sec. Register 0x27—ACT_INACT_CTL (Read/Write) D7 ACT AC/DC D3 INACT AC/DC D6 ACT_X enable D2 INACT_X enable D5 ACT_Y enable D1 INACT_Y enable D4 ACT_Z enable D0 INACT_Z enable The ACT_INACT_CTL register selects dc-coupled or ac-coupled operation and selects the axes that participate in activity and inactivity detection. ACT AC/DC and INACT AC/DC Bits A setting of 0 for the ACT AC/DC and INACT AC/DC bits selects dc-coupled operation; a setting of 1 selects ac-coupled operation. In dc-coupled operation, the current acceleration magnitude is compared directly with the values in the THRESH_ ACT and THRESH_INACT registers to determine whether activity or inactivity is detected. In ac-coupled operation for activity detection, the acceleration value at the start of activity detection is taken as a reference value. New samples of acceleration data are then compared to this reference value and, if the magnitude of the difference exceeds the THRESH_ACT value, an activity interrupt is triggered. Similarly, in ac-coupled operation for inactivity detection, a reference value is used for comparison and is updated whenever the device exceeds the inactivity threshold. After the reference value is selected, the device compares the magnitude of the difference between the reference value and the current acceleration with the THRESH_INACT value. If the difference is less than the value in the THRESH_INACT register for the time specified in the TIME_INACT register, the device is considered inactive, and the inactivity interrupt is triggered. Rev. 0 | Page 21 of 32 ADXL375 Data Sheet ACT_x Enable and INACT_x Enable Bits Asleep Bit A setting of 1 for the ACT_x enable and INACT_x enable bits enables x-, y-, or z-axis participation in detecting activity or inactivity. A setting of 0 excludes the selected axis from participation. If all axes are excluded, the function is disabled. For activity detection, all participating axes are logically OR’ed, causing the activity function to be triggered when any participating axis exceeds the activity threshold. For inactivity detection, all participating axes are logically AND’ed, causing the inactivity function to be triggered only if all participating axes are below the inactivity threshold for the specified time. A setting of 1 in the asleep bit indicates that the part is asleep; a setting of 0 indicates that the part is not asleep. This bit toggles only if the device is configured for autosleep. For more information about the autosleep mode, see the AUTO_SLEEP Bit section. Register 0x2A—SHOCK_AXES (Read/Write) D7 0 D3 Suppress D6 0 D2 SHOCK_X enable D5 0 D1 SHOCK_Y enable D4 0 D0 SHOCK_Z enable The SHOCK_AXES register specifies the participation of each of the three axes in single shock/double shock detection. Suppress Bit Setting the suppress bit suppresses double shock detection if acceleration greater than the value in the THRESH_SHOCK register is present during the latency time between shocks. For more information, see the Shock Detection section. SHOCK_x Enable Bits A setting of 1 in the SHOCK_X enable, SHOCK_Y enable, or SHOCK_Z enable bit enables x-, y-, or z-axis participation in shock detection. A setting of 0 excludes the selected axis from participation in shock detection. Register 0x2B—ACT_SHOCK_STATUS (Read Only) D7 0 D3 Asleep D6 ACT_X source D2 SHOCK_X source D5 ACT_Y source D1 SHOCK_Y source D4 ACT_Z source D0 SHOCK_Z source The read-only ACT_SHOCK_STATUS register indicates the first axis involved in an activity or shock event. ACT_x Source and SHOCK_x Source Bits The ACT_x source and SHOCK_x source bits indicate the first axis involved in an activity or shock event. A setting of 1 corresponds to involvement in the event; a setting of 0 corresponds to no involvement. When new data is available, these bits are not cleared but are overwritten by the new data. Read the ACT_SHOCK_STATUS register before clearing the interrupt. Disabling an axis from participation in activity or shock events clears the corresponding source bit in this register when the next activity or single shock/double shock event occurs. Register 0x2C—BW_RATE (Read/Write) D7 0 D6 0 D5 0 D4 LOW_POWER D3 D2 D1 Rate D0 The BW_RATE register configures the device bandwidth and output data rate; this register also enables and disables low power mode. LOW_POWER Bit A setting of 0 in the LOW_POWER bit selects normal operation; a setting of 1 selects reduced power operation, which has somewhat higher noise. For more information, see the Low Power Mode section. Rate Bits The rate bits select the device bandwidth and output data rate (see Table 6 and Table 8). The default value for these bits is 0x0A, which translates to a 100 Hz output data rate. The selected output data rate must be appropriate for the communication protocol and frequency selected. Selecting an output data rate that is too high for the communication speed may result in samples being discarded (for more information, see the Serial Communications section). Register 0x2D—POWER_CTL (Read/Write) D7 0 D6 0 D5 Link D4 AUTO_SLEEP D3 Measure D2 Sleep D1 D0 Wakeup The POWER_CTL register can be used to configure the device for autosleep mode; this register is also used to set the device to measurement mode or standby mode. Link Bit The link bit serially links the activity and inactivity functions. If both the activity and inactivity functions are enabled, a setting of 1 in the link bit delays the start of the activity detection function until inactivity is detected. After activity is detected, inactivity detection begins, preventing the detection of activity. When this bit is set to 0, the inactivity and activity functions are concurrent. For more information about the link feature, see the Link Mode section. Before clearing the link bit, it is recommended that the part be placed in standby mode (set the measure bit, Bit D3, to 0). After clearing the link bit, reset the part to measurement mode (set the measure bit, Bit D3, to 1). This configuration sequence ensures that the device is properly biased if sleep mode is manually disabled; otherwise, the first few samples of data after the link bit is cleared may have additional noise, especially if the device is asleep when the bit is cleared. Rev. 0 | Page 22 of 32 Data Sheet ADXL375 AUTO_SLEEP Bit Table 16. Sampling Rate in Sleep Mode If the link bit is set, a setting of 1 in the AUTO_SLEEP bit enables the autosleep function. In autosleep mode, the ADXL375 automatically switches to sleep mode if the inactivity function is enabled and inactivity is detected (that is, when acceleration is below the THRESH_INACT value for at least the time specified by the TIME_INACT value). If activity detection is also enabled, the ADXL375 automatically wakes up from sleep after detecting activity and returns to operation at the output data rate set in the BW_RATE register. A setting of 0 in the AUTO_SLEEP bit disables automatic switching to sleep mode. If the link bit is not set, the AUTO_SLEEP feature is disabled and setting the AUTO_SLEEP bit has no effect on device operation. For more information about the link feature, see the Link Bit section and the Link Mode section. For more information about autosleep mode, see the Autosleep Mode section. Before clearing the AUTO_SLEEP bit, it is recommended that the part be placed in standby mode (set the measure bit, Bit D3, to 0). After clearing the AUTO_SLEEP bit, reset the part to measurement mode (set the measure bit, Bit D3, to 1). This configuration sequence ensures that the device is properly biased if sleep mode is manually disabled; otherwise, the first few samples of data after the AUTO_SLEEP bit is cleared may have additional noise, especially if the device is asleep when the bit is cleared. Measure Bit A setting of 0 in the measure bit places the part into standby mode; a setting of 1 places the part into measurement mode. The ADXL375 powers up in standby mode with minimum power consumption (see the Power Sequencing section). Sleep Bit A setting of 0 in the sleep bit places the part into the normal mode of operation; a setting of 1 places the part into sleep mode. Sleep mode suppresses the DATA_READY interrupt, stops transmission of data to the FIFO buffer, and switches the sampling rate to the rate specified by the wakeup bits (Bits[D1:D0]). In sleep mode, only the activity function can be used. When the DATA_READY interrupt is suppressed, the output data registers (Register 0x32 to Register 0x37) are still updated at the sampling rate set by the wakeup bits. Before clearing the sleep bit, it is recommended that the part be placed in standby mode (set the measure bit, Bit D3, to 0). After clearing the sleep bit, reset the part to measurement mode (set the measure bit, Bit D3, to 1). Wakeup Bits The wakeup bits control the sampling rate during sleep mode (see Table 16). D1 0 0 1 1 Setting D0 0 1 0 1 Frequency (Hz) 8 4 2 1 Register 0x2E—INT_ENABLE (Read/Write) D7 DATA_READY D3 Inactivity D6 SINGLE_SHOCK D2 0 D5 DOUBLE_SHOCK D1 Watermark D4 Activity D0 Overrun A setting of 1 for any bit in the INT_ENABLE register enables the specified function to generate interrupts; a setting of 0 for any bit in this register prevents the function from generating interrupts. The DATA_READY, watermark, and overrun bits enable only the interrupt output; the functions are always enabled. It is recommended that interrupts be configured in Register 0x2F before their outputs are enabled in this register. For more information about the interrupts, see the Bits in the Interrupt Registers section. Register 0x2F—INT_MAP (Read/Write) D7 DATA_READY D3 Inactivity D6 SINGLE_SHOCK D2 0 D5 DOUBLE_SHOCK D1 Watermark D4 Activity D0 Overrun A setting of 0 for any bit in the INT_MAP register causes the specified interrupt to be sent to the INT1 pin; a setting of 1 for any bit in this register causes the specified interrupt to be sent to the INT2 pin. All selected interrupts for a given pin are OR’ed. Register 0x30—INT_SOURCE (Read Only) D7 DATA_READY D3 Inactivity 1 D6 SINGLE_SHOCK D2 X1 D5 DOUBLE_SHOCK D1 Watermark D4 Activity D0 Overrun X = ignore this bit. A setting of 1 for any bit in the INT_SOURCE register indicates that the specified function has triggered an interrupt; a setting of 0 for any bit in this register indicates that the specified function has not triggered an interrupt. The DATA_READY, watermark, and overrun bits are always set if the corresponding interrupt occurs, regardless of the settings in the INT_ENABLE register; these bits are cleared by reading data from the data registers (Address 0x32 to Address 0x37). The DATA_READY and watermark bits may require multiple reads to be cleared. Other bits, and their corresponding interrupts, are cleared by reading the INT_SOURCE register. Rev. 0 | Page 23 of 32 ADXL375 Data Sheet Register 0x31—DATA_FORMAT (Read/Write) D7 D6 SELF_TEST SPI D5 D4 INT_INVERT 0 D3 1 D2 Justify Register 0x38—FIFO_CTL (Read/Write) D1 1 D0 1 D7 D6 FIFO_MODE D5 Trigger D4 D3 D2 D1 Samples D0 The DATA_FORMAT register controls the presentation of data to Register 0x32 through Register 0x37. The FIFO_CTL register is used to configure the FIFO buffer for the device. For more information, see the FIFO Buffer section. SELF_TEST Bit For an in-depth description of the FIFO buffer, see the AN-1025 Application Note, Utilization of the First In, First Out (FIFO) Buffer in Analog Devices, Inc., Digital Accelerometers. A setting of 1 in the SELF_TEST bit applies a self-test force to the sensor, causing a shift in the output data. A value of 0 disables the self-test force. For more information about the self-test function, see the Self-Test section and the Using Self-Test section. SPI Bit A value of 1 in the SPI bit configures the device for 3-wire SPI mode; a value of 0 configures the device for 4-wire SPI mode. INT_INVERT Bit A value of 0 in the INT_INVERT bit sets the polarity of the interrupt pins to active high; a value of 1 sets the polarity of the interrupt pins to active low. FIFO_MODE Bits These bits set the FIFO mode, as described in Table 17. Table 17. FIFO Modes Setting D7 D6 0 0 0 1 FIFO Mode Bypass FIFO 1 0 Stream 1 1 Trigger Justify Bit A setting of 1 in the justify bit selects left justified (MSB) mode; a setting of 0 selects right justified (LSB) mode with sign extension. Register 0x32 to Register 0x37—DATAX0, DATAX1, DATAY0, DATAY1, DATAZ0, DATAZ1 (Read Only) These six bytes (Register 0x32 to Register 0x37) are each eight bits in length and contain the output data for each axis. • • • Register 0x32 and Register 0x33 contain the output data for the x-axis. Register 0x34 and Register 0x35 contain the output data for the y-axis. Register 0x36 and Register 0x37 contain the output data for the z-axis. The output data is in twos complement format. DATAx0 is the least significant byte, and DATAx1 is the most significant byte (x represents X, Y, or Z). The DATA_FORMAT register (Address 0x31) controls the format of the data. It is recommended that a multiple-byte read of all six registers be performed to prevent a change in data between reads of sequential registers. When using the 3200 Hz or 1600 Hz output data rate, the LSB of the output data-word is always 0. When the data is right justified, the LSB corresponds to Bit D0 of the DATAx0 register; when the data is left justified, the LSB corresponds to Bit D3 of the DATAx0 register. Description FIFO buffer is bypassed. FIFO buffer collects up to 32 samples and then stops collecting data, collecting new data only when the buffer is not full. FIFO buffer holds the last 32 samples. When the buffer is full, the oldest data is overwritten with newer data. FIFO buffer holds the last samples before the trigger event and continues to collect data until full. New data is collected only when the buffer is not full. Trigger Bit A value of 0 in the trigger bit links the trigger event of trigger mode to the INT1 pin, and a value of 1 links the trigger event to the INT2 pin. Samples Bits The function of the samples bits depends on the FIFO mode selected (see Table 18). Entering a value of 0 in the samples bits immediately sets the watermark bit in the INT_SOURCE register, regardless of the FIFO mode selected. Undesirable operation may occur if a value of 0 is used for the samples bits when trigger mode is used. Table 18. Samples Bits Functions FIFO Mode Bypass FIFO Stream Trigger Rev. 0 | Page 24 of 32 Samples Bits Function None. Specifies how many FIFO entries are needed to trigger a watermark interrupt. Specifies how many FIFO entries are needed to trigger a watermark interrupt. Specifies how many FIFO samples are retained in the FIFO buffer before a trigger event. Data Sheet ADXL375 Register 0x39—FIFO_STATUS (Read Only) D7 FIFO_TRIG D6 0 D5 D4 D3 D2 Entries Entries Bits D1 D0 The read-only FIFO_STATUS register indicates whether a trigger event has occurred and reports the number of data values stored in the FIFO buffer. FIFO_TRIG Bit When the FIFO_TRIG bit is set to 1, a trigger event has occurred; when the FIFO_TRIG bit is set to 0, no trigger event has occurred. The entries bits report how many data values are stored in the FIFO buffer. The data stored in the FIFO buffer is accessed by reading the data registers (Address 0x32 to Address 0x37). FIFO reads must be done in burst mode (multiple-byte mode) because each FIFO level is cleared after any read (single- or multiplebyte) of the FIFO buffer. The FIFO buffer stores a maximum of 32 entries, which equates to a maximum of 33 entries available at any given time because an additional entry is available at the output filter of the device. Rev. 0 | Page 25 of 32 ADXL375 Data Sheet APPLICATIONS INFORMATION POWER SUPPLY DECOUPLING SHOCK DETECTION A 1 µF tantalum capacitor (CS) at VS and a 0.1 µF ceramic capacitor (CI/O) at VDD I/O placed close to the ADXL375 supply pins are recommended to adequately decouple the accelerometer from noise on the power supply. If additional decoupling is necessary, a resistor or ferrite bead (no larger than 100 Ω) in series with VS may be helpful. Additionally, increasing the bypass capacitance on VS to a 10 µF tantalum capacitor in parallel with a 0.1 µF ceramic capacitor may also improve noise performance. The shock interrupt function can detect mechanical shock events based on amplitude and pulse width. Figure 33 illustrates the following parameters for a valid single shock event and a valid double shock event. Make sure that the connection from the ADXL375 ground to the power supply ground has low impedance because noise transmitted through ground has an effect similar to noise transmitted through VS. It is recommended that VS and VDD I/O be separate supplies to minimize digital clocking noise on the VS supply. If it is not possible to use separate supplies, additional filtering of the supplies, as previously mentioned, may be necessary. • Shock detection threshold—defined by the THRESH_ SHOCK register (Address 0x1D). Maximum shock duration time (time limit for shocks)— defined by the DUR register (Address 0x21). Shock latency time—defined by the latent register (Address 0x22). The latency time is the waiting period from the end of the first shock until the start of the time window, when a second shock can be detected. Time window for second shock—defined by the window register (Address 0x23). The time window is the interval after the latency time (set by the latent register). Although a second shock must begin after the latency time expires, it need not finish before the end of the time defined by the window register. • • • VDD I/O VS CI/O CS VDD I/O ADXL375 FIRST SHOCK GND CS 11669-016 INTERRUPT CONTROL 3- OR 4-WIRE SPI OR I2C INTERFACE Figure 31. Application Diagram ACCELEROMETERS MOUNTING POINTS INTERRUPTS LATENCY TIME (LATENT) TIME WINDOW FOR SECOND SHOCK (WINDOW) SINGLE SHOCK INTERRUPT DOUBLE SHOCK INTERRUPT Figure 33. Shock Interrupt Function with Valid Single and Double Shocks If only the single shock function is in use, the single shock interrupt is triggered when the acceleration goes below the threshold, as long as the duration time is not exceeded. If both the single and double shock functions are in use, the single shock interrupt is triggered when the double shock event is either validated or invalidated. 11669-036 PCB THRESHOLD (THRESH_SHOCK) TIME LIMIT FOR SHOCKS (DUR) MECHANICAL CONSIDERATIONS FOR MOUNTING Mount the ADXL375 on the PCB in a location close to a hard mounting point of the PCB to the case. Mounting the ADXL375 at an unsupported PCB location, as shown in Figure 32, may result in large, apparent measurement errors due to undampened PCB vibration. Locating the accelerometer near a hard mounting point ensures that any PCB vibration at the accelerometer is above the mechanical sensor resonant frequency of the accelerometer and is, therefore, effectively invisible to the accelerometer. Multiple mounting points, close to the sensor, and/or a thicker PCB also help to reduce the effects of system resonance on the performance of the sensor. SECOND SHOCK ACCELERATION SDA/SDI/SDIO INT1 SDO/ALT ADDRESS SCL/SCLK INT2 11669-037 VS Figure 32. Incorrectly Placed Accelerometers Rev. 0 | Page 26 of 32 Data Sheet ADXL375 Several events invalidate the second shock of a double shock event. • If the suppress bit in the SHOCK_AXES register (Bit D3, Address 0x2A) is set, any acceleration spike above the threshold during the latency time (set by the latent register) invalidates the double shock detection (see Figure 34). INVALIDATES DOUBLE SHOCK IF SUPPRESS BIT SET LATENCY TIME (LATENT) TIME WINDOW FOR SECOND SHOCK (WINDOW) 11669-038 ACCELERATION Every mechanical system has somewhat different shock responses based on the mechanical characteristics of the system. Therefore, some experimentation with values for the DUR, latent, window, and THRESH_SHOCK registers is required. TIME LIMIT FOR SHOCKS (DUR) Figure 34. Double Shock Event Invalid Due to High g Event When the Suppress Bit Is Set • • A double shock event can be invalidated if acceleration above the threshold is detected at the start of the time window for the second shock (set by the window register), resulting in an invalid double shock at the start of this window (see Figure 35). A double shock event can be invalidated if acceleration exceeds the time limit for shocks (set by the DUR register), resulting in an invalid double shock at the end of the DUR time limit for the second shock event (see Figure 35). ACCELERATION INVALIDATES DOUBLE SHOCK AT START OF WINDOW Setting a very low value in the latent, window, or THRESH_ SHOCK register can result in unpredictable responses due to the accelerometer picking up echoes of the shock inputs. After a shock interrupt is received, the first axis to exceed the THRESH_SHOCK level is reported in the ACT_SHOCK_ STATUS register (Address 0x2B). This register is never cleared but is overwritten with new data. THRESHOLD DETECTION AND BANDWIDTH Lower output data rates are achieved by decimating a common sampling frequency inside the device. The activity and single shock/double shock detection functions are performed using undecimated data. Because the bandwidth of the output data varies with the data rate and is lower than the bandwidth of the undecimated data, the high frequency and high g data that is used to determine activity and single shock/double shock events may not be present if the output of the accelerometer is examined. This may result in the triggering of these functions when acceleration data does not appear to meet the conditions set by the user for the corresponding function. LINK MODE The link bit (Bit D5) in the POWER_CTL register (Address 0x2D) can be used to reduce the number of activity interrupts that the processor must service. The link bit configures the device to look for activity only after inactivity. TIME LIMIT FOR SHOCKS (DUR) TIME LIMIT FOR SHOCKS (DUR) LATENCY TIME (LATENT) TIME WINDOW FOR SECOND SHOCK (WINDOW) For proper operation of this feature, the processor must still respond to the activity and inactivity interrupts by reading the INT_SOURCE register (Address 0x30) and, therefore, clearing the interrupts. If an activity interrupt is not cleared, the part cannot enter autosleep mode. The asleep bit (Bit D3) in the ACT_SHOCK_STATUS register (Address 0x2B) indicates whether the part is asleep. INVALIDATES DOUBLE SHOCK AT END OF DUR 11669-039 TIME LIMIT FOR SHOCKS (DUR) ACCELERATION Single shocks, double shocks, or both can be detected by setting the appropriate bits in the INT_ENABLE register (Address 0x2E). Participation of each of the three axes in single shock/double shock detection is controlled by setting the appropriate bits in the SHOCK_AXES register (Address 0x2A). For the double shock function to operate, both the latent and window registers must be set to a nonzero value. Figure 35. Shock Interrupt Function with Invalid Double Shocks Rev. 0 | Page 27 of 32 ADXL375 Data Sheet SLEEP MODE vs. LOW POWER MODE In applications where a low data rate and low power consumption are desired (at the expense of noise performance), it is recommended that low power mode be used. Low power mode preserves the functionality of the DATA_READY interrupt and the FIFO buffer for postprocessing of the acceleration data. To enable low power mode, set the LOW_POWER bit (Bit D4) in the BW_RATE register (Address 0x2C). Sleep mode also provides a low data rate and low power consumption, but it is not intended for data acquisition. However, when sleep mode is used in conjunction with the autosleep and link modes, the part can automatically switch to a low power, low sampling rate mode when inactivity is detected. To prevent the generation of redundant inactivity interrupts, the inactivity interrupt is automatically disabled and the activity interrupt is enabled. To enable autosleep mode, set the AUTO_SLEEP bit (Bit D4) and the link bit (Bit D5) in the POWER_CTL register (Address 0x2D). When the ADXL375 is in sleep mode, the host processor can also be placed into sleep mode or low power mode to save significant system power. When activity is detected, the accelerometer automatically switches back to the original data rate of the application and provides an activity interrupt that can be used to wake up the host processor. Similar to when inactivity occurs, detection of activity events is disabled and detection of inactivity is enabled. OFFSET CALIBRATION Accelerometers are mechanical structures containing elements that are free to move. These moving parts can be very sensitive to mechanical stresses, much more so than solid-state electronics. The 0 g bias, or offset, is an important accelerometer metric because it defines the baseline for measuring acceleration. Additional stresses can be applied during assembly of a system containing an accelerometer. These stresses can come from, but are not limited to, component soldering, board stress during mounting, and application of any compounds on or over the component. If calibration is deemed necessary, it is recommended that it be performed after system assembly to compensate for these effects. A simple method of calibration is to measure the offset while assuming that the sensitivity of the ADXL375 is as specified in Table 1. The offset can then be automatically accounted for by using the built-in offset registers. The result of this calibration is that the data acquired from the data registers already compensates for any offset. In a no-turn or single-point calibration scheme, the part is oriented such that one axis, typically the z-axis, is in the 1 g field of gravity, and the remaining axes, typically the x- and y-axes, are in a 0 g field. The output is then measured by taking the average of a series of samples. The number of samples averaged is selected by the system designer, but a recommended starting point is 0.1 sec worth of data for data rates of 100 Hz or greater—that is, 10 samples at the 100 Hz data rate. For data rates less than 100 Hz, it is recommended that at least 10 samples be averaged. These values are stored as X0g, Y0g, and Z+1g for the 0 g measurements on the xand y-axes and the 1 g measurement on the z-axis, respectively. The values measured for X0g and Y0g correspond to the x- and y-axis offsets, and compensation is performed by subtracting these values from the output of the accelerometer to obtain the actual acceleration, as follows: XACTUAL = XMEAS − X0g YACTUAL = YMEAS − Y0g Because the z-axis measurement is performed in a +1 g field, a no-turn or single-point calibration scheme assumes an ideal sensitivity, SZ, for the z-axis. This value is subtracted from Z+1g to obtain the z-axis offset, which is then subtracted from future measured values to obtain the actual value, as follows: Z0g = Z+1g − SZ ZACTUAL = ZMEAS − Z0g The ADXL375 can automatically compensate the output for offset by using the offset registers (Register 0x1E, Register 0x1F, and Register 0x20). These registers contain an 8-bit, twos complement value that is automatically added to all measured acceleration values; the result is then placed into the data registers. Because the value placed in an offset register is additive, a negative value in the register eliminates a positive offset, and a positive value in the register eliminates a negative offset. The register has a scale factor of 1.56 g/LSB. As with all registers in the ADXL375, the offset registers do not retain the values written into them when power is removed from the part. Power cycling the ADXL375 returns the offset registers to their default value of 0x00. Because the no-turn or single-point calibration method assumes an ideal sensitivity in the z-axis, any error in the sensitivity results in offset error. DATA FORMATTING AT OUTPUT DATA RATES OF 3200 HZ AND 1600 HZ When using the 3200 Hz or 1600 Hz output data rate, the LSB of the output data-word is always 0. When the data is right justified, the LSB corresponds to Bit D0 of the DATAx0 register; when the data is left justified, the LSB corresponds to Bit D3 of the DATAx0 register. Rev. 0 | Page 28 of 32 Data Sheet ADXL375 7. USING SELF-TEST The self-test change is defined as the difference between the acceleration output of an axis with self-test enabled and the acceleration output of the same axis with self-test disabled. Due to device filtering, the output reaches its final value after 4 × τ when enabling or disabling self-test, where τ = 1/(data rate). This definition assumes that the sensor does not move between these two measurements; if the sensor moves, a non-self-test related shift corrupts the test. Proper configuration of the ADXL375 is necessary for an accurate self-test measurement. To configure the part for selftest, follow this procedure. 1. 2. 3. 4. 5. 6. Set the data rate from 100 Hz to 800 Hz, or set the data rate to 3200 Hz by writing to the rate bits (Bits[D3:D0]) in the BW_RATE register (Address 0x2C). Write a value from 0x0A to 0x0D, or write 0x0F to the BW_RATE register. For accurate self-test measurements, configure the part for normal power operation by clearing the LOW_POWER bit (Bit D4) in the BW_RATE register (Address 0x2C). After the part is configured for accurate self-test measurement, retrieve samples of x-, y-, and z-axis acceleration data from the sensor and average them together. The number of samples averaged is selected by the system designer, but a recommended starting point is 0.1 sec worth of data for data rates of 100 Hz or greater—that is, 10 samples at the 100 Hz data rate. Store the averaged values and label them appropriately as the values with self-test disabled, that is, XST_OFF, YST_OFF, and ZST_OFF. Enable self-test by setting the SELF_TEST bit (Bit D7) in the DATA_FORMAT register (Address 0x31). The output requires some time (approximately four samples) to settle after self-test is enabled. After allowing the output to settle, retrieve samples of x-, y-, and z-axis acceleration data and average them together. It is recommended that the same number of samples be taken for the self-test average as was done for the non-self-test average. 8. Store the averaged values and label them appropriately as the values with self-test enabled, that is, XST_ON, YST_ON, and ZST_ON. Disable self-test by clearing the SELF_TEST bit (Bit D7) in the DATA_FORMAT register (Address 0x31). With the stored values for self-test enabled and disabled, the self-test change is as follows: XST = XST_ON − XST_OFF YST = YST_ON − YST_OFF ZST = ZST_ON − ZST_OFF Because the measured output for each axis is expressed in LSBs, XST, YST, and ZST are also expressed in LSBs. These values can be converted to acceleration (g) by multiplying each value by the 49 mg/LSB scale factor. If the self-test change is within the valid range, the test is considered successful. Generally, a part is considered to pass if the minimum magnitude of change is achieved. However, a part that changes by more than the maximum magnitude is not necessarily a failure. The self-test response in the x- and y-axes exhibits bimodal behavior and, therefore, is not always a reliable indicator of sensor health or potential shift in device sensitivity. For this reason, perform the self-test check in the z-axis. Another effective method for using the self-test to verify accelerometer functionality is to toggle the self-test at a certain rate and then perform an FFT on the output. The FFT should have a corresponding tone at the frequency where the self-test was toggled. Using an FFT in this way removes the dependency of the test on supply voltage and self-test magnitude, which can vary within a rather wide range. Rev. 0 | Page 29 of 32 ADXL375 Data Sheet AXES OF ACCELERATION SENSITIVITY AZ AX 11669-021 AY Figure 36. Axes of Acceleration Sensitivity (Corresponding Output Voltage Increases When Accelerated Along the Sensitive Axis) XOUT = 1g YOUT = 0g ZOUT = 0g TOP TOP TOP GRAVITY XOUT = 0g YOUT = 1g ZOUT = 0g XOUT = –1g YOUT = 0g ZOUT = 0g XOUT = 0g YOUT = 0g ZOUT = 1g Figure 37. Output Response vs. Orientation to Gravity Rev. 0 | Page 30 of 32 XOUT = 0g YOUT = 0g ZOUT = –1g 11669-022 TOP XOUT = 0g YOUT = –1g ZOUT = 0g Data Sheet ADXL375 LAYOUT AND DESIGN RECOMMENDATIONS Figure 38 shows the recommended printed wiring board land pattern. 3.3400 1.0500 0.5500 0.2500 3.0500 11669-014 5.3400 0.2500 1.1450 Figure 38. Recommended Printed Wiring Board Land Pattern (Dimensions shown in millimeters) PACKAGE INFORMATION 375B #yww vv v v CNTY 11669-102 Figure 39 and Table 19 provide information about the package branding for the ADXL375. Figure 39. Product Information on Package (Top View) Table 19. Package Branding Information Branding Key 375B # yww vvvv CNTY Field Description Part identifier for the ADXL375 RoHS-compliant designation Date code Factory lot code Country of origin Rev. 0 | Page 31 of 32 ADXL375 Data Sheet OUTLINE DIMENSIONS PAD A1 CORNER 3.00 BSC 0.49 BOTTOM VIEW 13 14 0.813 × 0.50 1 0.80 BSC 5.00 BSC 0.50 8 TOP VIEW END VIEW 6 1.01 0.79 0.74 0.69 0.49 1.50 03-16-2010-A 1.00 0.95 0.85 7 SEATING PLANE Figure 40. 14-Terminal Land Grid Array [LGA] (CC-14-1) Dimensions shown in millimeters ORDERING GUIDE Model 1 ADXL375BCCZ ADXL375BCCZ-RL ADXL375BCCZ-RL7 EVAL-ADXL375Z EVAL-ADXL375Z-M Temperature Range −40°C to +85°C −40°C to +85°C −40°C to +85°C −40°C to +85°C Measurement Range (g) ±200 ±200 ±200 Specified Voltage (V) 2.5 2.5 2.5 EVAL-ADXL375Z-S 1 Package Description 14-Terminal Land Grid Array [LGA] 14-Terminal Land Grid Array [LGA] 14-Terminal Land Grid Array [LGA] Evaluation Board Inertial Sensor Evaluation System, Includes ADXL375 Satellite ADXL375 Satellite, Standalone (can be used with other inertial sensor evaluation systems) Z = RoHS Compliant Part. I2C refers to a communications protocol originally developed by Philips Semiconductors (now NXP Semiconductors). ©2013 Analog Devices, Inc. All rights reserved. Trademarks and registered trademarks are the property of their respective owners. D11669-0-8/13(0) Rev. 0 | Page 32 of 32 Package Option CC-14-1 CC-14-1 CC-14-1