FREESCALE MPR083EJ

MPR083
Rev 4, 10/2008
Freescale Semiconductor
Technical Data
Product Preview
Proximity Capacitive Touch
Sensor Controller
MPR083
Capacitive Touch
Sensor Controller
MPR083 OVERVIEW
The MPR083 is an Inter-Integrated Circuit Communication (I2C) driven
Capacitive Touch Sensor Controller, optimized to manage an 8-position
rotary shaped capacitive array. The device can accommodate a wide
range of implementations through 3 output mechanisms, and many
configurable options.
Bottom View
Features
Implementations
•
•
•
ATTN
1
E3
E4
15
14
13
12 E5
MPR083
2
3
10 E7
VSS
4
9
Control Panels
Switch Replacements
Rotary and Linear Sliders
5
6
7
8
Typical Applications
•
•
•
•
•
•
Appliances
PC Peripherals
Access Controls
MP3 Players
Remote Controls
Mobile Phones
ATTN
IRQ
VDD
VSS
SCL
ORDERING INFORMATION
Device Name
Temperature Range
MPR083Q
MPR083EJ
-40°C to +85°C
Case Number
SDA
Rotary Slider
1679
(16-Lead QFN)
948F
(16-Lead TSSOP)
AD0
SOUNDER
8-Positions
This document contains a product under development. Freescale Semiconductor reserves the right to change or
discontinue this product without notice.
© Freescale Semiconductor, Inc., 2007, 2008. All rights reserved.
Preliminary
11 E6
IRQ
VDD
AD0
•
•
•
16
SOUNDER
•
Top View
E2
•
16-LEAD TSSOP
CASE 948F
E1
•
16-LEAD QFN
CASE 1679
SCL
•
•
•
•
1.8 V to 3.6 V operation
41 µA average supply current with 1 s response time
2 µA Standby Current
Variable low power mode response time (32 ms – 4 s)
Rejects unwanted multi-key detections from EMI events such as PA
bursts or user handling
Ongoing pad analysis and detection is not reset by EMI events
Data is buffered in a FIFO for shortest access time
IRQ output advises when FIFO has data
System can set interrupt behavior as immediate after event, or
program a minimum time between successive interrupts
Current rotary position is always available on demand for pollingbased systems
Sounder output can be enabled to generate key-click sound when
rotary is touched
Two hardware selectable I2C addresses allowing two devices on a
single I2C bus
Configurable real-time auto calibration
5 mm x 5 mm x 1 mm 16 lead QFN package
-40°C to +85°C operating temperature range
SDA
•
•
•
•
•
1
16
2
15
3
14
4
MPR083
13
5
12
6
11
7
10
8
9
E8
E1
E2
E3
E4
E5
E6
E7
E8
Figure 1. Pin Connections
1
Device Overview
1.1
Introduction
Freescale Semiconductor’s MPR083 proximity capacitive touch sensor controller is one of a family of products designed to detect
the state of capacitive touch pads. The MPR083 offers designers a cost-efficient alternative to mechanical rotary switches for
control panel applications.
The MPR083 uses an I2C interface to communicate with the host which configures the operation and an interrupt to advise the
host of status changes. The MPR083 includes a piezo sounder drive which provides audible feedback to simulate mechanical
key clicks. The MPR08X family has several implementations to use in your design including control panels and switch
replacements. The MPR083 controls rotary and linear sliders. Other members of the MPR08X family are well suited for other
application interface situations such as individual touch pads or rotary/touch pad combinations.
Freescale offers a broad portfolio of proximity sensors for products ranging from appliance control panels to portable electronics.
Target markets include consumer, appliance, industrial, medical and computer peripherals.
1.1.1
Devices in the MPR08X series
The MPR08X series of Proximity Capacitive Touch Sensor Controllers allows for a wide range of applications and
implementations. Each of the products in Table 1 perform a different application specific task and are optimized for this specific
functionality.
Table 1. MPR08X family Overview
Product
Bus
Sounder
Rotary/Slider
Touch Pad Array
MPR083
I2C
Yes
8-positions
—
MPR084
I2C
Yes
—
8 keys
1.1.2
Internal Block Diagram
SET
RATE
CLEAR
SDA
SCL
ATTN
I2C
SERIAL
INTERFACE
AD0
SOUNDER
SOUNDER
DRIVER
CONTROLLER
ROTARY
POSITION
ROTARY
POSITION
8
8
8
CAPACITANCE MEASUREMENT A.F.E.
INTERRUPT
CONTROLLER
EMI BURST/NOISE REJECT FILTER
IRQ
CONFIGURATION AND STATUS REGISTERS
MASKS
MAGNITUDE COMPARATOR AND RECALIBRATOR
The MPR083 consists of primary functional blocks; Interrupt Controller, I2C Serial Interface, Sounder Controller, Configuration
and Status registers, Rotary Position Decoder, Magnitude Comparator and Recalibrator, EMI Burst/Noise Rejection Filter,
Capacitance Measurement Analog Front End. Each of these blocks will be described in detail in their respective sections.
1
2
8
3
7
6
4
5
8 POSITION ROTARY
Figure 2. Functional Block Diagram
MPR083
Preliminary
2
Sensors
Freescale Semiconductor
1.1.3
Terminology
The following terms are used to describe front panel interface and capacitive touch sensor technology throughout this document.
Table 2. Terminology
Term
Definition
Touch Sensor
A Touch Sensor is the combination of a Touch Sensor Controller and a connected conductive area
referred to as an electrode.
Touch Sensor Controller
A Touch Sensor Controller is the intelligent part of a Touch Sensor which measures capacitance and
differentiates between touched and untouched pads.
Key
A Key or Switch is a mechanical device that makes an electrical connection only when pressed.
Touch Pad
A Touch Pad is a type of capacitive sensor that is used for direct replacement of a Key. A capacitive
touch sensor determines touch state by differentiating between high and low capacitances. When
there is a change in the state this can be interpreted in the same way as a mechanical Key.
Encoder
An Encoder is a group of touch pads arranged in a circular shape where the state of each touch pad
is used to determine the direction of rotation around the touch pads.
Rotary
A Rotary is a group of touch pads arranged in a circular shape where the state of each touch pad is
interpreted as an angle along the touch pads.
Slider
A Slider is a group of touch pads arranged in a row where the state of each touch pad is used to
determine the position along the length of the touch pads.
Solid Pad
A Solid or Full Pad is a type of touch pad where exactly one electrode is used
Split Pad
A Split Pad is a type of touch pad where more than one electrode is used. Split Pads are used to
increase the total number of possible touch pads without increasing the electrical connections to the
Touch Sensor Controller.
N-key Lockout
N-Key Lockout refers to the logic that determines how many keys can be simultaneously touched in
a system. For example, 1-key lockout would only allow a single key to be touched before ignoring
all future touches.
N-key rollover
N-Key Rollover refers to the logic that determines how many keys can be pressed in succession
without releasing previous keys. For example, a system with 1-key lockout and 2-key rollover would
allow 2-keys to be pressed in succession but would only report the second key once the first key
was released.
I2C
Inter-Integrated Circuit Communication
MPR083
Sensors
Freescale Semiconductor
Preliminary
3
2
External Signal Description
2.1
Device Pin Assignment
Table 3 shows the pin assignment for the MPR083. For a more detailed description of the functionality of each pin, refer to the
appropriate chapter.
Table 3. Device Pin Assignment
Pin
Name
Function
1
ATTN
Attention Pin. Input, active low when asserted sets the Configuration Register’s DCE bit high
allowing communication with the part.
2
IRQ
Interrupt Request Pin. Output, active-low, open-drain interrupt request signaling new events.
3
VDD
Positive Supply Voltage
4
VSS
Ground
5
SCL
I2C Serial Clock
6
SDA
I2C Serial Data
7
AD0
Address input. Low = slave address 0x4C. High = slave address 0x4D.
8
SOUNDER
9 - 16
E1, E2, E3, E4, E5,
E6, E7, E8
PAD
Exposed pad
Sounder driver output. Connect a piezo sounder from this output to ground. Output is push-pull
Rotary Electrode connections.
Exposed pad on package underside (QFN only). Connect to VSS.
E1
E2
E3
E4
The two packages available for the MPR083 are a 5x5mm 16 pin QFN and a 4x5mm 16 pin TSSOP. Both of the packages and
their respective pinouts are shown in Figure 3.
16
15
14
13
ATTN
1
16
E1
2
15
E2
IRQ
2
11 E6
VDD
3
14
E3
VDD
3
10 E7
VSS
4
13
E4
VSS
4
9
SCL
5
12
E5
SDA
6
11
E6
AD0
7
10
E7
SOUNDER
8
9
E8
5
6
7
8
SOUNDER
IRQ
AD0
12 E5
SDA
1
SCL
ATTN
E8
QFN
TSSOP
Figure 3. Package Pinouts
2.2
Recommended System Connections
The MPR083 Capacitive Touch Sensor Controller requires ten external passive components. When connecting the MPR083 in
a touch sensor system, the electrode lines must have pull-up resistors. The recommended value for these pull-ups is 780kΩ.
Some electrode arrays will require higher or lower values depending on the application.
In addition to the 8 resistors, a bypass capacitor of 1µF should always be used between the VDD and VSS lines and a 4.7 Ωk
pull-up resistor should be included on the IRQ.
MPR083
Preliminary
4
Sensors
Freescale Semiconductor
The remaining 5 connections are SCL, SDA, IRQ, ATTN, and SOUNDER. Depending on the specific application, each of these
control lines can be used by connecting them to a host system. In the most minimal system, the SCL and SDA must be connected
to a master I2C interface to communicate with the MPR083. All of the connections for the MPR083 are shown by the schematic
in Figure 4.
VDD
VDD
780kΩ 780kΩ
4.7kΩ
VDD
ATTN
IRQ
SCL
2
E2
3
E3
13
4
12
5
E5
11
6
E6
10
7
E7
9
8
E3
E4
E5
SDA
7
E6
AD0
SOUNDER 8
GND
E1
15
E2
14
3 VDD
4
5 SCL
6
SDA
1
E1
VSS
1μF
E7
SOUNDER
ELECTRODE
780kΩ 780kΩ 780kΩ ARRAY
16
1 ATTN
2
IRQ
780kΩ 780kΩ 780kΩ
E8
E4
E8
9
MPR083
GND
GND
8-POSITION
ROTARY
Figure 4. Recommended System Connections Schematic
Note that in this configuration the AD0 address line is tied high thus the slave address of the MPR083 0x4D. Alternatively the
address line can be pulled low if the host system needs the MPR083 to be on address 0x4C. This functionality can also be used
to incorporate two MPR083 devices in the same system.
2.3
Serial Interface
The MPR083 uses an I2C Serial Interface. The I2C protocol implementation and the specifics of communicating with the Touch
Sensor Controller are detailed in the following sections.
2.3.1
Serial-Addressing
The MPR083 operates as a slave that sends and receives data through an I2C 2-wire interface. The interface uses a serial data
line (SDA) and a serial clock line (SCL) to achieve bi-directional communication between master(s) and slave(s). A master
(typically a microcontroller) initiates all data transfers to and from the MPR083, and generates the SCL clock that synchronizes
the data transfer.
The MPR083 SDA line operates as both an input and an open-drain output. A pull-up resistor, typically 4.7kΩ, is required on SDA.
The MPR083 SCL line operates only as an input. A pull-up resistor, typically 4.7kΩ, is required on SCL if there are multiple
masters on the 2-wire interface, or if the master in a single-master system has an open-drain SCL output.
Each transmission consists of a START condition (Figure 5) sent by a master, followed by the MPR083’s 7-bit slave address plus
R/W bit, a register address byte, one or more data bytes, and finally a STOP condition.
SDA
tSU DAT
tLOW
SCL
tHD DAT
tSU STA
tBUF
tHD STA
tSU STO
tHIGH
tHD STA
ST ART
CONDIT ION
tR
tF
REPEAT ED ST ART
CONDIT ION
ST OP
CONDIT ION
ST ART
CONDIT ION
Figure 5. Wire Serial Interface Timing Details
MPR083
Sensors
Freescale Semiconductor
Preliminary
5
2.3.2
Start and Stop Conditions
Both SCL and SDA remain high when the interface is not busy. A master signals the beginning of a transmission with a START (S)
condition by transitioning SDA from high to low while SCL is high. When the master has finished communicating with the slave,
it issues a STOP (P) condition by transitioning SDA from low to high while SCL is high. The bus is then free for another
transmission.
SDA
DATA LINE STABLE
DATA VALID
SCL
CHANGE OF
DATA ALLOWED
Figure 6. Start and Stop Conditions
2.3.3
Bit Transfer
One data bit is transferred during each clock pulse (Figure 7). The data on SDA must remain stable while SCL is high.
SDA
SCL
S
P
START
CONDITION
STOP
CONDITION
Figure 7. Bit Transfer
2.3.4
Acknowledge
The acknowledge bit is a clocked 9th bit (Figure 8) which the recipient uses to handshake receipt of each byte of data. Thus each
byte transferred effectively requires 9 bits. The master generates the 9th clock pulse, and the recipient pulls down SDA during
the acknowledge clock pulse, such that the SDA line is stable low during the high period of the clock pulse. When the master is
transmitting to the MPR083, the MPR083 generates the acknowledge bit because the MPR083 is the recipient. When the
MPR083 is transmitting to the master, the master generates the acknowledge bit because the master is the recipient.
START
CONDITION
SCL
CLOCK PULSE FOR
ACKNOWLEDGEMENT
1
2
8
9
SDA
BY TRANSMITTER
SDA
S
BY RECEIVER
Figure 8. Acknowledge
MPR083
Preliminary
6
Sensors
Freescale Semiconductor
2.3.5
The Slave Address
The MPR083 has a 7-bit long slave address (Figure 9). The bit following the 7-bit slave address (bit eight) is the R/W bit, which
is low for a write command and high for a read command.
SDA
1
MSB
0
0
1
1
0
0
R/W
ACK
SCL
Figure 9. Slave Address
The MPR083 monitors the bus continuously, waiting for a START condition followed by its slave address. When a MPR083
recognizes its slave address, it acknowledges and is then ready for continued communication.
2.3.6
Message Format for Writing the MPR083
A write to the MPR083 comprises the transmission of the MPR083’s keyscan slave address with the R/W bit set to 0, followed
by at least one byte of information. The first byte of information is the command byte. The command byte determines which
register of the MPR083 is to be written by the next byte, if received. If a STOP condition is detected after the command byte is
received, then the MPR083 takes no further action (Figure 10) beyond storing the command byte. Any bytes received after the
command byte are data bytes.
Command byte is stored on receipt ofSTOP condition
D7
D6
D5
D4
D3
D2
D1
D0
acknowledge from MPR083
S
0
SLAVE ADDRESS
A
A
COMMAND BYTE
R/W
P
acknowledge from MPR083
Figure 10. Command Byte Received
Any bytes received after the command byte are data bytes. The first data byte goes into the internal register of the MPR083
selected by the command byte (Figure 11).
acknowledge from
MPR083
How command byte and data byte
map into MPR083's registers
D15 D14 D13 D12 D11 D10 D9
acknowledge from
MPR083
D8
D7
D6
D5
D4
D3
D2
D1
D0
acknowledge from MPR083
S
SLAVE ADDRESS
0
A
COMMAND BYTE
A
DATA BYTE
A
P
1 byte
R/W
auto-increment memory
word address
Figure 11. Command and Single Data Byte Received
If multiple data bytes are transmitted before a STOP condition is detected, these bytes are generally stored in subsequent
MPR083 internal registers because the command byte address generally auto-increments (Section 2.4).
2.3.7
Message Format for Reading the MPR083
The MPR083 is read using the MPR083’s internally stored command byte as address pointer, the same way the stored command
byte is used as address pointer for a write. The pointer generally auto-increments after each data byte is read using the same
rules as for a write (Section 6.4.1). Thus, a read is initiated by first configuring the MPR083’s command byte by performing a write
(Figure 12). The master can now read ‘n’ consecutive bytes from the MPR083, with the first data byte being read from the register
addressed by the initialized command byte.
MPR083
Sensors
Freescale Semiconductor
Preliminary
7
When performing read-after-write verification, remember to re-set the command byte’s address because the stored command
byte address will generally have been auto-incremented after the write (Section 2.4).
How command byte and data byte
map into MPR083's registers
acknowledge from
MPR083
acknowledge from
MPR083
D15 D14 D13 D12 D11 D10 D9 D8
D7 D6 D5 D4 D3 D2 D1 D0
acknowledge from MPR083
S
SLAVE ADDRESS
1
COMMAND BYTE
A
A
DATA BYTE
A
P
n bytes
R/W
auto-increment memory
word address
Figure 12. ‘n’ Data Bytes Received
2.3.8
Operation with Multiple Master
The application should use repeated starts to address the MPR083 to avoid bus confusion between I2C masters.On a I2C bus,
once a master issues a start/repeated start condition, that master owns the bus until a stop condition occurs. If a master that does
not own the bus attempts to take control of that bus, then improper addressing may occur. An address may always be rewritten
to fix this problem. Follow I2C protocol for multiple master configurations.
2.3.9
Device Reset
The RST is an active-low software reset. This is implemented in the Configuration Register by activating the RST bit. When
asserted, the device clears any transaction to or from the MPR083 on the serial interface and configures the internal registers to
the same state as a power-up reset (Table 4). The MPR083 then waits for a START condition on the serial interface.
The sensor controller is capable of operating down to 1.8 V, however, in order for the sensor controller to exit reset and startup
correctly the host system must initially provide 2.0 V to 3.6 V input to VDD and then follow the process in Figure 13. This process
is required in applications that require regulated operation in the 1.8 V to 2.0 V range. In the case that the application uses an
unregulated battery, then the battery must initially provide at least 2.0 V to correctly power-up the sensor controller which limits
battery selection to the 2.0 V to 3.6 V range.
Apply 2.0V to VDD Max
To Sensor Controller
Idle Delay Loop
False
Established Comms with
Sensor Controller?
i.e. Read from FIFO
Is Data valid? (0 x 40)
True
Lower VDD to the desired operating voltage
1.8 V to 2.0 V
Figure 13. Low Voltage (1.8 V - 2.0 V) Power-up Sequence
MPR083
Preliminary
8
Sensors
Freescale Semiconductor
2.4
Register Address Map
The MPR083 is a peripheral that is controlled and monitored though a small array of internal registers which are accessed
through the I2C bus. When communicating with the MPR083 each of the registers in Table 4 are used for specific tasks. The
functionality of each specific register is detailed in the following sections.
Table 4. Register Address Map
Register Address
Burst Mode
Auto-Increment Address
FIFO Register
0x00
0x00
Fault Register
0x01
0x02
Rotary Status Register
0x02
0x00
Rotary Configuration Register
0x03
0x04
Sensitivity Threshold Register
0x04
0x05
Master Tick Period Register
0x05
0x06
Touch Acquisition Sample Period Register
0x06
0x07
Sounder Configuration Register
0x07
0x08
Low Power Configuration Register
0x08
0x09
Stuck Key Timeout Register
0x09
0x0A
Configuration Register
0x0A
0x00
Sensor Information Register
0x0B
0x0B
Register
MPR083
Sensors
Freescale Semiconductor
Preliminary
9
3
Touch Detection
3.1
Introduction
When using a capacitive touch sensor system the raw data must be filtered and interpreted. This process can be done many
different ways but the method used in the MPR083 is explained in this chapter.
3.2
Understanding the Basics
The rotary interface has to distinguish touch status through varying user conditions (different finger sizes in bare hands or gloves)
and environmental conditions (electrical and RF noise, sensor contamination with dirt or moisture).
The rotary circuitry reports touch status as one of the following two conditions:
1.
2.
Rotary untouched
Rotary touched in one of eight positions.
The rotary is only touched in one position, ideally near the middle of one of the eight pads. If a touch occurs between pads,
untouched will be reported.
3.3
Conditional Output Scenarios
Since it is unlikely that in a real world case a single independent touch will occur two specific multi-touch response cases are
outlined. Methods for changing the sensitivity of the device will be discussed in another Chapter, but the important part is that the
sensitivity is determined by the strength of an input signal. If more than one input signal is above the selected sensitivity then the
touch sensor controller interprets this in a specific way. This functionality is broken down into two different cases.
3.3.1
Simultaneous Touches
Any time two touches are detected at the same time the touch sensor controller recognizes this case and accounts for it. Any
time more than one key is pressed the touches are ignored. Thus the touch sensor controller will show the rotary as untouched.
In most cases one of the two electrodes will receive a stronger signal than the other. If the difference in capacitance is statistically
significant between the pad with the stronger signal will be reported.
This functionality is sometimes called 1-Key Lockout.
3.3.2
Sequential Touches
Another case is when one rotary pad is touched and held and a second rotary pad is then touched and held. For this situation
the second touch will be ignored and the first touch will continue to be reported.
If the second touch is released before the first touch then the second touch will be completely ignored. But, if the first touch is
released before the second then the system will report that the first key is released and that the second key is now touched. This
functionality is sometimes called 2-Key Rollover.
3.4
Rotary Configuration Register
The Rotary Configuration Register configures a variety of the MPR083 features. Each of these features is described in following
sections. The I2C slave address of the Rotary Configuration Register is 0x03.
7
R
W
Reset:
RSE
1
6
5
0
0
0
0
4
3
2
ACE
RRBE
RTBE
0
0
0
1
0
0
0
RE
1
= Unimplemented
Figure 14. Rotary Configuration Register
MPR083
Preliminary
10
Sensors
Freescale Semiconductor
Table 5. Rotary Configuration Register Field Descriptions
Field
Description
7
RSE
Rotary Sounder Enable – The Rotary Sounder Enable bit controls if data is sent to
the sounder.
0 Disable – Click Feedback Off
1 Enable – Click Feedback On
4
ACE
Auto Calibration Enable – The Auto Calibration Enable bit enables or disables the
auto calibration function.
0 Disable
1 Enable
3
RRBE
Rotary Release Buffer Enable – The Rotary Release Buffer Enable bit determines
whether or not data is logged in the FIFO when the rotary transitions from a touched
to untouched state.
0 Disable – No Release Data Logged
1 Enable – Release Data Logged
2
RTBE
Rotary Touch Buffer Enable – The Rotary Touch Buffer Enable bit determines
whether or not data is logged in the FIFO any time a button is pressed.
0 Disable – Touches are not logged
1 Enable – Touches are logged
0
RE
3.5
Rotary Enable – The Rotary Enable bit enables or disables the touch sensor. When
disabled, no touches are detected.
0 Disable – Touches not detected
1 Enable – Touches detected
Touch Acquisition Sample Period Register
The Touch Acquisition Sample Period Register is used to determine the electrode scan period of the system. The I2C slave
address of the Touch Acquisition Sample Period Register is 0x06.
7
6
5
4
R
2
1
0
0
0
0
1
TASP
W
Reset:
3
0
0
0
0
= Unimplemented
Figure 15. Touch Acquisition Sample Period Register
Table 6. Touch Acquisition Sample Register Field Description
Field
7:0
TASP
Description
Touch Acquisition Sample Period – The Touch Acquisition Sample Period Field
selects or reports the multiplication factor that is used to determine how often
electrodes are scanned. The resulting factor must be in the range 1 to 32. If the
value is outside of this range the TASP will be set to 00011111.
00000000 Encoding 0 – Sets the TASP multiplication factor to 1
~
00011111 Encoding 31 – Sets the TASP multiplication factor to 32.
MPR083
Sensors
Freescale Semiconductor
Preliminary
11
4
Modes of Operation
4.1
Introduction
The operating modes of the MPR083 are described in this section. Implementation and functionality of each mode are described.
The Modes of Operation of the MPR083 combine to form a suite of quick response and low power consumption functionality. This
is achieved through 2 Run modes and 2 Stop Modes. The two modes are enabled by toggling the Configuration Register’s DCE
and RUNE bits as shown in Table 7. Note that while in a run mode, the only register that can be written to is the Configuration
Register. Thus, when changes to registers are needed, enter Stop1 mode, write to the registers and change the mode to “Run”.
Table 7. Mode Enable Register Bits
4.2
Mode
RUNE
DCE
Run1
1
1
Run2
1
0
Stop1
0
1
Stop2
0
0
Initial Power Up
On power-up, the interrupt output IRQ is reset, and IRQ will go high. The registers are reset to the values shown in Table 8.
Table 8. Power-Up Register Configurations
Register Function
Power-Up Condition
Register Address
HEX Value
FIFO Register
FIFO is empty
0x00
0x40
Fault Register
No faults
0x01
0x00
Rotary Status Register
Rotary is untouched
0x02
0x00
Rotary Configuration Register
Rotary is enabled, without interrupts, with
sounder enabled and Auto-Cal Disabled
0x03
0x81
Sensitivity Threshold Register
Maximum sensitivity
0x04
0x00
Master Tick Period Register
Master clock period is 10ms
0x05
0x05
Touch Acquisition Sample Period
Register
TASP is 1 master tick period
0x06
0x01
Sounder Configuration Register
Sounder is globally enabled, 10ms of 1kHz
0x07
0x01
Low Power Configuration Register
Low Power Mode is disabled
0x08
0x00
Stuck Key Timeout Register
Stuck key detector disabled
0x09
0x00
Configuration Register
Stop1 Mode. IRQ is disabled
0x0A
0x14
Sensor Information Register
Fixed SensorInfo based on revision
0x0B
0xFF
MPR083
Preliminary
12
Sensors
Freescale Semiconductor
4.3
Run1 Mode
When in Run1 mode the sensor controller will run continuously. During Run1 all the modules are synchronized by the Master Tick
Period. This value can be set by using the Master Tick Period Register as outlined in the following section.
While in this mode all functionality of the MPR083 is enabled; touch detection will occur, and I2C communication will be available.
This mode is enabled by setting the Configuration Register’s RUNE and DCE bits high.
4.3.1
Master Tick Period Register
The Master Tick Period Register is used to set the master tick of this system. All parts of the system are synchronized to this
counter. This register is overridden in all modes except for Run1. When not in Run1 mode, the value of this register is ignored
and 8ms is used for the primary clock. The I2C slave address of the Master Tick Period Register is 0x05.
7
6
5
4
R
2
1
0
0
1
0
1
MTP
W
Reset:
3
0
0
0
0
= Unimplemented
Figure 16. Master Tick Period Register
Table 9. Master Tick Period Register Field Descriptions
Field
Description
7:0
Master Tick Period – The Master Tick Period selects or reports the current value of the
touch sensor controller’s primary clock multiplier. The resulting period must be in the
range 5ms to 31ms. If the value is outside of this range the MTP will be set to 00011010.
00000000 Encoding 0 – Sets the primary clock multiplier to 5
~
00011010 Encoding 26 - Sets the primary clock multiplier to 31
MTP
4.4
Run2 Mode
When in Run2 mode the sensor controller will continue to scan the electrodes but a low power state will be enabled between
each cycle. Because of this, any I2C communication that occurs, may or may not respond while the sensor is in this mode.
If DCE is enabled the sensor controller transitions between low power and active states. During the active part of the cycle
communication with the sensor controller is possible; however, Freescale always requires users to issue an ATTN signal prior to
initiating communications. Accessing the I2C interface while DCE mode is enabled without sending an ATTN signal first is likely
to produce invalid data.
This mode is enabled by setting the Configuration Register’s RUNE bit high and DCE bit low. The only way to exit this mode is
to toggle the Attention Pin, refer to Section 4.7.
4.5
Stop1 Mode
When in Stop1 mode the sensor controller will not scan the electrodes. While capacitance sensing is disabled I2C
communications will still be accepted and the sensor controller will maintain instantaneous response to all register requests. This
is the only mode in which register values can be set.
This mode is enabled by setting the Configuration Register’s RUNE bit low and DCE bit high.
4.6
Stop2 Mode
When in Stop2 mode the sensor controller will not scan the electrodes or accept I2C communication. The MPR083 is off during
this mode.
This mode is enabled by setting the Configuration Register’s RUNE bit low and DCE bit low. The only way to exit this mode is to
toggle the Attention Pin, refer to Section 4.7.
MPR083
Sensors
Freescale Semiconductor
Preliminary
13
4.7
Configuration Register
The Configuration Register allows a user to reset the part, adjust Interrupt settings, and change the mode. The I2C slave address
of the Configuration Register is 0x0A.
7
6
R
4
0
0
3
0
RST
W
Reset:
5
0
1
2
1
0
DCE
IRQEN
RUNE
1
0
0
0
= Unimplemented
Figure 17. Configuration Register
Table 10. Configuration Register Field Descriptions
4.8
Field
Description
7:5
IRQR
Interrupt Rate – The Interrupt Rate Field selects the amount to multiply the MTP by
to determine the minimum delay between sequential Interrupts.
000 Encoding 0 – Sets the IRQR multiplication factor to 1
~
111 Encoding 7 – Sets the IRQR multiplication factor to 8
4
RST
Reset – Asserts a global reset of the sensor controller.
0 Reset Asserted
1 Reset Not Asserted
2
DCE
Duty Cycle Enable – The Duty Cycle Enable bit enables or disables duty cycling on
the MPR083. This bit is active low.
0 Duty Cycle Enabled (2 modes)
1 Duty Cycle Disabled (1 modes)
1
IRQEN
Interrupt Enable – The Interrupt Enable bit enables or disables the IRQ
Functionality.
0 IRQ Disabled
1 IRQ Enabled
0
RUNE
Run Mode Enable – The Run Mode Enable bit enables or disables scanning of the
electrodes for touch detection. This bit is active high.
0 Electrode Scanning Disabled (Stop modes)
1 Electrode Scanning Enabled (Run modes)
Attention Pin
The Attention (ATTN) pin allows a user to externally set the Configuration Register’s DCE bit high. This is latched on a high to
low transition. Since the current mode of the device is enabled through the DCE this will cause duty cycling to be disabled and
change the current mode from Run2 to Run1, or Stop2 to Stop1 (depending on the previous state).
When in Run2 or Stop2 modes this is the only way to enable the I2C communication.
MPR083
Preliminary
14
Sensors
Freescale Semiconductor
5
Low Power Configuration
5.1
Introduction
The MPR083 features a Low Power mode that can reduce the power consumption into the microamps range. This feature can
be used to both adjust the response time of the system, and change the conditions on which Low Power would be enabled.
5.2
Operation
This Low Power configuration is only active when the sensor controller is in Run2 mode. The Low Power mode decreases current
consumption by increasing the response time of the MPR083. This increase is controlled through two factors.
During normal Run2 operation of the sensor controller the Max Response Time (MRT) is calculated by taking the product of the
TASP and the primary clock. From Chapter 4 the primary clock is the (MTP + 5) ms. Since the sensor controller is in Run2, the
primary clock is also multiplied by a factor of 8. The debounce rate of the MPR083 is 4 times the sample rate thus the MRT is
represented by the following equation.
+ 5- + 1⎞ × TASP × 4 × 8ms
MRT 1 = ⎛ MTP
--------------------⎝
⎠
8
Equation 1
First, the Idle Interface Timeout (IIT) represents the total time the touch interface should remain idle before going into Low Power
mode. This value can be calculated by taking the product of the ITP, TASP and primary clock (8ms) with a factor of 64. Thus the
IIT is represented as follows:
MTP + 5
MRT 2 = ⎛ ---------------------- + 1⎞ × TASP × SCD × 4 × 8 ms
⎝
⎠
8
Equation 2
Second, the Max Response Time (MRT) represents the total time the touch interface should remain inactive before scanning the
electrodes. This value can be calculated by taking the product of the SCD, TASP and primary clock (8ms) with a factor of 5. Thus
the MRT is represented as follows:
+ 5- + 1⎞ × TASP × ITP × 6 × 8ms
ITT = ⎛⎝ MTP
--------------------⎠
8
Equation 3
When in Run2 mode, the sensor controller will initially scan the electrodes at the rate of MRT1. When scanning at MRT1 and the
touch interface remains idle for the IIT period then the scan period will change to MRT2. When scanning at MRT2 and a touch is
detected the scan rate will transition back to MRT1.
LP DISABLED
run2 SET
MRT1
ITT PERIOD
MRT2
TOUCH DETECTED
Figure 18. Low Power Scan Period Transition Diagram
MPR083
Sensors
Freescale Semiconductor
Preliminary
15
5.3
Configuration
Low Power Configuration is achieved through setting two values; the Idle Timeout Period and the Sleep Cycle Duration. This
functionality is described in the following section.
5.3.1
Low Power Configuration Register
The Low Power Configuration register is used to set both the Idle Timeout Period and Sleep Cycle Duration multiplication factors.
The I2C slave address of the Low Power Configuration Register is 0x08.
7
R
5
4
3
ITP
W
Reset:
6
0
0
2
1
0
0
0
SCD
0
0
0
0
= Unimplemented
Figure 19. Low Power Configuration Register
Table 11. Low Power Configuration Register Field Descriptions
Field
Description
7:5
ITP
Idle Timeout Period – The Idle Timeout Period selects the amount to multiply the
TASP (touch acquisition sample period) by to determine the idle interface timeout
(IIT) period of the sensor controller.
000 Encoding 0 – Disables Low Power Mode
001 Encoding 1 – Sets the ITP multiplication factor to 1
~
111 Encoding 7 – Sets the ITP multiplication factor to 7
4:0
SCD
Sleep Cycle Duration – The Sleep Cycle Duration Field selects the amount to
multiply the TASP (touch acquisition sample period) by to determine the Sleep
period of the sensor controller.
00000 Encoding 0 – Disables Low Power Mode
00001 Encoding 1 – Sets the SCD multiplication factor to 1
~
11111 Encoding 31 – Sets the SCD multiplication factor to 31
MPR083
Preliminary
16
Sensors
Freescale Semiconductor
6
Output Mechanisms
6.1
Introduction
The MPR083 has three primary methods for reporting data in addition to an IRQ output that is described in Chapter 7. The three
output systems are described in this section.
6.2
Instantaneous
The Instantaneous output shows the current status of the user interface. This information is displayed in terms of the current
rotary position that is touched. Only one touch can be shown at a time.
6.2.1
Rotary Status Register
The Rotary Status Register is a read only register for determining the current status of the rotary. The I2C slave address of the
Rotary Status Register is 0x02.
R
7
6
5
4
0
0
0
SF
0
0
0
0
3
2
1
0
0
0
CP
W
Reset:
0
0
= Unimplemented
Figure 20. Rotary Status Register
Table 12. Rotary Status Register Field Descriptions
6.3
Field
Description
4
SF
Status Flag – The Status Flag shows when the rotary is currently detecting a touch.
0 Rotary is not currently detecting a touch
1 Rotary is currently detecting a touch
3:0
CP
Current Position – The Current Position represents the electrode that is currently
being touched.
0000 Encoding 0 – Electrode 1 is currently touched
~
0111 Encoding 7 – Electrode 8 is currently touched
Buffered
The Buffered output is done through a FIFO. The FIFO will buffer every touch that occurs up to 30 values before the buffer
overflows and data is lost. Any time data is read from the FIFO it is pulled from the buffer and the next item becomes available.
The buffer can be cleared (NDF goes high) by either reading the last entry or attempting to write to the register.
The buffer settings are configured in the Rotary Configuration Register as described in Section 3.4.
6.3.1
FIFO Register
The FIFO Register is a read only register for determining the current status of the rotary. Any time a write is issued to this register
the buffer will be cleared. The I2C slave address of the FIFO Register is 0x00.
R
7
6
5
4
MDF
NDF
OF
TRF
0
1
0
0
3
2
1
0
0
0
BP
W
Reset:
0
0
= Unimplemented
Figure 21. FIFO Register
MPR083
Sensors
Freescale Semiconductor
Preliminary
17
Table 13. FIFO Register Field Descriptions
6.4
Field
Description
7
MDF
More Data Flag – The More Data Flag shows whether or not data will remain in the
buffer after the current read.
0 No Data Remaining
1 Data Remaining
6
NDF
No Data Flag – The No Data Flag shows whether or not there is currently data in
the buffer.
0 Buffer currently has data
1 Buffer does not currently have data
5
OF
Overflow Flag – The Overflow Flag shows whether or not an overflow has occurred.
If this flag is high then the most current data was lost.
0 No Overflow has occurred
1 Overflow has occurred
4
TRF
Touch Release Flag – The Touch Release Flag shows if the current buffer entry is
a touch or release of a pad.
0 Pad is released
1 Pad is touched
3:0
BP
Buffered Position – The Buffered Position represents the electrode number that is
currently being displayed by the buffer.
0000 Encoding 0 – Buffered touch of electrode 1
~
0111 Encoding 7 – Buffered touch of electrode 8
Error
The MPR083 can generate a fault under two conditions; an electrode is shorted to VDD, or an electrode is shorted to VSS. Once
a fault is asserted the sensor electrodes will no longer be scanned until the fault is cleared. In the event of multiple faults occurring
at the same time, the sensor controller will report the first fault that is detected during scanning.
6.4.1
Fault Register
The Fault Register is a read only register that shows the fault number under the current sensor conditions. Any write to the Fault
Register will clear the register, when in Stop mode. The Fault register cannot be cleared when the part is in a Run mode. The I2C
slave address of the Fault Register is 0x01.
R
7
6
5
4
3
2
0
0
0
0
0
0
0
0
0
0
0
0
1
0
FAULT
W
Reset:
0
0
= Unimplemented
Figure 22. Fault Register
Table 14. Fault Register Field Descriptions
Field
1:0
FAULT
Description
Fault – The Fault code represents the currently asserted fault condition.
00 Encoding 0 – No fault detected
01 Encoding 1 – Short to VSS detected
10 Encoding 2 – Short to VDD detected
MPR083
Preliminary
18
Sensors
Freescale Semiconductor
7
Interrupts
7.1
Introduction
The MPR083 has one interrupt output that is configured by registers and alerts the application when a touch or fault is detected.
When running in Run2 or Stop2 mode where I2C communication is not available this feature alerts the user to sensor touches.
7.2
Condition for Interrupt
There are two cases that latch the Interrupt buffered data available or fault detected.
7.2.1
Buffered Data Available
The interrupt for Buffered Data Available will only trigger when the NDF (No Data Flag) transitions from high to low. This signifies
that there is new data available in the buffer. The interrupt is deasserted on the first read/write of the FIFO Register and cannot
be reasserted for buffered data until the FIFO is empty (either by reading all the data, or clearing the buffer).
7.2.2
Fault Detected
The interrupt for a fault detected condition is triggered any time the Fault condition in the Fault Register transitions from zero to
non-zero. The interrupt is deasserted when the Fault Register is cleared (by writing to the Fault Register).
7.3
Settings
Interrupts are configured through I2C using the Configuration Register (Section 4.7). Two of the settings in this register will affect
the interrupt functionality.
The Interrupt Enable (IRQEN) must be set high for the IRQ to be enabled. When low, all interrupts will be ignored, and the IRQ
pin will never latch.
The Interrupt Rate (IRQR) sets the minimum delay between sequential triggered interrupts. The minimum interrupt period can be
calculated by taking the product of the (MTP + 5) and IRQR with a factor of 4. Thus, for the minimum setting an interrupt would
be triggered no more often than 4 times the master clock.
MinInterruptPeriod ( ms ) = ( MTP + 5 ) × IRQR × 4
Equation 4
If the MPR083 is using Run2, the minimum interrupt period would be represented by the following equation.
+ 5- + 1⎞ × 8 × I RQR × 4
MinInterruptPeriod ( ms ) = ⎛ MTP
--------------------⎝
⎠
8
7.4
Equation 5
IRQ Pin
The IRQ pin is an open-drain, latching interrupt output which requires an external pull-up resistor. The pin will latch down based
on the conditions in Section 6.2. The pin will reset when an I2C transmission reads/writes the appropriate register displaying
information about the source of the interrupt. Thus if the source is buffered data available then a FIFO Buffer read/write will clear
the IRQ pin. If the source is a fault detected then a write of the Fault Register will clear the pin.
MPR083
Sensors
Freescale Semiconductor
Preliminary
19
7.4.1
IRQ Pin Timing
The MinInterruptPeriod is implemented as a hold off of IRQ latching per Figure 23 and Figure 24. In the first case the
MinInterruptPeriod is longer than the interval between sequential interrupt source events, thus it delays the IRQ from latching
until the MinInterruptPeriod has elapsed.
Initial Interrupt Event
Second Interrupt Event
MinInterruptPeriod
IRQ
Figure 23. IRQ Timing Diagram - Case 1
In the second case the MinInterruptPeriod is shorter than the interval between sequential interrupt source events, thus the IRQ
latches as it normally would without additional delay.
Initial Interrupt Event
Second Interrupt Event
MinInterruptPeriod
IRQ
Figure 24. IRQ Timing Diagram - Case 2
MPR083
Preliminary
20
Sensors
Freescale Semiconductor
8
Calibration
8.1
Introduction
The MPR083 is self-calibrating. This is done both at initial start-up of the device and during run time.
8.2
Initial Start-up Conditions
Initial calibration of the MPR083 occurs every time the device resets. The first key detection cycle is used as a baseline
capacitance value for all remaining calculations. Thus, a touch is detected by taking the difference between this baseline value
and the current capacitance on the electrode.
8.3
Auto-Calibration
The MPR083 has an auto-calibration feature. This is enabled through the Rotary Configuration Register (Section 3.4), by setting
the ACE bit high. Auto calibration is done by two mechanisms. The basic auto-calibration will recalculate the baseline value after
6 sample periods. Thus the auto calibrate period can be calculate by multiplying the master clock period (in milliseconds) and the
touch acquisition sample period with a factor of 64.
AutoCalibrationPeriod ( ms ) = MCP × TASP × 64
Equation 6
If a touch is currently being detected the auto-calibration will not engage and calibration will be ignored. The device can also be
calibrated when a key is being touched, this is controlled by stuck key detection.
8.4
Stuck Key Detection
The Stuck Key Detection system allows the application to specify the maximum amount of time a touch should be detected before
it is calibrated into the baseline and the touch is ignored. This is controlled by setting the Stuck Key Timeout multiplication factor
(SKT). The timeout period can be calculated by multiplying the SKT, master clock period (in ms) and touch acquisition sample
period with a factor of 64.
AutoCalibrationPeriod ( ms ) = MCP × TASP × SKT × 64
Equation 7
When Stuck Key Detection is off a touched key will remain touched indefinitely and never be calibrated into the baseline value.
8.4.1
Stuck Key Timeout Register
The Stuck Key Timeout Register is used to determine the electrode scan period of the system. The I2C slave address of the Stuck
Key Timeout Register is 0x09.
7
6
5
4
R
2
1
0
0
0
0
0
SKT
W
Reset:
3
0
0
0
0
= Unimplemented
Figure 25. Stuck Key Timeout Register
Table 15. Stuck Key Timeout Register Field Descriptions
Field
Description
7:0
SKT
Stuck Key Timeout – The Stuck Key Timeout field selects or reports the
multiplication factor that is used to determine how often electrodes are calibrated
while a touch is being detected.
00000000 Encoding 0 – Turns off Stuck Key Detection
00000001 Encoding 1 – Sets the SKT multiplication factor to 2
~
11111111 Encoding 255 – Sets the SKT multiplication factor to 256
MPR083
Sensors
Freescale Semiconductor
Preliminary
21
9
Sensitivity
9.1
Introduction
The MPR083 can operate in a variety of environments with a variety of different electrode patterns. Because of this it is necessary
to adjust the relative sensitivity of the sensor controller. Usually this requires fine tuning in any final application.
There are many factors that must be taken into account, but much of the time this value is relative to the capacitance changes
generated by a touch. Since capacitance is directly proportional to the dielectric constant of the material and the area of the pad,
while inversely proportional to the distance between pads these are the primary factors.
ke 0 A
C = ----------d
Equation 8
As the relative capacitance rises the sensitivity setting of the MPR083 should be adjusted accordingly. Thus a very high sensitivity
value represents a large A and a small d.
9.2
Adjusting the Sensitivity
The sensitivity of the MPR083 is adjusted by varying the Sensitivity Threshold Register.
9.2.1
Sensitivity Threshold Register
The sensitivity register allows the sensitivity of the MPR083 to be adjusted for any situation. The I2C slave address of the
Sensitivity Threshold Register is 0x04.
7
6
5
4
R
2
1
0
0
0
0
0
SL
W
Reset:
3
0
0
0
0
= Unimplemented
Figure 26. Sensitivity Threshold Register
Table 16. Sensitivity Threshold Register Field Descriptions
Field
Description
7:0
ST
Sensitivity Threshold – The Sensitivity Threshold selects or reports the sensitivity
setting of the Sensor Controller. The resulting value must be in the range 1 to 64
units. If the value is outside of this range the ST will be set to 00111111.
00000000 Encoding 0 – Sets the sensitivity to level 1
~
00111111 Encoding 63 – Sets the sensitivity to level 64
MPR083
Preliminary
22
Sensors
Freescale Semiconductor
10
Additional Features
10.1
Key Click Sound Generator
The Key Click Sound Generator allows the MPR083 to generate audible feedback, independent of the I2C communication status.
The sounder is used to drive a piezo buzzer. This output is configured by using the Sounder Register, shown in the following
section.
10.1.1 Sounder Configuration Register
The I2C slave address of the Sounder Configuration Register is 0x07.
R
7
6
5
4
3
0
0
0
0
0
0
0
0
0
0
W
Reset:
2
1
0
CP
FREQ
SEN
0
0
1
= Unimplemented
Figure 27. Sounder Configuration Register
Table 17. Sounder Configuration Register Field Descriptions
Field
Description
2
CP
Click Period – The Click Period bit controls the length of the sounder click.
0 Sounder Click Period is 10ms
1 Sounder Click Period is 20ms
1
FREQ
Frequency – The Frequency bit controls the frequency of the driven output.
0 Sounder frequency is 1kHz
1 Sounder frequency is 2kHz
0
SEN
10.2
Sounder Enable – The Sounder Enable bit enables or disables the sounder output.
0 Disable
1 Enable
Sensor Information
The Sensor Information register is a read only register that displays a descriptor which contains static information about the
MPR083 version.
10.2.1 Sensor Information Register
The I2C slave address of the Sensor Information Register is 0x0B.
7
6
5
R
4
3
2
1
0
1
1
0
SensorInfo
W
Reset:
0
1
0
0
0
= Unimplemented
Figure 28. Sensor Information Register
Table 18. Sensor Information Register Field Descriptions
Field
Description
7-0
SensorInfo
SensorInfo – The Sensor Information register describes the version information for
the part. Burst reads will display ASCII data in the following format:
VENDOR_LABEL",PN:"PRODUCT_LABEL",QUAL:"BUILD_TYPE_LABEL",VER:"
BUILD_VERSION_MAJOR"_"BUILD_VERSION_MINOR"_"BUILD_NUMBER"\0"
MPR083
Sensors
Freescale Semiconductor
Preliminary
23
Appendix A Electrical Characteristics
A.1
Introduction
This section contains electrical and timing specifications.
A.2
Absolute Maximum Ratings
Absolute maximum ratings are stress ratings only, and functional operation at the maxima is not guaranteed. Stress beyond the
limits specified in Table A-1 may affect device reliability or cause permanent damage to the device. For functional operating
conditions, refer to the remaining tables in this section. This device contains circuitry protecting against damage due to high static
voltage or electrical fields; however, it is advised that normal precautions be taken to avoid application of any voltages higher
than maximum-rated voltages to this high-impedance circuit.
Table 19. Absolute Maximum Ratings - Voltage (with respect to VSS)
Rating
Symbol
Value
Unit
Supply Voltage
VDD
-0.3 to +3.8
V
Input Voltage
SCL, SDA, AD0, IRQ, ATTN,
SOUNDER
VIN
VSS - 0.3 to VDD + 0.3
V
Operating Temperature Range
TSG
-40 to +85
°C
Storage Temperature Range
TSG
-55 to +150
°C
A.3
ESD and Latch-up Protection Characteristics
Normal handling precautions should be used to avoid exposure to static discharge.
Qualification tests are performed to ensure that these devices can withstand exposure to reasonable levels of static without
suffering any permanent damage. During the device qualification ESD stresses were performed for the Human Body Model
(HBM), the Machine Model (MM) and the Charge Device Model (CDM).
A device is defined as a failure if after exposure to ESD pulses the device no longer meets the device specification. Complete
DC parametric and functional testing is performed per the applicable device specification at room temperature followed by hot
temperature, unless specified otherwise in the device specification.
Table 20. ESD and Latch-up Test Conditions
Rating
Symbol
Value
Unit
Human Body Model (HBM)
VESD
±2000
V
Machine Model (MM)
VESD
±200
V
Charge Device Model (CDM)
VESD
±500
V
Latch-up current at TA = 85°C
ILATCH
±100
mA
MPR083
Preliminary
24
Sensors
Freescale Semiconductor
A.4
DC Characteristics
This section includes information about power supply requirements and I/O pin characteristics.
Table 21. DC Characteristics (Temperature Range = –40°C to 85°C Ambient)
(Typical Operating Circuit, VDD = 1.8 V* to 3.6 V, TA = TMIN to TMAX, unless otherwise noted. Typical Current values are at VDD = 3.3 V,
TA = +25°C.)
Parameter
Operating Supply Voltage
Symbol
VDD
Conditions
Run1 mode Current
Irun1
VDD = 1.8 V
1.62
mA
Run2 mode Current
Irun2
VDD = 1.8 V
41
µA
Stop1 mode Current
Istop1
VDD = 1.8 V
1.47
mA
Stop2 mode Current
Istop2
VDD = 1.8 V
2
µA
Input High Voltage
SDA, SCL
Input Low Voltage
SDA, SCL
Input Leakage Current
SDA, SCL
Input Capacitance
SDA, SCL
Output Low Voltage
SDA, IRQ
Min
1.8*
Typ
Units
V
0.7 x VDD
VIH
V
VIL
IIH, IIL
VOL
Max
3.6
0.025
IOL = 6mA
0.35 x VDD
V
1
µA
7
pF
0.5V
V
*The MPR083 requires a specific start-up sequence for VDD< 2.0 V. Refer to Section 2.3.9.
A.5
I2C AC Characteristics
This section includes information about I2C AC Characteristics.
Table 22. I2C AC Characteristics
(Typical Operating Circuit, VDD = 1.8 V to 3.6 V, TA = TMIN to TMAX, unless otherwise noted. Typical values are at VDD = 3.3 V,
TA = +25°C.)
Parameter
Symbol
fSCL
(1)
Serial Clock Frequency
Capacitive Load for Each Bus Line
Cb
Conditions
Min
Typ
Max
100
Units
kHz
400
pF
1. Clock Stretching is required for reliable communications
MPR083
Sensors
Freescale Semiconductor
Preliminary
25
Appendix B Brief Register Descriptions
FIFO Register: 0x00
R
7
6
5
4
3
MDF
NDF
OF
TRF
0
1
0
0
0
2
1
0
0
0
0
1
0
BP
W
Reset:
= Unimplemented
Fault Register: 0x01
R
7
6
5
4
3
2
0
0
0
0
0
0
0
0
0
0
0
0
3
2
FAULT
W
Reset:
0
0
1
0
= Unimplemented
Rotary Status Register: 0x02
R
7
6
5
4
0
0
0
SF
0
0
0
0
0
0
0
0
4
3
2
1
0
ACE
RRBE
RTBE
0
0
0
0
1
4
3
2
1
0
0
0
0
0
0
4
3
2
1
0
0
1
0
1
CP
W
Reset:
= Unimplemented
Rotary Configuration Register: 0x03
7
R
W
Reset:
RSE
1
6
5
0
0
0
0
0
RE
= Unimplemented
Sensitivity Threshold Register: 0x04
7
6
5
R
SL
W
Reset:
0
0
0
= Unimplemented
Master Tick Period Register: 0x05
7
6
5
R
MTP
W
Reset:
0
0
0
0
= Unimplemented
MPR083
Preliminary
26
Sensors
Freescale Semiconductor
Touch Acquisition Sample Period Register: 0x06
7
6
5
4
3
2
1
0
0
0
0
0
1
2
1
0
CP
FREQ
SEN
R
TASP
W
Reset:
0
0
0
= Unimplemented
Sounder Configuration Register: 0x07
R
7
6
5
4
3
0
0
0
0
0
0
0
0
0
0
0
0
1
4
3
2
1
0
W
Reset:
= Unimplemented
Low Power Configuration Register: 0x08
7
R
5
ITP
W
Reset:
6
0
SCD
0
0
0
0
0
0
0
4
3
2
1
0
0
0
0
0
0
4
3
2
1
0
DCE
IRQEN
RUNE
= Unimplemented
Stuck Key Timeout Register: 0x09
7
6
5
R
SKT
W
Reset:
0
0
0
= Unimplemented
Configuration Register: 0x0A
7
6
R
0
RST
W
Reset:
5
0
0
0
1
0
1
0
0
4
3
2
1
0
0
0
1
= Unimplemented
Sensor Information Register: 0x0B
7
6
5
R
SensorInfo
W
Reset:
0
0
0
0
0
= Unimplemented
MPR083
Sensors
Freescale Semiconductor
Preliminary
27
Appendix C Ordering Information
C.1
Ordering Information
This section contains ordering information for MPR083Q and MPR083EJ devices.
ORDERING INFORMATION
Device Name
Temperature Range
MPR083Q
MPR083EJ
C.2
-40°C to +85°C
Case Number
1679
(16-Lead QFN)
948F
(16-Lead TSSOP)
Rotary Slider
8-Positions
Device Numbering Scheme
All Proximity Sensor Products have a similar numbering scheme. The below diagram explains what each part number in the
family represents.
M
PR EE
X
P
Package Designator
(Q = QFN, EJ = TSSOP)
Status
(M = Fully Qualified, P = Preproduction)
Version
Proximity Sensor Product
Number of Electrodes
(08 = 8 electrode device)
MPR083
Preliminary
28
Sensors
Freescale Semiconductor
PACKAGE DIMENSIONS
PAGE 1 OF 3
MPR083
Sensors
Freescale Semiconductor
Preliminary
29
PACKAGE DIMENSIONS
PAGE 2 OF 3
MPR083
Preliminary
30
Sensors
Freescale Semiconductor
PACKAGE DIMENSIONS
PAGE 3 OF 3
MPR083
Sensors
Freescale Semiconductor
Preliminary
31
PACKAGE DIMENSIONS
PAGE 1 OF 3
MPR083
Preliminary
32
Sensors
Freescale Semiconductor
PACKAGE DIMENSIONS
PAGE 2 OF 3
MPR083
Sensors
Freescale Semiconductor
Preliminary
33
PACKAGE DIMENSIONS
PAGE 3 OF 3
MPR083
Preliminary
34
Sensors
Freescale 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
Europe, Middle East, and Africa:
Freescale Halbleiter Deutschland GmbH
Technical Information Center
Schatzbogen 7
81829 Muenchen, Germany
+44 1296 380 456 (English)
+46 8 52200080 (English)
+49 89 92103 559 (German)
+33 1 69 35 48 48 (French)
www.freescale.com/support
Japan:
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
[email protected]
Asia/Pacific:
Freescale Semiconductor China Ltd.
Exchange Building 23F
No. 118 Jianguo Road
Chaoyang District
Beijing 100022
China
+86 10 5879 8000
[email protected]
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
[email protected]
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.
© Freescale Semiconductor, Inc. 2008. All rights reserved.
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.
MPR083
Rev. 4
10/2008