Rev. 1.0
73
C8051F80x-83x
Figure 13.2. Auto-Scan Example
13.4. CS0 Comparator
The CS0 comparator compares the latest capacitive sense conversion result with the value stored in
CS0THH:CS0THL. If the result is less than or equal to the stored value, the CS0CMPF bit(CS0CN:0) is set
to 0. If the result is greater than the stored value, CS0CMPF is set to 1.
If the CS0 conversion accumulator is configured to accumulate multiple conversions, a comparison will not
be made until the last conversion has been accumulated.
An interrupt will be generated if CS0 greater-than comparator interrupts are enabled by setting the ECS-
GRT bit (EIE2.1) when the comparator sets CS0CMPF to 1.
If auto-scan is running when the comparator sets the CS0CMPF bit, no further auto-scan initiated conver-
sions will start until firmware sets CS0BUSY to 1.
A CS0 greater-than comparator event can wake a device from suspend mode. This feature is useful in sys-
tems configured to continuously sample one or more capacitive sense channels. The device will remain in
the low-power suspend state until the captured value of one of the scanned channels causes a CS0
greater-than comparator event to occur. It is not necessary to have CS0 comparator interrupts enabled in
order to wake a device from suspend with a greater-than event.
Note:
On waking from suspend mode due to a CS0 greater-than comparator event, the CS0CN register
should be accessed only after at least two system clock cycles have elapsed.
For a summary of behavior with different CS0 comparator, auto-scan, and auto accumulator settings,
SFR Configuration:
A
D
A
D
A
P0.0
. . .
PxM
D
IN
b
it
Po
rt
Pin
0
CS
0M
X
C
han
nel
P0.1
1
P0.2
2
P0.3
3
P0.4
4
P0.5
5
P0.6
6
P0.7
7
P1.0
8
P1.1
9
P1.2
10
P1.3
11
P1.4
12
P1.5
13
P1.6
14
P1.7
15
CS0SS = 0x02
CS0SE = 0x0D
P0MDIN = 0xF2
P1MDIN = 0x04
CS0CF = 0x70
CS0CN = 0x80
Enables Capsense0
Enables Auto-scan
as start-of-
conversion source
Sets P0.2 as Auto-
scan starting channel
Sets P1.5 as Auto-
scan ending channel
Configures P0.3,
P0.2, P0.0 as analog
inputs
Configures P1.0-P1.1
and P1.3-P1.7 as
analog inputs
Scans on channels
not configured as
analog inputs result
in indeterminate
values that cannot
trigger a CS0
Greater Than
Interrupt event