The MMA7455L is a Digital Output (I2C/SPI), low power, low profile
capacitive micromachined accelerometer featuring signal conditioning, a low
pass filter, temperature compensation, self-test, configurable to detect 0g
through interrupt pins (INT1 or INT2), and pulse detect for quick motion
detection. 0g offset and sensitivity are factory set and require no external
devices. The 0g offset can be customer calibrated using assigned 0g registers
and g-Select which allows for command selection for 3 acceleration ranges
(2g/4g/8g). The MMA7455L includes a Standby Mode that makes it ideal for
handheld battery powered electronics.
Features
2
•Digital Output (I
•3mm x 5mm x 1mm LGA-14 Package
•Low Current Consumption
•Self-Test for Z-Axis
•Low Voltage Operation: 2.4 V – 3.6 V
•User Assigned Registers for Offset Calibration
•Programmable Threshold Interrupt Output
•Level Detection for Motion Recognition (Shock, Vibration, Freefall)
•Pulse Detection for Single or Double Pulse Recognition
•Sensitivity (64 LSB/g @ 2g and @ 8g in 10-Bit Mode)
•Selectable Sensitivity (±2g, ±4g, ±8g) for 8-bit Mode
•Robust Design, High Shocks Survivability (5,000g)
•RoHS Compliant
•Environmentally Preferred Product
•Low Cost
C/SPI)
MMA7455L
MMA7455L: XYZ-AXIS
ACCELEROMETER
±2G/±4G/±8G
Bottom View
14 LEAD
LGA
CASE 1977-01
Top View
Typical Applications
•Cell Phone/PMP/PDA: Image Stability, Text Scroll, Motion Dialing, Tap to
Mute
•HDD: Freefall Detection
•Laptop PC: Freefall Detection, Anti-Theft
•Pedometer
•Motion Sensing, Event Recorder
ORDERING INFORMATION
Part NumberTemperature RangePackageShipping
MMA7455LT
MMA7455LR1
MMA7455LR2
This document contains certain information on a new product.
Specifications and information herein are subject to change without notice.
3N/CNo internal connection. Leave unconnected or connect to Ground.Input
4IADDR0
2
C Address Bit 0 (optional)*
I
5GNDGround Input
6AVDDAnalog PowerInput
7CS
SPI Enable (0), I
2
C Enable (1)
8INT1/DRDYInterrupt 1/ Data ReadyOutput
9INT2Interrupt 2Output
10N/CNo internal connection. Leave unconnected or connect to Ground.Input
11N/CLeave unconnected or connect to Ground.Input
12SDOSPI Serial Data OutputOutput
13SDA/SDI/SDO
14SCL/SPC
2
C Serial Data (SDA), SPI Serial Data Input (SDI), 3-wire interface Serial Data Output (SDO)
I
2
C Serial Clock (SCL), SPI Serial Clock (SPC)
I
Open Drain/Input/Output
*This address selection capability is not enabled at the default state. If the user wants to use it, factory programming is required. If activated (pin4
on the device is active).
<$1D= 0001 1101> bit 0 is V
on pin 4
DD
<$1C=0001 1100> bit 0 is GND on pin 4. If the pin is programmed it cannot be left NC.
(Maximum ratings are the limits to which the device can be exposed without causing permanent damage.)
Rating Symbol Value Unit
Maximum Acceleration (all axes)g
Analog Supply Voltage AV
Digital I/O pins Supply VoltageDV
Drop TestD
Storage Temperature RangeT
max
DD
DD_IO
drop
stg
5000g
-0.3 to +3.6V
-0.3 to +3.6V
1.8m
-40 to +125°C
ELECTRO STATIC DISCHARGE (ESD)
WARNING: This device is sensitive to electrostatic discharge.
Although the Freescale accelerometer contains internal 2000V ESD protection circuitry, extra precaution must be taken by the
user to protect the chip from ESD. A charge of over 2000 volts can accumulate on the human body or associated test equipment.
A charge of this magnitude can alter the performance or cause failure of the chip. When handling the accelerometer, proper ESD
precautions should be followed to avoid exposing the device to discharges which may be detrimental to its performance.
MMA7455L
Sensors
6Freescale Semiconductor
Table 3. Operating Characteristics
Unless otherwise noted: –40°C <
Analog Supply Voltage
Standby/Operation Mode
Enable Bus Mode
Digital I/O Pins Supply Voltage
Standby/Operation Mode
Enable Bus Mode
Supply Current Drain
Operation Mode
Pulse Detect Function Mode
Standby Mode (except data loading and I
Operating Temperature RangeT
0g Output Signal (T
±2g range (25°C) 8bit GLVL[1:0]= 0 1
±4g range (25°C) 8bit GLVL[1:0]= 1 0
±8g range (25°C) 8bit GLVL[1:0]= 0 0
±8g range (25°C) 10bit
Sensitivity (T
±2g range (25°C) 8bit
±4g range (25°C) 8bit
±8g range (25°C) 8bit
±8g range (25°C) 10bit
Self-Test Output Response
ZoutΔST
Input High Voltage
Input Low Voltage
Internal Clock Frequency (T
SPI Frequency
DD_IO
DD_IO
< 2.4 V
> 2.4 V
DV
DV
Bandwidth for Data Measurement (User Selectable)
DFBW 0
DFBW 1
Output Data Rate
Output Data Rate is 125 Hz when 62.5 bandwidth is selected.
Output Data rate is 250 Hz when 125Hz bandwidth is selected.
Control Timing
Wait Time for I
Turn On Response Time (Standby to Normal Mode)
Turn Off Response Time (Normal to Standby Mode)
Self-Test Response Time
Sensing Element Resonant Frequency
XY
Z
Nonlinearity (2 g range)-1—+1%FS
Cross Axis Sensitivity-5—+5%
=25°C, AVDD = 2.8 V
A
=25°C, AV
A
2
DD
C/SPI ready after power on
TA < 85°C, 2.4 V < AVDD < 3.6 V, Acceleration = 0g, Loaded output.
CharacteristicSymbolMinTypMaxUnit
2
C/SPI communication period)
= 2.8 V)
= 25°C, AVDD = 2.8 V)t
A
AV
DD
AV
DD
DV
DD_IO
DV
DD_IO
I
DD
I
DD
I
DD
A
V
IH
V
IL
CLK
t
su
t
ru
t
rd
t
st
f
GCELLXY
f
GCELLZ
Z
2.4
2.8
3.6
0
1.71
1.71
—
—
—
1.8
1.8
400
400
2.5
AV
DD
3.6
490
490
10
-402585°C
-21
—
—
-21
58
—
—
58
64
32
16
64
0
0
0
0
21
—
—
21
70
—
—
70
+48+64+80count
0.7 x DVDD
—
—
—
—
0.35 x DVDD
140150160kHz
—
—
—
—
—
—
—
—
—
—
—
—
4
8
62.5
125
125
250
1
—
—
—
6.0
3.4
—
—
—
—
—
—
—
20
20
20
—
—
count/g
count/g
count/g
count/g
V
V
V
V
μA
μA
μA
count
count
count
count
V
V
MHz
MHz
Hz
Hz
Hz
Hz
ms
ms
ms
ms
kHz
kHz
MMA7455L
Sensors
Freescale Semiconductor7
Table 4. Function Parameters for Detection
–40°C <
Note: The response time is between 10% of full scale VDD input voltage and 90% of the final operating output voltage.
*The bandwidth for detecting interrupts in level and pulse is 600Hz which is changed from measurement mode.
TA < 85°C, 2.4 V < AVDD < 3.6 V, unless otherwise specified
CharacteristicSymbolMinTypMaxUnit
Level Detection
Detection Threshold Range0—FSg
Pulse Detection
Pulse detection range (Adjustable range)
Time step for pulse detection
Threshold range for pulses
Detection levels for threshold
Latency timer (Adjustable range)
Time Window (Adjustable range)
Bandwidth for detecting interrupt*
Time step for latency timer and time window
0.5
—
0
—
1
1
—
—
—
0.5
—
127
—
—
600
1
127
—
FS
—
150
250
—
—
ms
ms
g
Counts
ms
ms
Hz
ms
PRINCIPLE OF OPERATION
The Freescale accelerometer is a surface-micromachined integrated-circuit accelerometer. The device consists of a surface micromachined capacitive sensing cell (g-cell) and a signal conditioning ASIC contained in a single package. The sensing element
is sealed hermetically at the wafer level using a bulk micromachined cap wafer. The g-cell is a mechanical structure formed from
semiconductor materials (polysilicon) using semiconductor processes (masking and etching). It can be modeled as a set of
beams attached to a movable central mass that move between fixed beams. The movable beams can be deflected from their
rest position by subjecting the system to an acceleration (Figure 2).
As the beams attached to the central mass move, the distance from them to the fixed beams on one side will increase by the
same amount that the distance to the fixed beams on the other side decreases. The change in distance is a measure of acceleration. The g-cell beams form two back-to-back capacitors (Figure 2). As the center beam moves with acceleration, the distance
between the beams changes and each capacitor's value will change, (C = A
electric constant, and D is the distance between the beams.
The ASIC uses switched capacitor techniques to measure the g-cell capacitors and extract the acceleration data from the difference between the two capacitors. The ASIC also signal conditions and filters (switched capacitor) the signal, providing a digital
output that is proportional to acceleration.
ε/D). Where A is the area of the beam, ε is the di-
Acceleration
Figure 2. Simplified Transducer Physical Model
FEATURES
Self-Test
The sensor provides a self-test feature that allows the verification of the mechanical and electrical integrity of the accelerometer
at any time before or after installation. This feature is critical in applications such as hard disk drive protection where system integrity must be ensured over the life of the product. When the self-test function is initiated through the mode control register ($16),
accessing the “self-test” bit, an electrostatic force is applied to each axis to cause it to deflect. The Z-axis is trimmed to deflect
1g. This procedure assures that both the mechanical (g-cell) and electronic sections of the accelerometer are functioning.
MMA7455L
Sensors
8Freescale Semiconductor
g-Select
The g-Select feature enables the selection between 3 acceleration ranges for measurement. Depending on the values in the
Mode control register ($16), the MMA7455L’s internal gain will be changed allowing it to function with a 2g, 4g or 8g measurement
sensitivity. This feature is ideal when a product has applications requiring two or more acceleration ranges for optimum performance and for enabling multiple functions. The sensitivity can be changed during the operation by modifying the two GLVL bits
located in the mode control register.
Table 5. Configuring the g-Select for 8-bit output using Register $16 with GLVL[1:0] bits.
GLVL [1:0]g-RangeSensitivity
008g16 LSB/g
012g64 LSB/g
104g32 LSB/g
Standby Mode
This digital output 3-axis accelerometer provides a standby mode that is ideal for battery operated products. When standby mode
is active, the device outputs are turned off, providing significant reduction of operating current. When the device is in standby
mode the current will be reduced to 2.5 µA typical. In standby mode the device can read and write to the registers with the I
2
C/
SPI available, but no new measurements can be taken in this mode as all current consuming parts are off. The mode of the device
is controlled through the mode control register by accessing the two mode bits as shown in Table 6.
Table 6. Configuring the Mode using Register $16 with MODE[1:0] bits.
MODE [1:0]Function
00Standby Mode
01Measurement Mode
10Level Detection Mode
11Pulse Detection Mode
Measurement Mode
During measurement mode, continuous measurements on all three axes enabled. The g-range for 2g, 4g, or 8g are selectable
with 8-bit data and the g-range of 8g is selectable with 10-bit data. The sample rate during measurement mode is 125 Hz with
62.5 BW filter selected. The sample rate is 250 Hz with the 125 Hz filter selected. Therefore, when a conversion is complete
(signaled by the DRDY flag), the next measurement will be ready.
When measurements on all three axes are completed, a logic high level is output to the DRDY pin, indicating “measurement data
is ready.” The DRDY status can be monitored by the DRDY bit in Status Register (Address: $09). The DRDY pin is kept high until
one of the three Output Value Registers are read. If the next measurement data is written before the previous data is read, the
DOVR bit in the Status Register will be set. Also note that in measurement mode, level detection mode and pulse detection mode
are not available.
By default all three axes are enabled. X and/or Y and/or Z can be disabled. There is a choice between detecting an absolute
signal or a positive or negative only signal on the enabled axes. There is also a choice between doing a detection for motion
where X or Y or Z > Threshold vs. doing a detection for freefall where X & Y & Z < Threshold.
MMA7455L
Sensors
Freescale Semiconductor9
LEVEL DETECTION
When in Level or Pulse detection mode, it is not advisable to read the XYZ measurements because this can conflict with timing.
The interrupts for level and pulse detection are at 600 Hz, while measurement mode is at 125 Hz. It is best to exit the pulse/level
mode before taking a measurement on the XYZ.
Both the Level Detection and Pulse Detection modes can trigger an interrupt. Typically one interrupt is assigned to either pulse
detection or level detection. To detect both at the same time 2 interrupts are required. The level detection mechanism has no
timers associated with it. Once a set acceleration level is reached the interrupt pin will go high and remain high until the interrupt
pin is cleared (See Assigning, Clearing & Detecting Interrupts).
By default all three axes are enabled and the detection range is 8g only. X and/or Y and/or Z can be disabled. There is a choice
between detecting an Absolute signal or a Positive or Negative only signal on the enabled axes. There is also a choice between
doing a detection for Motion where X or Y or Z > Threshold vs. doing a detection for Freefall where X& Y & Z < Threshold.
$18: Control 1 (Read/Write) Setting the Detection Axes for X, Y and Z
This allows the user to define how many axes to use for detection. All axes are enabled by default. To disable write 1.
$19: Control 2 (Read/Write) Motion Detection (OR Condition) or Freefall Detection (AND Condition
)
LDPL = 0: Level detection polarity is positive and detecting condition is OR for all 3 axes.
X or Y or Z > Threshold
||X|| or ||Y|| or ||Z|| > Threshold
LDPL = 1: Level detection polarity is negative detecting condition is AND for all 3 axes.
X and Y and Z < Threshold
||X|| and ||Y|| and ||Z|| < Threshold
D7D6D5D4D3D2D1D0Reg $19
----------DRVOPDPLLDPLFunction
00000000Default
$18: Control 1 (Read/Write): Setting the threshold to be an integer value or an absolute value
This allows the user to set the threshold to be absolute, or to be based on the threshold value as positive or negative.
$1A: Level Detection Threshold Limit Value (Read/Write)
When an event is detected the interrupt pin (either INT1 or INT2) will go high. The interrupt pin assignment is set up in Register
$18, discussed in the Assigning, Clearing & Detecting Interrupts section. The detection status is monitored by the Detection
Source Register $0A.
LDTH[7:0]: Level detection threshold value. If THOPT bit in Detection Control Register is “0”, it is unsigned 7 bits value and
LDTH[7] should be “0”. If THOPT bit is “1”, it is signed 8 bits value.
MMA7455L
Sensors
10Freescale Semiconductor
THRESHOLD DETECTION FOR MOTION AND FREEFALL CONDITIONS
CASE 1: Motion Detection
Integer Value: X >Threshold OR Y >Threshold OR Z > Threshold
Reg $18 THOPT=1; Reg 19 LDPL=0, Set Threshold to 3g, which is 47 counts (16 counts/g). Set register $1A LDTH = $2F.
TH = $2F
CASE 2: Motion Detection
Absolute: ||X|| > Threshold OR ||Y|| >Threshold OR ||Z|| > Threshold
Reg $18 THOPT=0; Reg 19 LDPL=0, Set Threshold to 3g, which is 47 counts (16 counts/g). Set register $1A LDTH = $2F.
TH = $2F
TH = $D1
CASE 3: Freefall Detection
Integer Value: X < Threshold AND Y < Threshold AND Z <Threshold
Reg $18 THOPT=1; Reg 19 LDPL=1, Set Threshold to 0.5g, which is 7 counts (16 counts/g). Set register $1A LDTH = $07
TH = $07
CASE 4: Freefall Detection
Absolute: ||X|| <Threshold AND ||Y|| < Threshold AND ||Z||< Threshold
Reg $18 THOPT=0; Reg 19 LDPL=1, Set Threshold to +/-0.5g, which is 7 counts (16 counts/g). Set register $1A LDTH = $07.
TH = $07
TH = $F9
MMA7455L
Sensors
Freescale Semiconductor11
PULSE DETECTION
There are two interrupt pins available for detection of level and pulse conditions. The pulse detection has several timing windows
associated with it. A single pulse and a double pulse can be detected. Also freefall can be detected. The interrupt pins can be
assigned to detect the first pulse on one interrupt and the second pulse on the other interrupt. This is explained on
Page page 15, under the Assigning, Clearing & Detecting Interrupts section.
By default all three axes are enabled and the detection range is 8g only. X and/or Y and/or Z can be disabled. There is a choice
between doing a detection for Motion detection vs. doing a detection for Freefall.
$18: Control 1 (Read/Write): Disable X, Y or Z for pulse detection
This allows the user to define how many axes to use for detection. All axes are enabled by default. To disable write 1
$19: Control 2 (Read/Write): Motion Detection (OR condition) or Freefall Detection (AND condition)
PDPL
0: Pulse detection polarity is positive and detecting condition is OR 3 axes.
1: Pulse detection polarity is negative and detecting condition is AND 3 axes.
D7D6D5D4D3D2D1D0Reg $19
----------DRVOPDPLLDPLFunction
00000000Default
CASE 1: Single Pulse Motion Detection: X or Y or Z > Pulse Threshold for Time < Pulse Duration
For motion detection with single pulse the device must be in pulse mode. PDPL in Register $19 =0 for “OR” motion condition.
The Pulse threshold must be set in Register $1B and the pulse duration time window must also be set using Register $1C. The
pulse must be detected before the time window closes for the interrupt to trigger.
$1B: Pulse Detection Threshold Limit Value (Read/Write)
Single Pulse Detection ($19 PDPL=0 indicating motion detection)
Time Window for 2
nd
pulse $1E TW=0 indicating single pulse
Time
Time
Figure 3. Single Pulse Detection
CASE 2: Freefall Detection: X and Y and Z < Pulse Threshold for Time > Latency Time
For freefall detection, set in pulse mode. PDPL in Register $19 =1 for “AND” freefall condition. The Pulse threshold must be set
in Register $1B and the pulse latency time window must also be set using Register $1D. All three axes must remain below the
threshold longer than the time window for the interrupt to trigger.
$1B: Pulse Detection Threshold Limit Value (Read/Write)
CASE 3: Double Pulse Detection: X OR Y OR Z > Threshold for Pulse Duration1 < PDTime1, Latency Time, AND
X OR Y OR Z > Threshold for Pulse Duration2 < PDTime2
For motion detection with double pulse the device must be in pulse mode. PDPL in Register $19 =0 for “OR” motion condition.
The Pulse Threshold must be set in Register $1B and the Pulse Duration Time Window must also be set using Register $1C.
Then the Latency Time (time between pulses) must be set in Register $1D and then the Second Time Window must be set in
Register $1E for the time window of the second pulse. The pulse must be detected before the time window closes for the interrupt
to trigger.
$1B: Pulse Detection Threshold Limit Value (Read/Write)
When any of the events are detected, the interrupt pin (either INT1 or INT2) will go high. The interrupt pin assignment is set
up in Register $18, discussed in the Assigning, Clearing & Detecting Interrupts section on page 15. The detection status is
monitored by the detection source register $0A.
G
G
th
INT
Pulse Detection
Time Window
Latency Time Window
nd
(2
pulse ignored here)
Double Pulse Detection ($19 PDPL=0 indicating motion detection)
Time Window for 2
nd
pulse $1E TW>0 indicating double pulse
Pulse Detection Time Window for
nd
pulse
2
Figure 5. Double Pulse Detection
Time
Time Window >0
for 2 pulse detect
*Note there is up to
1.6ms delay on the
interrupt signal
Time
MMA7455L
Sensors
14Freescale Semiconductor
ASSIGNING, CLEARING & DETECTING INTERRUPTS
Assigning the interrupt pins is done in Register $18. There are 3 combinations for the interrupt pins to be assigned which are
outlined below in the table for INTREG[1:0].
Table 7. Configuring the Interrupt settings using Register $18 with INTREG[1:0] bits
INTREG[1:0]“INT1” Register Bit“INT2” Register Bit
00Level detection Pulse Detection
01Pulse DetectionLevel Detection
10Single Pulse detection Single or Double Pulse Detection
00:
01: INT1 Register is detecting Pulse while INT2 is detecting Level.
10: INT1 Register is detecting a Single Pulse and INT2 is detecting Single Pulse (if 2nd Time Window = 0) or if there is a latency
time window and second time window>0 then INT2 will detect the double pulse only.
INTPIN: INT1 pin is routed to INT1 bit in Detection Source Register ($0A) and INT2 pin is routed to INT2 bit in Detection Source
Register ($0A).
INTPIN: INT2 pin is routed to INT1 bit in Detection Source Register ($0A) and INT1 pin is routed to INT2 bit in Detection Source
Register ($0A).
Note: When INTREG[1:0] =10 for the condition to detect single pulse on INT1 and either single or double pulse on INT2, INT1
register bit can no longer be cleared by setting CLR_INT1 bit. It is cleared by setting CLR_INT2 bit. In this case, setting CLR_INT2
clears both INT1 and INT2 register bits and resets the detection operation. Follow the example given for clearing the interrupts.
After interrupt has triggered due to a detection, the interrupt pin (INT1 or INT2) need to be cleared by writing a logic 1. Then the
interrupt pin should be enabled to trigger the next detection by setting it to a logic 0.
This example is to show how to reset the interrupt flags
void ClearIntLatch(void)
{
IIC_ByteWrite(INTRST, 0x03);
IIC_ByteWrite(INTRST, 0x00);
}
MMA7455L
Sensors
Freescale Semiconductor15
Detecting Interrupts
$0A: Detection Source Register (Read only)
D7D6D5D4D3D2D1D0Reg $0A
LDXLDYLDZPDXPDYPDZINT2INT1Function
00000000Default
LDX
1: Level detection event is detected on X-axis
0: Level detection event is not detected on X-axis
LDY
1: Level detection event is detected on Y-axis
0: Level detection event is not detected on Y-axis
LDZ
1: Level detection event is detected on Z-axis
0: Level detection event is not detected on Z-axis
PDX
st
pulse is detected on X-axis
1: 1
0: 1st pulse is detected on X-axis
PDZ
st
1: 1
pulse is detected on Z-axis
st
pulse is detected on Z-axis
0: 1
INT1
1: Interrupt assigned by INTRG[1:0] bits in Control 1
Register ($18) and is detected
0: Interrupt assigned by INTRG[1:0] bits in Control 1
Register ($18) and is not detected
INT2
1: Interrupt assigned by INTRG[1:0] bits in Control 1
Register ($18) and is detected
0: Interrupt assigned by INTRG[1:0] bits in Control 1
Register ($18) and is not detected
PDY
1: 1st pulse is detected on Y-axis
st
pulse is detected on Y-axis
0: 1
DIGITAL INTERFACE
The MMA7455L has both an I2C and SPI digital output available for a communication interface. CS pin is used for selecting the
mode of communication. When CS is low, SPI communication is selected. When CS is high, I2C communication is selected.
Note: It is recommended to disable I
2
C during SPI communication to avoid communication errors between devices using a dif-
ferent SPI communication protocol. To disable I2C, set the I2CDIS bit in I2C Device Address register using SPI.
2
I
C Slave Interface
2
C is a synchronous serial communication between a master device and one or more slave devices. The master is typically a
I
microcontroller, which provides the serial clock signal and addresses the slave device(s) on the bus. The MMA7455L communicates only in slave operation where the device address is $1D. Multiple read and write modes are available. The protocol supports
slave only operation. It does not support Hs mode, “10-bit addressing”, “general call” and: ”START byte”.
SINGLE BYTE READ
The MMA7455L has an 10-bit ADC that can sample, convert and return sensor data on request. The transmission of an 8-bit
command begins on the falling edge of SCL. After the eight clock cycles are used to send the command, note that the data returned is sent with the MSB first once the data is received. Figure 6 shows the timing diagram for the accelerometer 8-bit I
2
C
read operation. The Master (or MCU) transmits a start condition (ST) to the MMA7455L, slave address ($1D), with the R/W bit
set to “0” for a write, and the MMA7455L sends an acknowledgement. Then the Master (or MCU) transmits the 10-bit address of
the register to read and the MMA7455L sends an acknowledgement. The Master (or MCU) transmits a repeated start condition
(SR) and then addresses the MMA7455L ($1D) with the R/W bit set to “1” for a read from the previously selected register. The
Slave then acknowledges and transmits the data from the requested register. The Master does not acknowledge (NAK) it received the transmitted data, but transmits a stop condition to end the data transfer.
MULTIPLE BYTES READ
The MMA7455L automatically increments the received register address commands after a read command is received. Therefore,
after following the steps of a single byte read, multiple bytes of data can be read from sequential registers after each MMA7455L
acknowledgment (AK) is received until a NACK is received from the Master followed by a stop condition (SP) signalling an end
of transmission. See Figure 7.
MMA7455L
Sensors
16Freescale Semiconductor
SINGLE BYTE WRITE
To start a write command, the Master transmits a start condition (ST) to the MMA7455L, slave address ($1D) with the R/W bit set
to “0” for a write, the MMA7455L sends an acknowledgement. Then the Master (MCU) transmits the 8-bit address of the register
to write to, and the MMA7455L sends an acknowledgement. Then the Master (or MCU) transmits the 8-bit data to write to the
designated register and the MMA7455L sends an acknowledgement that it has received the data. Since this transmission is complete, the Master transmits a stop condition (SP) to the data transfer. The data sent to the MMA7455L is now stored in the appropriate register. See Figure 8.
Figure 6. Single Byte Read - The Master is reading one address from the MMA7455L
Figure 7. Multiple Bytes Read - The Master is reading multiple sequential registers from the MMA7455L
Figure 8. Single Byte Write - The Master (MCU) is writing to a single register of the MMA7455L
MULTIPLE BYTES WRITE
The MMA7455L automatically increments the received register address commands after a write command is received. Therefore,
after following the steps of a single byte write, multiple bytes of data can be written to sequential registers after each MMA7455L
acknowledgment (ACK) is received. See Figure 9.
Figure 9. Multiple Byte Writes - The Master (MCU) is writing to multiple sequential registers of the MMA7455L
MMA7455L
Sensors
Freescale Semiconductor17
SPI Slave Interface
The MMA7455L also uses serial peripheral interface communication as a digital communication. The SPI communication is primarily used for synchronous serial communication between a master device and one or more slave devices. See Figure 15 for
an example of how to configure one master with one MMA745xL device. The MMA7455L is always operated as a slave device.
Typically, the master device would be a microcontroller which would drive the clock (SPC) and chip select (CS) signals.
The SPI interface consists of two control lines and two data lines: CS, SPC, SDI, and SDO. The CS, also known as Chip Select,
is the slave device enable which is controlled by the SPI master. CS is driven low at the start of a transmission. CS is then driven
high at the end of a transmission. SPC is the Serial Port Clock which is also controlled by the SPI master. SDI and SDO are the
Serial Port Data Input and the Serial Port Data Output. The SDI and SDO data lines are driven at the falling edge of the SPC and
should be captured at the rising edge of the SPC.
Read and write register commands are completed in 16 clock pulses or in multiples of 8, in the case of a multiple byte read/write.
SPI Read Operation
A SPI read transfer consists of a 1-bit Read/Write signal, a 6-bit address, and 1-bit don’t care bit. (1-bit R/W=0 + 6-bits address
+ 1-bit don’t care). The data to read is sent by the SPI interface during the next transfer. See Figure 10 and Figure 11 for the
timing diagram for an 8-bit read in 4 wire and 3 wire modes, respectively.
SPI Write Operation
In order to write to one of the 8-bit registers, an 8-bit write command must be sent to the MMA7455L. The write command consists
of an MSB (0=read, 1=write) to indicate writing to the MMA7455L register, followed by a 6-bit address and 1 don’t care bit.
The command should then be followed the 8-bit data transfer. See Figure 12 for the timing diagram for an 8-bit data write.
1: Parity error is detected in trim data. Then, self-test is disabled
0: Parity error is not detected in trim data
1: Data is over written
0: Data is not over written
$0A: Detection Source Register (Read only)
D7D6D5D4D3D2D1D0Bit
LDXLDYLDZPDXPDYPDZINT2INT1Function
00000000Default
LDX
1: Level detection detected on X-axis
0: Level detection not detected on X-axis
LDY
1: Level detection detected on Y-axis
0: Level detection not detected on Y-axis
LDZ
1: Level detection detected on Z-axis
0: Level detection not detected on Z-axis
PDX *Note
1: Pulse is detected on X-axis at single pulse detection
0: Pulse is not detected on X-axis at single pulse detection
PDY *Note
1: Pulse is detected on Y-axis at single pulse detection
0: Pulse is not detected on Y-axis at single pulse detection
PDZ *Note
1: Pulse is detected on Z-axis at single pulse detection
0: Pulse is not detected on Z-axis at single pulse detection
Note: This bit value is not valid at double pulse detection
INT1
1: Interrupt assigned by INTRG[1:0] bits in Control 1
Register ($18) and is detected
0: Interrupt assigned by INTRG[1:0] bits in Control 1
Register ($18) and is not detected
INT2
1: Interrupt assigned by INTRG[1:0] bits in Control 1
Register ($18) and is detected
0: Interrupt assigned by INTRG[1:0] bits in Control 1
Register ($18) and is not detected
*Note: Must define DRDY to be an output to either INT1 or
not. This is done through bit DRPD located in Register $16.
The following Offset Drift Registers are used for setting and storing the offset calibrations to eliminate the 0g offset. Please refer
to Freescale application note AN3745 for detailed instructions on the process to set and store the calibration values.
Table 11. Configuring the Interrupt settings using Register $18 with INTREG[1:0] bits
INTREG[1:0]“INT1” Register Bit“INT2” Register Bit
00Level detection Pulse Detection
01Pulse DetectionLevel Detection
10Single Pulse detection Single or Double Pulse Detection
01: INT1 Register is detecting Pulse while INT2 is detecting Level.
nd
10: INT1 Register is detecting a Single Pulse and INT2 is detecting Single Pulse (if 2
Time Window = 0) or if there is a latency
time window and second time window>0 then INT2 will detect the double pulse only.
INTPIN: INT1 pin is routed to INT1 bit in Detection Source Register ($0A) and INT2 pin is routed to INT2 bit in Detection Source
Register ($0A).
INTPIN: INT2 pin is routed to INT1 bit in Detection Source Register ($0A) and INT1 pin is routed to INT2 bit in Detection Source
Register ($0A).
Note: When INTREG[1:0] =10 for the condition to detect single pulse on INT1 and either single or double pulse on INT2, INT1
register bit can no longer be cleared by setting CLR_INT1 bit. It is cleared by setting CLR_INT2 bit. In this case, setting CLR_INT2
clears both INT1 and INT2 register bits and resets the detection operation.
XDA
1: X-axis is disabled for detection.
0: X-axis is enabled for detection.
YDA
1: Y-axis is disabled for detection.
0: Y-axis is enabled for detection.
ZDA
THOPT (This bit is valid for level detection only, not valid
for pulse detection)
0: Threshold value is absolute only
1: Integer value is available.
DFBW
0: Digital filter band width is 62.5 Hz
1: Digital filter band width is 125 Hz
1: Z-axis is disabled for detection.
0: Z-axis is enabled for detection.
$19: Control 2 (Read/Write)
D7D6D5D4D3D2D1D0Bit
DRVOPDPLLDPLFunction
00000000Default
LDPL
0: Level detection polarity is positive and detecting condition
is OR 3 axes.
1: Level detection polarity is negative detecting condition is
AND 3 axes.
PDPL
0: Pulse detection polarity is positive and detecting condition
is OR 3 axes.
1: Pulse detection polarity is negative and detecting condition
is AND 3 axes.
MMA7455L
Sensors
26Freescale Semiconductor
DRVO
1: Strong drive strength on SDA/SDO pin
0: Standard drive strength on SDA/SDO pin
$1A: Level Detection Threshold Limit Value (Read/Write)
LDTH[7:0]: Level detection threshold value. If THOPT bit in Detection Control Register is “0”, it is unsigned 7 bits value and
LDTH[7] should be “0”. If THOPT bit is “1”, it is signed 8 bits value.
$1B: Pulse Detection Threshold Limit Value (Read/Write)
PDTH[6:0]: Pulse detection threshold value (unsigned 7 bits).
XPDTH: This bit should be “0”.
$1C: Pulse Duration Value (Read/Write)
D7D6D5D4D3D2D1D0Bit
PD[7]PD[6]PD[5]PD[4]PD[3]PD[2]PD[1]PD[0]Function
00000000Default
Min: PD[7:0] = 4’h01 = 0.5 ms
Max: PD[7:0] = 4’hFF = 127 ms
1 LSB = 0.5 ms
$1D: Latency Time Value (Read/Write)
D7D6D5D4D3D2D1D0Bit
LT[7]LT[6]LT[5]LT[4]LT[3]LT[2]LT[1]LT[0]Function
00000000Default
Min: LT[7:0] = 8’h01 = 1 ms
Max: LT[7:0] = 8’hFF = 255 ms
1 LSB = 1 ms
$1E: Time Window for 2nd Pulse Value (Read/Write)
D7D6D5D4D3D2D1D0Bit
TW[7]TW[6]TW[5]TW[4]TW[3]TW[2]TW[1]TW[0]Function
00000000Default
Min: TW[7:0] = 8’h01 = 1 ms (Single pulse detection)
Max: TW[7:0] = 8’hFF = 255 ms
1 LSB = 1 ms
MMA7455L
Sensors
Freescale Semiconductor27
SENSING DIRECTION AND OUTPUT RESPONSE
The following figure shows sensing direction and the output response for 2g mode.
147
165432
@ +1g = $3F
X
OUT
@0g=$00
Y
OUT
@0g=$00
Z
OUT
Top View
Direction of Earth's gravity field.*
165432
147
1312111098
X
1312111098
147
* When positioned as shown, the Earth’s gravity will result in a positive 1g output.
@0g=$00
OUT
@ +1g = $3F
Y
OUT
@0g=$00
Z
OUT
13 12 11 10 98
165432
X
@0g=$00
OUT
@ -1g = $C1
Y
OUT
@0g=$00
Z
OUT
X
Y
Z
1312111098
OUT
OUT
OUT
147
@ -1g = $C1
@0g=$00
@ 0g = $00
165432
Side View
Bottom
X
OUT
Y
OUT
@ +1g = $3F
Z
OUT
Bottom
X
OUT
Y
OUT
Z
OUT
Top
@0g=$00
@0g=$00
Top
@0g=$00
@0g=$00
@ -1g = $C1
Figure 16. Sensing Direction and Output Response at 2g Mode
Table 12. Acceleration vs. Output (8-bit data)
FS ModeAccelerationOutput
2g Mode-2g$80
-1g$C1
0g$00
+1g$3F
+2g$7F
4g Mode-4g$80
-1g$E1
0g$00
+1g$1F
+4g$7F
8g Mode-8g$80
-1g$F1
0g$00
+1g$0F
+8g$7F
MMA7455L
Sensors
28Freescale Semiconductor
MINIMUM RECOMMENDED FOOTPRINT FOR SURFACE MOUNTED APPLICATIONS
Surface mount board layout is a critical portion of the total design. The footprint for the surface mount packages must be the
correct size to ensure proper solder connection interface between the board and the package.
With the correct footprint, the packages will self-align when subjected to a solder reflow process. It is always recommended to
design boards with a solder mask layer to avoid bridging and shorting between solder pads.
SOLDERING AND MOUNTING GUIDELINES FOR THE LGA ACCELEROMETER SENSOR TO A PC BOARD
These guideline are for soldering and mounting the LGA package inertial sensors to printed circuit boards (PCBs). The purpose
is to minimize the stress on the package after board mounting. The MMA7455L digital output accelerometer uses the Land Grid
Array (LGA) package platform. This section describes suggested methods of soldering these devices to the PC board for consumer applications. Figure 17 shows the recommended PCB land pattern for the package.
Figure 17. Recommended PCB Land Pattern for the 5 x 3 mm LGA Package
MMA7455L
Sensors
Freescale Semiconductor29
OVERVIEW OF SOLDERING CONSIDERATIONS
Information provided here is based on experiments executed on LGA devices. They do not represent exact conditions present
at a customer site. Hence, information herein should be used as a guidance only and process and design optimizations are recommended to develop an application specific solution. It should be noted that with the proper PCB footprint and solder stencil
designs the package will self-align during the solder reflow process.
The following are the recommended guidelines to follow for mounting LGA sensors for consumer applications.
PCB MOUNTING RECOMMENDATIONS
1.The PCB land should be designed with Non Solder Mask Defined (NSMD) as shown in Figure 20.
2.No additional metal pattern underneath package as shown in Figure 19.
3.PCB land pad is 0.9 mm x 0.6 mm which is the size of the package pad plus 0.1 mm as shown in Figure 20.
4.The solder mask opening is equal to the size of the PCB land pad plus an extra 0.1 mm as shown in Figure 20.
5.The stencil aperture size is equal to the PCB land pad – 0.025mm.
LGA package w/ solder
PCB top metal layer
Example of 2 layer PCB
Top metal pattern
Top metal pattern
under package area
Figure 18. Incorrect PCB Top Metal Pattern Under
Via structure under
Via structure under
package area
Package
Figure 19. Correct PCB Top Metal Pattern Under Package
Pad Dimension by Package
0.5 mm
0.8 mm
Figure 20. Recommended PCB Land Pad, Solder Mask, and Signal Trace Near Package Design
PCB land pattern - NSMD
Cu: 0.9 x 0.6 mm sq.
SM opening = PCB land pad + 0.1mm
= 1.0 x 0.7mm sq.
Signal trace near
package: 0.1mm width
and min. 0.5mm length
are recommended.
Wider trace can be
continued after these.
Wider trace
MMA7455L
Sensors
30Freescale Semiconductor
Signal trace near
package
Package
footprint
Stencil opening = PCB landing
pad -0.025mm
= 0.575mmx0,875mm
10x0.8mm
14x0.575mm
14x0.875mm
Figure 21. Stencil Design Guidelines
6.Do not place any components or vias at a distance less than 2 mm from the package land area. This may cause additional
package stress if it is too close to the package land area.
7.Signal traces connected to pads should be as symmetric as possible. Put dummy traces on NC pads in order to have same
length of exposed trace for all pads. Signal traces with 0.1 mm width and min. 0.5 mm length for all PCB land pads near the
package are recommended as shown in Figure 20 and Figure 21. Wider trace can be continued after the 0.5 mm zone.
8.Use a standard pick and place process and equipment. Do not us a hand soldering process.
9.It is recommended to use a cleanable solder paste with an additional cleaning step after SMT mount.
10. Do not use a screw down or stacking to fix the PCB into an enclosure because this could bend the PCB putting stress on
the package.
11. The PCB should be rated for the multiple lead-free reflow condition with max 260°C temperature.
Please cross reference with the device data sheet for mounting guidelines specific to the exact device used.
Freescale LGA sensors are compliant with Restrictions on Hazardous Substances (RoHS), having halide free molding compound
(green) and lead-free terminations. These terminations are compatible with tin-lead (Sn-Pb) as well as tin-silver-copper
(Sn-Ag-Cu) solder paste soldering processes. Reflow profiles applicable to those processes can be used successfully for soldering the devices.
MMA7455L
Sensors
Freescale Semiconductor31
Xoff_mg/degreeC_-40to85
Xsens_%/DegreeC_-40to85
LSLUSLTarget
-3 -2-10123
Yoff_mg/degree C_-40to85
LSLUSLTarget
-3 -2-10123
Zoff_mg/degreeC_-40to85
LSLUSLTarget
LSLUSLTarget
-0.02 -0.0100.010.02
Ysens_%/DegreeC_-40to85
LSLUSLTarget
-0.02 -0.0100.010.02
Zsens_%/DegreeC_-40to85
LSLUSLTarget
-3 -2-10123
-0.03 -0.02 -0.01 00.01 0.02 0.03
Figure 22. MMA7455L Temperature Coefficient of Offset (TCO) and
Temperature Coefficient of Sensitivity (TCS) Distribution Charts
MMA7455L
Sensors
32Freescale Semiconductor
PACKAGE DIMENSIONS
CASE 1977-01
ISSUE A
14-LEAD LGA
MMA7455L
Sensors
Freescale Semiconductor33
PACKAGE DIMENSIONS
CASE 1977-01
ISSUE A
14-LEAD LGA
MMA7455L
Sensors
34Freescale Semiconductor
How to Reach Us:
Home Page:
www.freescale.com
Web Support:
http://www.freescale.com/support
USA/Europe or Locations Not Listed:
Freescale Semiconductor, Inc.
Technical Information Center, EL516
2100 East Elliot Road
Tempe, Arizona 85284
1-800-521-6274 or +1-480-768-2130
www.freescale.com/support
Freescale Semiconductor Japan Ltd.
Headquarters
ARCO Tower 15F
1-8-1, Shimo-Meguro, Meguro-ku,
Tokyo 153-0064
Japan
0120 191014 or +81 3 5437 9125
support.japan@freescale.com
Asia/Pacific:
Freescale Semiconductor China Ltd.
Exchange Building 23F
No. 118 Jianguo Road
Chaoyang District
Beijing 100022
China
+86 010 5879 8000
support.asia@freescale.com
For Literature Requests Only:
Freescale Semiconductor Literature Distribution Center
P.O. Box 5405
Denver, Colorado 80217
1-800-441-2447 or +1-303-675-2140
Fax: +1-303-675-2150
LDCForFreescaleSemiconductor@hibbertgroup.com
Information in this document is provided solely to enable system and software
implementers to use Freescale Semiconductor products. There are no express or
implied copyright licenses granted hereunder to design or fabricate any integrated
circuits or integrated circuits based on the information in this document.
Freescale Semiconductor reserves the right to make changes without further notice to
any products herein. Freescale Semiconductor makes no warranty, representation or
guarantee regarding the suitability of its products for any particular purpose, nor does
Freescale Semiconductor assume any liability arising out of the application or use of any
product or circuit, and specifically disclaims any and all liability, including without
limitation consequential or incidental damages. “Typical” parameters that may be
provided in Freescale Semiconductor data sheets and/or specifications can and do vary
in different applications and actual performance may vary over time. All operating
parameters, including “Typicals”, must be validated for each customer application by
customer’s technical experts. Freescale Semiconductor does not convey any license
under its patent rights nor the rights of others. Freescale Semiconductor products are
not designed, intended, or authorized for use as components in systems intended for
surgical implant into the body, or other applications intended to support or sustain life,
or for any other application in which the failure of the Freescale Semiconductor product
could create a situation where personal injury or death may occur. Should Buyer
purchase or use Freescale Semiconductor products for any such unintended or
unauthorized application, Buyer shall indemnify and hold Freescale Semiconductor and
its officers, employees, subsidiaries, affiliates, and distributors harmless against all
claims, costs, damages, and expenses, and reasonable attorney fees arising out of,
directly or indirectly, any claim of personal injury or death associated with such
unintended or unauthorized use, even if such claim alleges that Freescale
Semiconductor was negligent regarding the design or manufacture of the part.
Freescale™ and the Freescale logo are trademarks of Freescale Semiconductor, Inc.
All other product or service names are the property of their respective owners.
RoHS-compliant and/or Pb-free versions of Freescale products have the functionality and electrical
characteristics of their non-RoHS-compliant and/or non-Pb-free counterparts. For further
information, see http:/www.freescale.com or contact your Freescale sales representative.
For information on Freescale’s Environmental Products program, go to http://www.freescale.com/epp.
Loading...
+ hidden pages
You need points to download manuals.
1 point = 1 manual.
You can buy points or you can get point for every manual you upload.