
MPR121
Sensors
Freescale Semiconductor, Inc.
19
With above mentioned, one possible example setting is given out below using equation 1~3, with the assumption that setting TL
at 90% of USL, and LSL at 65% of USL would cover most of the application case. It may need further adjustment in some cases
but will be a very good start.
USL = (VDD - 0.7)/VDD x 256
Eqn. 1
TL = USL x 0.9 = (VDD - 0.7)/VDD x 256 x 0.9
Eqn. 2
LSL = USL x 0.65 = (VDD-0.7) / VDD x 256 x 0.65
Eqn. 3
Cin = I x T / V = CDC x CDT / (ADC counts x VDD/1024)
Eqn. 4
It may not necessary to set the USL at the level of VDD - 0.7 but it is beneficial to keep the applied constant charge current as
accurate as that specified in the data sheet. This so the capacitance value on the input can be calculated with high accuracy
using ADC conversion
Equation 4. Using VDD-0.7 as USL level allows some headroom for applications where the supply varies
over a certain range. For a system where the supply changes over a range, the lowest VDD point is considered for
autoconfiguration so that a relative lower charge field can be used to avoid clipping the electrode data to VDD when it drops.
5.12
Out-Of-Range Status Registers (0x02, 0x03)
Ex_OOR, EPROX_OOR: Out-Of-Range Status bits for the 13 channels. This bit set indicates that a corresponding channel has
failed autoconfiguration and autoreconfiguration for range check. Those bits are cleared when they pass the auto-configuration
and auto-reconfiguration range check. These bits are user read only.
ACFF: Auto-Configuration Fail Flag. When autoconfiguration fails, this bit is set. This bit is user read only.
ARFF: Auto-Reconfiguration Fail Flag. When autoreconfiguration fails, this is bit set. This bit is user read only.
When autoconfiguration and/or autoreconfiguration are enabled, MPR121 checks the electrode data after each auto-
configuration, auto-reconfiguration operation to see if it is still in the range set by USL and LSL. When electrode data goes out of
the range, corresponding Ex_OORx bit becomes “1” to indicate the failed channels. One example of triggering OOR error is
shorting the measurement sensing pad to power rails, or shorting it with other channels.
5.13
Soft Rest Register (0x80)
Write 0x80 with 0x63 asserts soft reset. The soft reset does not effect the I2C module, but all others reset the same as POR.
5.14
GPIO Registers (0x73~0x7A)
ELE0~ELE7 OOR Status (0x02)
Bit
D7
D6
D5
D4
D3
D2
D1
D0
Read
E7_OOR
E6_OOR
E5_OOR
E4_OOR
E3_OOR
E2_OOR
E1_OOR
E0_OOR
Write
—
ELE8~ELEPROX OOR Status (0x03)
Bit
D7
D6
D5
D4
D3
D2
D1
D0
Read
ACFF
ARFF
—
EPROX_OOR
E11_OOR
E10_OOR
E9_OOR
E8_OOR
Write
—
GPIO Registers (0x73~0x7A)
GPIO Registers
D7
D6
D5
D4
D3
D2
D1
D0
Control Register 0(0x73)
GTL0_E11
GTL0_E10
GTL0_E9
GTL0_E8
GTL0_E7
GTL0_E6
GTL0_E5
GTL0_E4
Control Register 1(0x74)
GTL1_E11
GTL1_E10
GTL1_E9
GTL1_E8
GTL1_E7
GTL1_E6
GTL1_E5
GTL1_E4
Data Register(0x75)
DAT_E11
DAT_E10
DAT_E9
DAT_E8
DAT_E7
DAT_E6
DAT_E5
DAT_E4