文档库 最新最全的文档下载
当前位置:文档库 › MMA8652FCR1

MMA8652FCR1

MMA8652FCR1
MMA8652FCR1

Freescale Semiconductor Document Number: MMA8652FC

Data Sheet: Product Preview

Rev. 0, 08/2012

? 2012 Freescale Semiconductor, Inc. All rights reserved.

This document contains information on a new product. Specifications and information herein are subject to change without notice.

Xtrinsic MMA8652FC 3-Axis, 12-bit Digital Accelerometer

The MMA8652FC is an intelligent, low-power, three-axis, capacitive

micromachined accelerometer with 12 bits of resolution. This accelerometer is packed with embedded functions with flexible user programmable options, configurable to two interrupt pins. Embedded interrupt functions enable overall power savings, by relieving the host processor from continuously polling data. There is access to either low-pass or high-pass filtered data, which minimizes the data analysis required for jolt detection and faster transitions. The device can be configured to generate inertial wake-up interrupt signals from any combination of the configurable embedded functions, enabling the MMA8652FC to monitor inertial events and to remain in a low-power mode during periods of inactivity . The MMA8652FC is available in a small 10-pin DFN package (2 mm x 2 mm x 1 mm).

Features

? 1.95V to 3.6V supply voltage ? 1.62V to 3.6V digital interface voltage

?±2g, ±4g, and ±8g dynamically selectable full-scale ranges ?Output Data Rates (ODR) from 1.56 Hz to 800 Hz ?12-bit digital output

?I 2C digital output interface with programmable interrupts

?Four embedded channels of configurable motion detection (Freefall, Motion, Pulse, Transient)

?Orientation (Portrait/Landscape) detection with programmable hysteresis ?Automatic ODR change triggered by the Auto-Wake / Sleep state change ?32-sample FIFO

?High-Pass Filter Data available per sample and through the FIFO ?Self-T est

Typical Applications

?eCompass applications tilt compensation

?Static orientation detection (Portrait/Landscape, Up/Down, Left/Right, Back/Front position identification)?Notebook, eReader, and Laptop Tumble and Freefall Detection

?Real-time orientation detection (virtual reality and gaming 3D user position feedback)

?Real-time activity analysis (pedometer step counting, freefall drop detection for HDD, dead-reckoning GPS backup)?Motion detection for portable product power saving (Auto-SLEEP and Auto-WAKE for cell phone, PDA, GPS, gaming)?Shock and vibration monitoring (mechatronic compensation, shipping and warranty usage logging)?

User interface (menu scrolling by orientation change, tap detection for button replacement)

ORDERING INFORMATION

Part Number Temperature Range Package Description

Shipping MMA8652FCR1

-40°C to +85°C

DFN-10

Tape and Reel

MMA8652FC

Top View

Pin Connections

VDD SCL INT1BYP INT2

SDA GND GND

VDDIO GND

12345

109

87

6 MMA8652FC 10-PIN DFN

2 mm x 2 mm x 1 mm

CASE 2162

Top and Bottom View

Feature comparison of the MMA865xFC devices

Feature List MMA8652FC MMA8653FC Digital Resolution (Bits)1210 Digital Sensitivity in 2g mode (Counts/g)1024256 Low-Power Mode Yes Yes Auto-WAKE Yes Yes Auto-SLEEP Yes Yes

32-Level FIFO Yes No

Low-Pass Filter Yes Yes High-Pass Filter Yes No Transient Detection with High-Pass Filter Yes No Orientation Detection Portrait to Landscape = 30°, Landscape to Portrait = 60°, and Fixed 45° Threshold Yes Yes Programmable Orientation Detection Yes No Data-Ready Interrupt Yes Yes Single-Tap Interrupt Yes No Double-Tap Interrupt Yes No Directional Tap Interrupt Yes No Freefall Interrupt Yes Yes Motion Interrupt with Direction Yes No

MMA8652FC

Sensors

Contents

1Block Diagram and Pin Descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

1.1Block diagram. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

1.2Pin descriptions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

1.3Orientation definitions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

1.4Recommended application diagram. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 2Mechanical and Electrical Specifications. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

2.1Absolute maximum ratings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

2.2Mechanical characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

2.3Electrical characteristics. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

2.4I2C interface characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 3Terminology . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

3.1Sensitivity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

3.2Zero-g offset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

3.3Self-Test . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 4Modes of Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 5Functionality . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

5.1Device calibration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

5.28-bit or 12-bit data. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

5.3Internal FIFO data buffer. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

5.4Low power modes vs. high resolution modes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

5.5Auto-WAKE/SLEEP mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

5.6Freefall and motion detection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

5.7Transient detection. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

5.8Tap detection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

5.9Orientation detection. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

5.10Interrupt register configurations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

5.11Serial I2C interface. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 6Register Descriptions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

6.1Register quick jump table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

6.2Register address map. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

6.3Register summary. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24

6.4Data registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26

6.5FIFO registers. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

6.6System status and ID registers. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32

6.7Data configuration registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36

6.8Portrait/Landscape configuration and status registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38

6.9Freefall/Motion configuration and status registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43

6.10Transient configuration and status registers. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49

6.11Pulse configuration and status registers. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53

6.12Auto-WAKE/SLEEP register. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59

6.13System and control registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61

6.14Data calibration registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68 7Mounting Guidelines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69

7.1Overview of soldering considerations. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69

7.2Halogen content . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69

7.3PCB mounting/soldering recommendations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69 8Tape and Reel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71

8.1Tape dimensions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71

8.2Device orientation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71 9Package Dimensions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72 10Revision History . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76

MMA8652FC Sensors

MMA8652FC Sensors

1

Block Diagram and Pin Descriptions

1.1

Block diagram

Figure 1. Block diagram

SDA SCL

VDDIO

Auto-WAKE/SLEEP

ACTIVE Mode

SLEEP

INT1INT2

MODE Options Low Power

Low Noise + Power High Resolution Normal

MODE Options Low Power

Low Noise + Power High Resolution Normal

ACTIVE Mode

WAKE

MMA8652FC

Sensors

1.2Pin descriptions

Figure 2. Direction of the detectable accelerations

1.3Orientation definitions

Figure 3 shows the device configuration in the 6 different orientation modes. There are several registers to configure the orientation detection and are described in detail in the register setting section.

Figure 3. Landscape/Portrait orientation

Direction of the

Detectable Accelerations

(Bottom View)

(Top View)156

10VDD SCL INT1BYP

INT2

SDA GND VDDIO GND

GND PU = Portrait Up

LR = Landscape Right PD = Portrait Down LL = Landscape Left

MMA8652FC Sensors

1.4Recommended application diagram

Figure 4. Application diagram

Table 1. Pin descriptions

Pin #Pin Name Description

Notes

1

VDD

Power supply

Device power is supplied through the VDD line. Power supply decoupling capacitors should be placed as near as possible to the pins 1 and 8 of the device.

2SCL

I 2C Serial Clock

7-bit I 2C device address is 0x1D.

The control signals SCL and SDA are not tolerant of voltages more than VDDIO + 0.3V. If VDDIO is removed, then the control signals SCL and SDA will clamp any logic signals with their internal ESD protection diodes. The SDA and SCL I 2C connections are open drain, and therefore usually require a pullup resistor.3INT1Interrupt 1

The interrupt source and pin settings are user-programmable through the I 2C interface.

4BYP Internal regulator output capacitor connection 5INT2Interrupt 2See INT1.

6GND Ground 7GND Ground

8VDDIO Digital Interface Power supply 9GND Ground 10

SDA

I 2C Serial Data

See SCL.

VDD

SCL

INT1

BYP

INT2

SDA

VDDIO

1

2109

876

MMA8652FC

0.1 μF

1 μF

0.1 μF

3

45

Top View

VDDIO

VDDIO

1 k Ω

1 k Ω

Note: 1 k Ω pullup resistors on INT1/INT2

are only needed for open-drain.

.1 μF

MMA8652FC

Sensors

2

Mechanical and Electrical Specifications

2.1

Absolute maximum ratings

Stresses above those listed as “absolute maximum ratings” may cause permanent damage to the device. Exposure to maximum rating conditions for extended periods may affect device reliability.

Table 2. Maximum ratings

Rating

Symbol Value Unit Maximum acceleration (all axes, 100 μs)g max 10,000g Supply voltage

VDD -0.3 to + 3.6V Input voltage on any control pin (SCL, SDA)Vin -0.3 to VDDIO + 0.3

V Drop Test

D drop 1.8m Operating Temperature Range T OP -40 to +85°C Storage Temperature Range

T STG

-40 to +125

°C

Table 3. ESD and latch-up protection characteristics

Rating

Symbol Value Unit Human Body Model HBM ±2000V Machine Model MM ±200V Charge Device Model CDM ±500V Latch-up Current at T = 85°C

±100

mA

cause the part to otherwise fail.

This device is sensitive to mechanical shock. Improper handling can cause permanent damage of the part or This part is ESD-sensitive. Improper handling can cause permanent damage to the part.

MMA8652FC Sensors

Parameter

Test Conditions Symbol

Min

Typ Max

Unit

Measurement Range

FS[1:0] set to 00

2g Mode

FS

±2

g

FS[1:0] set to 01

4g Mode ±4FS[1:0] set to 10

8g Mode ±8Sensitivity

FS[1:0] set to 00

2g Mode

So

1024

counts/g

FS[1:0] set to 01

4g Mode 512FS[1:0] set to 10

8g Mode

256

Sensitivity Accuracy

Soa

±2.64

%Sensitivity Change vs. Temperature

FS[1:0] set to 00

2g Mode

TCSo ±0.04%/°C

FS[1:0] set to 01

4g Mode FS[1:0] set to 10

8g Mode

Zero-g Level Offset Accuracy (1)

1.Before board mount.

FS[1:0] 2g, 4g, 8g TyOff ±40mg Zero-g Level Offset Accuracy Post-Board Mount (2)2.Post-board mount offset specifications are based on an 8-layer PCB, relative to 25°C. FS[1:0] 2g, 4g, 8g TyOffPBM ±60mg Zero-g Level Change vs. Temperature -40°C to 85°C TCOff

±0.3

mg/°C

Self-Test Output Change (3)X Y Z

3.Self-Test is one direction only.

FS[1:0] set to 04g Mode

Vst 505050LSB

ODR Accuracy 2 MHz Clock

-20

+20%Output Data Bandwidth BW

ODR/3

ODR/2

Hz Output Noise

Normal Mode ODR = 400 Hz Noise 216

μg/√Hz Operating Temperature Range Top

-40

+85

°C Package weight

TBD

g

MMA8652FC

Sensors

Parameter

Test Conditions

Symbol Min Typ Max Unit Supply Voltage

VDD (1)1.There is no requirement for power supply sequencing. The VDDIO input voltage can be higher than the VDD input voltage.

1.95

2.5

3.6V Interface Supply Voltage

VDDIO (1)

1.62 1.8

3.6

V

Low Power Mode ODR = 1.56 Hz I dd LP

6μA

ODR = 12.5 Hz 6ODR = 50 Hz

14

ODR = 100 Hz 24ODR = 200 Hz 44ODR = 400 Hz 85ODR = 800 Hz 165Normal Mode ODR = 1.56 Hz I dd

24μA

ODR = 12.5 Hz 24ODR = 50 Hz

24

ODR = 100 Hz 44ODR = 200 Hz 85ODR = 400 Hz 165ODR = 800 Hz

165

Current during Boot Sequence,

0.5 mSec max duration using recommended Bypass Cap

VDD = 2.5V Idd Boot 1mA Value of Capacitor on BYP Pin -40°C to 85°C

Cap 75

100470nF

STANDBY Mode Current at 25°C

VDD = 2.5V, VDDIO = 1.8V

STANDBY Mode I dd Stby 1.85μA STANDBY Mode Current over temperature range

VDD = 2.5V, VDDIO = 1.8V

STANDBY Mode

I dd Stby TBD

TBD

μA

Digital High Level Input Voltage

SCL, SDA VIH 0.75*VDDIO

V Digital Low Level Input Voltage

SCL, SDA VIL

0.3*VDDIO

V High Level Output Voltage

INT1, INT2I O = 500 μA VOH 0.9*VDDIO

V Low Level Output Voltage

INT1, INT2I O = 500 μA VOL 0.1*VDDIO V Low Level Output Voltage

SDA I O = 500 μA VOLS 0.1*VDDIO

V

Output Source Current

Voltage high level VOUT = 0.75 x VDD,

VDD = 2.5V I source

3mA

Output Sink Current Voltage high level VOUT = 0.25 x VDD,

VDD = 2.5V

I sink 3mA Power-on Ramp Time

Tpu

0.001

1000ms Time from VDDIO on and VDD > Vmin until I 2C is ready for operation

Cbyp = 100 nF BT 350

500μs Turn-on time

(STANDBY to first sample available) Ton 2/ODR + 1(2) ms Turn-on time

(Power down to first sample available)

Ton

2/ODR + 2(2)

ms

2.Note that the first sample is typically not very precise; only the second or third or fourth sample (depending on ODR/MODS settings) has full

precision.

2.4I2C interface characteristics

Table6. I2C slave timing values(1)

3Terminology

3.1Sensitivity

The sensitivity is represented in counts/g.

?In 2g mode, sensitivity = 1024 counts/g.

?In 4g mode, sensitivity = 512 counts/g.

?In 8g mode, sensitivity = 256 counts/g.

3.2Zero-g offset

Zero-g Offset (TyOff) describes the deviation of an actual output signal from the ideal output signal if the sensor is stationary. A sensor stationary on a horizontal surface will measure 0g in X-axis and 0g in Y-axis, whereas the Z-axis will measure 1g. The output is ideally in the middle of the dynamic range of the sensor (content of OUT Registers 0x00, data expressed as a 2's complement number). A deviation from ideal value in this case is called Zero-g offset.

Offset is to some extent a result of stress on the MEMS sensor, and therefore the offset can slightly change after mounting the sensor onto a printed circuit board or after exposing it to extensive mechanical stress.

3.3Self-Test

Self-T est can be used to verify the transducer and signal chain functionality without the need to apply external mechanical stimulus.

When Self-T est is activated:

?An electrostatic actuation force is applied to the sensor, simulating a small acceleration. In this case, the sensor outputs will exhibit a change in their DC levels which, are related to the selected full scale through the device sensitivity.

?The device output level is given by the algebraic sum of the signals produced by the acceleration acting on the sensor and by the electrostatic test-force.

MMA8652FC Sensors

MMA8652FC Sensors

4Modes of Operation

Figure 6. Operating modes for MMA8652FC

Some registers are reset when transitioning from STANDBY to ACTIVE. These registers are all noted in the device memory map register table.

The SLEEP and WAKE modes are ACTIVE modes. For more information about how to use the SLEEP and WAKE modes and how to transition between these modes, see Section 5, “Functionality”.

Table 7. Operating modes

Mode I 2C Bus State

VDD

VDDIO

Description

OFF

Powered Down

<1.8V VDDIO Can be > VDD

?The device is powered off.

?All analog and digital blocks are shutdown. ?

I 2C bus inhibited.

STANDBY

I 2C communication with MMA8652FC is possible ON

VDDIO = High VDD = High

ACTIVE bit is cleared ?Only digital blocks are enabled.?Analog subsystem is disabled. ?Internal clocks disabled.

ACTIVE (WAKE/SLEEP)

I 2C communication with MMA8652FC is possible

ON

VDDIO = High VDD = High

ACTIVE bit is set

All blocks are enabled (digital, analog).

SLEEP

WAKE

STANDBY

OFF

ACTIVE

5Functionality

The MMA8652FC is a low-power, digital output 3-axis linear accelerometer with a I2C interface, and has embedded logic that is used to detect events and notify an external microprocessor over interrupt lines.

?8-bit or 12-bit data, high-pass filtered data, 8-bit or 12-bit configurable 32-sample FIFO

?Four different oversampling options that allow for the optimum resolution vs. current consumption trade-off to be made for a given application

?Low power and auto-WAKE/SLEEP modes for reducing current consumption

?Single/double tap with directional information (1 channel)

?Motion detection with directional information or Freefall (1 channel)

?Transient/jolt detection based on a high-pass filter, with a settable threshold for detecting the change in acceleration above

a threshold with directional information (1 channel)

?Flexible user-configurable portrait landscape detection algorithm, for addressing many use cases for screen orientation ?Two independent interrupt output pins that are programmable among 7 interrupt sources (Data Ready, Motion/Freefall, Tap, Orientation, Transient, FIFO and Auto-WAKE)

All functionality is available in 2g, 4g or 8g dynamic measurement ranges. There are many configuration settings for enabling all of the different functions. Separate application notes are available to help configure the device for each embedded functionality. 5.1Device calibration

The device is factory calibrated for sensitivity and Zero-g offset for each axis. The trim values are stored in Non-Volatile Memory (NVM). On power-up, the trim parameters are read from NVM and applied to the circuitry. In normal use, further calibration in the end application is not necessary. However, the MMA8652FC allows you to adjust the offset for each axis after power-up, by changing the default offset values. The user offset adjustments are stored in 3 volatile 8-bit registers (OFF_X, OFF_Y, OFF_Z).

5.28-bit or 12-bit data

The measured acceleration data is stored in the following registers as 2’s complement 12-bit numbers:

?OUT_X_MSB, OUT_X_LSB

?OUT_Y_MSB, OUT_Y_LSB

?OUT_Z_MSB, OUT_Z_LSB

The most significant 8-bits of each axis are stored in OUT_X (Y, Z)_MSB, so applications needing only 8-bit results can use these 3 registers (and ignore the OUT_X/Y/Z_LSB registers). To do this (use only 8-bit results), the F_READ bit in CTRL_REG1 must be set. When the F_READ bit is cleared, the fast read mode is disabled.

?When the full-scale is set to 2g, the measurement range is -2g to +1.999g, and each count corresponds to (1/1024)g

(0.98mg) at 12-bits resolution.

?When the full-scale is set to 4g, the measurement range is -4g to +3.998g, and each count corresponds to (1/512)g ?(1.96mg) at 12-bits resolution.

?When the full-scale is set to 8g, the measurement range is -8g to +7.996g, and each count corresponds to (1/256)g (3.9 mg) at 12-bits resolution.

?If only the 8-bit results are used, then the resolution is reduced by a factor of 16.

For more information about the data manipulation between data formats and modes, see application note AN4083, Data Manipulation and Basic Settings for Xtrinsic MMA865xFC Accelerometers. There is a device driver available that can be used with the Sensor T oolbox demo board (LFSTBEB865xFC) with this application note.

Table8. Accelerometer 12-bit output data

12-bit data Range ±2g (1 mg)Range ±4g (2 mg)Range ±8g (4 mg)

0111 1111 1111 1.999g+3.998g+7.996g

0111 1111 1110 1.998g+3.996g+7.992g

…………

0000 0000 00010.001g+0.002g+0.004g

0000 0000 00000.0000g0.0000g0.0000g

1111 1111 1111-0.001g-0.002g-0.004g

…………

MMA8652FC Sensors

Table8. Accelerometer 12-bit output data (Continued)

12-bit data Range ±2g (1 mg)Range ±4g (2 mg)Range ±8g (4 mg)

1000 0000 0001-1.999g-3.998g-7.996g

1000 0000 0000-2.0000g-4.0000g-8.0000g

Table9. Accelerometer 8-bit output data

8-bit Data Range ±2g (15.6 mg)Range ±4g (31.25 mg)Range ±8g (62.5 mg)

0111 1111 1.9844g+3.9688g+7.9375g

0111 1110 1.9688g+3.9375g+7.8750g

…………

0000 0001+0.0156g+0.0313g+0.0625g

0000 00000.000g0.0000g0.0000g

1111 1111-0.0156g-0.0313g-0.0625g

…………

1000 0001-1.9844g-3.9688g-7.9375g

1000 0000-2.0000g-4.0000g-8.0000g

5.3Internal FIFO data buffer

MMA8652FC contains a 32-sample internal FIFO data buffer, which helps minimize traffic across the I2C bus. The FIFO can also save system power, by allowing the host processor/MCU to go into a SLEEP mode while the accelerometer independently stores the data (up to 32 samples per axis).

The FIFO can run at all output data rates. There are options for accessing the full 12-bit data or for accessing only the 8-bit data. When access speed is more important than high resolution, the 8-bit data read is a better option.

The FIFO contains 4 modes (Fill Buffer mode, Circular Buffer mode, Trigger mode, and Disabled mode), which are described in F_SETUP Register 0x09.

?Fill Buffer mode collects the first 32 samples and asserts the overflow flag when the buffer is full and another sample arrives.

It does not collect any more data until the buffer is read. This benefits data logging applications where all samples must be collected.

?Circular Buffer mode allows the buffer to be filled and then new data replaces the oldest sample in the buffer. The most recent

32 samples will be stored in the buffer. This benefits situations where the processor is waiting for an specific interrupt to signal

that the data must be flushed to analyze the event.

?Trigger mode will hold the last data up to the point when the trigger occurs, and can be set to keep a selectable number of samples after the event occurs.

The MMA8652FC FIFO Buffer has a configurable watermark, allowing the processor to be triggered after a configurable number of samples has filled in the buffer (1 to 32).

5.4Low power modes vs. high resolution modes

The MMA8652FC can be optimized for lower power modes or for higher resolution of the output data. One of the oversampling schemes of the data can activated when MODS = 10 in Register 0x2B, which will improve the resolution of the output data only. The highest resolution is achieved at 1.56 Hz.

There is a trade-off between low power and high resolution. Low power can be achieved when the oversampling rate is reduced. When MODS = 11, the lowest power is achieved. The lowest power is achieved when the sample rate is set to 1.56 Hz.

5.5Auto-WAKE/SLEEP mode

The MMA8652FC can be configured to transition between sample rates (with their respective current consumption) based on four of the interrupt functions of the device. The advantage of using the Auto-WAKE/SLEEP is that the system can automatically transition to a higher sample rate (higher current consumption) when needed, but spends the majority of the time in the SLEEP mode (lower current) when the device does not require higher sampling rates.

?Auto-WAKE refers to the device being triggered by one of the interrupt functions to transition to a higher sample rate. This may also interrupt the processor to transition from a SLEEP mode to a higher power mode.

MMA8652FC

Sensors

?SLEEP mode occurs after the accelerometer has not detected an interrupt for longer than the user-definable timeout period.

The device will transition to the specified lower sample rate. It may also alert the processor to go into a lower power mode, to save on current during this period of inactivity.

The Interrupts that can WAKE the device from SLEEP are the following: T ap Detection, Orientation Detection, Motion/Freefall, and Transient Detection. The FIFO can be configured to hold the data in the buffer until it is flushed, if the FIFO Gate bit is set (in Register 0x2C) and if the FIFO cannot WAKE the device from SLEEP.

The interrupts that can keep the device from falling asleep are the same interrupts that can wake the device—with the addition of the FIFO. If the FIFO interrupt is enabled and data is being accessed continually servicing the interrupt, then the device will remain in WAKE mode.

5.6Freefall and motion detection

MMA8652FC has flexible interrupt architecture for detecting either a Freefall or a Motion.

?Freefall can be enabled where the set threshold must be less than the configured threshold.

?Motion can be enabled where the set threshold must be greater than the configured threshold.

The motion configuration has the option of enabling or disabling a high-pass filter to eliminate tilt data (static offset); the freefall configuration does not use the high-pass filter.

5.6.1Freefall detection

The detection of “Freefall” involves the monitoring of the X, Y, and Z axes for the condition where the acceleration magnitude is below a user-specified threshold for a user-definable amount of time. The usable threshold ranges are normally between

±100mg and ±500mg.

5.6.2Motion detection

Motion is often used to simply alert the main processor that the device is currently in use. When the acceleration exceeds a set threshold, the motion interrupt is asserted. A motion can be a fast moving shake or a slow moving tilt. This will depend on the threshold and timing values configured for the event.

?The motion detection function can analyze static acceleration changes or faster jolts. For example, to detect that an object is spinning, all three axes would be enabled with a threshold detection of > 2g. This condition would need to occur for a minimum of 100ms to ensure that the event was not just noise. The timing value is set by a configurable debounce counter.

The debounce counter acts like a filter to determine whether the condition exists for configurable set of time (like 100ms or longer).

?To detect the direction of the motion, there is also directional data available in the source register. This is useful for applications such as directional shake or flick, which assists with the algorithm for various gesture detections.

5.7Transient detection

The MMA8652FC has a built-in high pass filter. Acceleration data goes through the high pass filter, eliminating the offset (DC) and low frequencies. The high pass filter cutoff frequency can be set to 4 different frequencies, which depends on the Output Data Rate (ODR). A higher cutoff frequency ensures that the DC data (or slower moving data) will be filtered out, allowing only the higher frequencies to pass. The embedded Transient detection function uses the high-pass filtered data, allowing you to set the threshold and debounce counter. The transient detection feature can be used in the same manner as the motion detection feature, by bypassing the high-pass filter. There is an option in the configuration register to do this, which adds more flexibility to accommodate various use cases.

Many applications use the accelerometer’s static acceleration readings (like tilt), which measure the change in acceleration due to gravity only. These functions benefit from acceleration data being filtered with a low-pass filter where high frequency data is considered noise. However, there are many functions where the accelerometer must analyze dynamic acceleration. Functions such as tap, flick, shake and step counting are based on the analysis of the change in the acceleration. It is simpler to interpret these functions (which are dependent on dynamic acceleration data) when the static component has been removed.

The Transient Detection function can be routed to either interrupt pin through bit 5 in CTRL_REG5 register (0x2E). Registers

0x1D – 0x20 are the dedicated Transient Detection configuration registers. The source register contains directional data to determine the direction of the acceleration (either positive or negative).

5.8Tap detection

The MMA8652FC has embedded single/double and directional tap detection.

MMA8652FC Sensors

MMA8652FC Sensors

?The tap detection function has various customizing timers, for setting the pulse time width and the latency time between pulses. There are programmable thresholds for all three axes.

?The tap detection can be configured to run through the high-pass filter and also through a low-pass filter, which provides more customizing and tunable tap detection schemes.

?

The status register provides updates on the axes where the event was detected and the direction of the tap.

5.9Orientation detection

The MMA8652FC incorporates an advanced algorithm for orientation detection (ability to detect all 6 orientations) with configurable trip points. The embedded algorithm allows the selection of the mid-point with the desired hysteresis value.The MMA8652FC orientation detection algorithm confirms the reliability of the function with a configurable Z-lockout angle. Based on the known functionality of linear accelerometers, it is not possible to rotate the device about the Z-axis, to detect change in acceleration at slow angular speeds. The angle at which the device no longer detects the orientation change is referred to as the “Z-lockout angle”. The device operates down to 14° from the flat position.

Figure 8 and Figure 9 show the definitions of the trip angles, going from landscape to portrait and then from portrait to landscape.

Figure 7. Landscape/Portrait orientation

Figure 8. Landscape to Portrait transition

Top View

PU

Earth Gravity

Pin 1

X @ 0g Y @ -1g Z @ 0g

Xout @ 1g Yout @ 0g Zout @ 0g

Xout @ 0g Yout @ 1g Zout @ 0g

Xout @ -1g Yout @ 0g Zout @ 0g

LL

PD

LR

Side View

FRONT

Xout @ 0g Yout @ 0g Zout @ 1g

BACK

Xout @ 0g Yout @ 0g

Zout @ -1g

PORTRAIT

90°

0° Landscape PORTRAIT Portrait to Landscape 90°

Trip Angle = 30°

0° Landscape

MMA8652FC

Sensors

.

Figure 9. Z-Tilt angle lockout transition

5.10Interrupt register configurations

There are 7 configurable interrupts in the MMA8652FC: Data Ready , Motion/Freefall, T ap (Pulse), Orientation, Transient, FIFO events, and Auto-SLEEP events.

Figure 10. System interrupt generation

?The MMA8652FC features an interrupt signal that indicates when a new set of measured acceleration data is available, thus simplifying data synchronization in the digital system that uses the device.

?

The MMA8652FC may also be configured to generate other interrupt signals accordingly, to the programmable embedded functions of the device for Motion, Freefall, Transient, Orientation, and T ap.

5.11

Serial I 2C interface

Acceleration data may be accessed through an I 2C interface, thus making the device particularly suitable for direct interfacing to a microcontroller . The acceleration data and configuration registers embedded inside the MMA8652FC are accessed through the I 2C serial interface (Table 10). ?

To enable the I 2C interface, VDDIO line must be tied high (i.e., to the interface supply voltage). If VDD is not present and VDDIO is present, then the MMA8652FC is in OFF mode—and communications on the I 2

C interface are ignored.

UPRIGHT 90°

0° FLAT

Figure 9 shows the Z-angle lockout region.

When lifting the device upright from the flat position, the device will be active for orientation detection as low as 14° from 0° flat. This is user-configurable.

The default angle is 29°, but the angle can be set as low as 14°.

Interrupt Controller

Data Ready Motion/Freefall

Tap (Pulse)Orientation Transient FIFO Auto-SLEEP

INT ENABLE

INT CFG

INT1

INT2

7

77 configurable interrupts

These 7 interrupt sources can be routed to one of two interrupt pins. The interrupt source must be enabled and configured.

If the event flag is asserted because the event condition is detected, then the corresponding interrupt pin (INT1 or INT2) will assert.

MMA8652FC Sensors

?

The I 2C interface may be used for communications between other I 2C devices; the MMA8652FC does not affect the I 2C bus.

The I 2C interface is compliant with Fast mode (400kHz), and Normal mode (100kHz) I 2C standards (Table 6).I 2C operation:

1.

The transaction on the bus is started through a start condition (ST ART) signal. A ST ART condition is defined as a high-to-low transition on the data line while the SCL line is held high. After ST ART has been transmitted by the Master, the bus is considered busy .

2.The next byte of data transmitted after ST ART contains the slave address in the first 7 bits, and the 8th bit tells whether the Master is receiving data from the slave or is transmitting data to the slave .

3.After a start condition and when an address is sent, each device in the system compares the first 7 bits with its address. If the device’s address matches the sent address, then the device considers itself addressed by the Master.

4.

The 9th clock pulse following the slave address byte (and each subsequent byte) is the acknowledge (ACK). The transmitter must release the SDA line during the ACK period. The receiver must then pull the data line low, so that it remains stable low during the high period of the acknowledge clock period.

5. A Master may also issue a repeated ST ART during a data transfer. The MMA8652FC expects repeated ST ART s to be used to randomly read from specific registers.

6.

A low-to-high transition on the SDA line while the SCL line is high is defined as a stop condition (STOP). A data transfer is always terminated by a STOP .

The MMA8652FC's standard slave address is 0011101 or 0x01D. The slave addresses are factory programmed; alternate

addresses are available upon request.

5.11.1

Single byte read

1.

The transmission of an 8-bit command begins on the falling edge of SCL. After the 8 clock cycles are used to send the command, note that the data returned is sent with the MSB first after the data is received. Figure 11 shows the timing diagram for the accelerometer 8-bit I 2C read operation.

2.The Master (or MCU) transmits a start condition (ST) to the MMA8652FC [slave address (0x1D), with the R/W bit set to “0” for a write], and the MMA8652FC sends an acknowledgement.

3.Next the Master (or MCU) transmits the address of the register to read, and the MMA8652FC sends an acknowledgement.

4.The Master (or MCU) transmits a repeated start condition (SR) and then addresses the MMA8652FC (0x1D), with the R/W bit set to “1” for a read from the previously selected register.

5.

The Slave then acknowledges and transmits the data from the requested register. The Master does not acknowledge (NAK) the transmitted data, but transmits a stop condition to end the data transfer.

Figure 11. Single Byte Read timing (I 2C)

Table 10. Serial Interface pins

Pin Name Pin Description Notes

SCL

I 2C Serial Clock There are two signals associated with the I 2C bus; the Serial Clock Line (SCL) and the Serial Data line (SDA).

?SDA is a bidirectional line used for sending and receiving the data to/from the interface. ?External pullup resistors connected to VDDIO are expected for SDA and SCL. When the bus is free, both SCL and SDA lines are high.

SDA

I 2C Serial Data

Table 11. I 2C Device address sequence

Command [6:0]

Device address

[6:0]

Device address

R/W 8-bit final value Read 00111010x1D 10x3B Write

0011101

0x1D

0x3A

Master

ST Device Address[7:1]W Register Address[7:0]

SR Device Address[7:1]R NAK SP

Slave

AK

AK

AK Data[7:0]

For the following subsections, use the following legend.

Legend

ST: Start Condition SP: Stop Condition NAK: No Acknowledge W: Write = 0

SR: Repeated Start Condition AK: Acknowledge R: Read = 1

5.11.2Multiple byte read

(See Table11 for next auto-increment address.)

1.When performing a multi-byte read or “burst read”, the MMA8652FC automatically increments the received register

address commands after a read command is received.

2.After following the steps of a single byte read, multiple bytes of data can be read from sequential registers after each

MMA8652FC acknowledgment (AK) is received,

3.Until a no acknowledge (NAK) occurs from the Master,

4.Followed by a stop condition (SP), which signals the end of transmission.

Master ST Device Address[7:1]W Register Address[7:0]SR Device Address[7:1]R AK Slave AK AK AK Data[7:0]

Master AK AK NAK SP

Slave Data[7:0]Data[7:0]Data[7:0]

Figure12. Multiple Byte Read timing (I2C)

5.11.3Single byte write

1.T o start a write command, the Master transmits a start condition (ST) to the MMA8652FC, slave address ($1D) with the

R/W bit set to “0” for a write,

2.The MMA8652FC sends an acknowledgement.

3.Next the Master (MCU) transmits the address of the register to write to, and the MMA8652FC sends an

acknowledgement.

4.Then the Master (or MCU) transmits the 8-bit data to write to the designated register, and the MMA8652FC sends an

acknowledgement that it has received the data. Because this transmission is complete, the Master transmits a stop condition (SP) to the data transfer. The data sent to the MMA8652FC is now stored in the appropriate register.

Master ST Device Address[7:1]W Register Address[7:0]Data[7:0]SP

Slave AK AK AK

Figure13. Single Byte Write timing (I2C)

5.11.4Multiple byte write

(See Table11 for next auto-increment address.)

1.After a write command is received, the MMA8652FC automatically increments the received register address

commands.

2.Therefore, after following the steps of a single byte write, multiple bytes of data can be written to sequential registers

after each MMA8652FC acknowledgment (ACK) is received.

MMA8652FC Sensors

Master ST Device Address[7:1]W Register Address[7:0]Data[7:0]Data[7:0]SP Slave AK AK AK AK

Figure14. Multiple Byte Write timing (I2C)

MMA8652FC

Sensors

相关文档