MPR121
Sensors
Freescale Semiconductor, Inc.
15
These two registers set the global AFE settings. This includes global electrode charge/discharge current CDC, global charge/
discharge time CDT, as well as a common filtering setting (FFI, SFI, ESI) for all 13 channels, including the 13th Eleprox channel.
The register 0x5C holds the global CDC and the first level filter configuration for all 13 channels. For each enabled channel, the
global CDC will be used for that channel if the respective charge discharge current CDCx setting in 0x5F~0x6B for that channel
is zero. If it is not zero, the individual CDCx value will be used in place of the global CDC value. If the MPR121’s auto-configuration
feature is enabled, CDCx will be automatically set up during system start stage and used for the actual measurement.
The register 0x5D holds the global CDT and the second level filter configuration for all 13 channels. For each enabled channel,
the global CDT will be used for that channel if the respective charge discharge time CDTx setting in 0x6C~0x72 for that channel
is zero. If it is not zero, the individual CDTx value will be used in place of the global CDT value. If the SCTS bit (Skip Charge Time
Search) in the MPR121’s autoconfiguration is set, then the current global CDT and CDTx will be used for each channel
measurements. If not, then the individual CDTx will be automatically set up during the system start stage and used for the actual
measurement.
Using only the global CDC and/or global CDT is acceptable where the capacitance values from all 13 channels are similar. If the
electrode pattern, size, or even overlay and base material type changes from one channel to another, then using individual CDCx
(and CDTx) will have a better result on sensing sensitivity as each electrode is charged up to a point closing to the supply voltage
rail so that the highest sensing field is built for each channel.
The settings for the FFI, SFI, and ESI must be selected according to the system design noise filtering requirement. These settings
must also balance the need for power consumption and response time.
When the total time required by scanning and charging/discharge all the enabled channels is longer than the ESI setting, then
the actual time will override the ESI setting. For example if the ESI = 4 (16 mS), when FFI = 3 (34 samples), CDT = 7 (32
μS),
with all 13 channels enabled, the scan time needed is 34 x (32
μS + 32 μS) x 13 = 28 mS. This 28 mS will be the actual sampling
interval instead of ESI (16 mS).
5.9
Electrode Charge Current Register (0x5F~0x6B)
CDCx: Sets the charge current applied to each channel. Similar to global CDC value, the range is 0~63
μA, from 0x00~0x3F in
1
μA step. When the CDCx is zero, the global CDC value will be used for that channel.
The individual CDCx bit can either be set manually or automatically (if autoconfiguration is enabled). When the autoconfiguration
is enabled, during the first transition from Stop Mode to Run Mode, the system will automatically run a trial search for the
appropriate CDCx (and CDTx if SCTS = 0). The individual CDCx will be automatically updated by the MPR121 into the respective
registers once autoconfiguration is finished. CDCx is used in the following capacitance measurement and touch detection.
5.10
Electrode Charge Time Register (0x6C~0x72)
CDTx: Sets the charge time applied to each channel. Similar to the global CDT value, the range is 0~32
μS, from 2b000~2b111.
When the CDTx is zero, the global CDT value is used for that channel.
The individual CDTx bit can be set manually or automatically (if autoconfiguration is enabled). When autoconfiguration is enabled,
during the first transition from Stop Mode to Run Mode, the system will automatically run a trial search for the appropriate CDCx
(and CDTx if SCST = 0). This means the autoconfiguration will include a search on the CDTx. The individual CDTx will be
automatically updated by the MPR121 into the respective registers once the autoconfiguration is finished. This data is used in
the following capacitance measurement and touch detection. If SCTS bit is 1, the search on CDTx will be skipped.
Electrode Charge Current (0x5F~0x6B)
Bit
D7
D6
D5
D4
D3
D2
D1
D0
Read
—
CDCx
Write
—
Electrode Charge Time (0x6C~0x72)
Bit
D7
D6
D5
D4
D3
D2
D1
D0
Read
—
CDTx+1
—
CDTx
Write
—