Microchip Technology DM164134 Data Sheet
© 2006 Microchip Technology Inc.
DS41159E-page 249
PIC18FXX8
21.0
COMPARATOR MODULE
The comparator module contains two analog com-
parators. The inputs to the comparators are
multiplexed with the RD0 through RD3 pins. The on-chip
voltage reference (Section 22.0 “Comparator Voltage
Reference Module”) can also be an input to the
comparators.
parators. The inputs to the comparators are
multiplexed with the RD0 through RD3 pins. The on-chip
voltage reference (Section 22.0 “Comparator Voltage
Reference Module”) can also be an input to the
comparators.
The CMCON register, shown in Register 21-1, controls
the comparator input and output multiplexers. A block
diagram of the comparator is shown in Figure 21-1.
the comparator input and output multiplexers. A block
diagram of the comparator is shown in Figure 21-1.
REGISTER 21-1:
CMCON: COMPARATOR CONTROL REGISTER
Note:
The analog comparators are only
available on the PIC18F448 and
PIC18F458.
available on the PIC18F448 and
PIC18F458.
R-0
R-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
C2OUT
C1OUT
C2INV
C1INV
CIS
CM2
CM1
CM0
bit 7
bit 0
bit 7
C2OUT: Comparator 2 Output bit
When C2INV = 0:
1
1
= C2 V
IN
+ > C2 V
IN
-
0
= C2 V
IN
+ < C2 V
IN
-
When C2INV = 1:
1
1
= C2 V
IN
+ < C2 V
IN
-
0
= C2 V
IN
+ > C2 V
IN
-
bit 6
C1OUT: Comparator 1 Output bit
When C1INV = 0:
1
1
= C1 V
IN
+ > C1 V
IN
-
0
= C1 V
IN
+ < C1 V
IN
-
When C1INV = 1:
1
1
= C1 V
IN
+ < C1 V
IN
-
0
= C1 V
IN
+ > C1 V
IN
-
bit 5
C2INV: Comparator 2 Output Inversion bit
1
= C2 output inverted
0
= C2 output not inverted
bit 4
C1INV: Comparator 1 Output Inversion bit
1
= C1 output inverted
0
= C1 output not inverted
bit 3
CIS: Comparator Input Switch bit
When CM2:CM0 = 110:
1
1
= C1 V
IN
- connects to RD0/PSP0
C2 V
IN
- connects to RD2/PSP2
0
= C1 V
IN
- connects to RD1/PSP1
C2 V
IN
- connects to RD3/PSP3
bit 2-0
CM2:CM0: Comparator Mode bits
Figure 21-1 shows the Comparator modes and CM2:CM0 bit settings.
Legend:
R = Readable bit
W = Writable bit
U = Unimplemented bit, read as ‘0’
-n = Value at POR
‘1’ = Bit is set
‘0’ = Bit is cleared
x = Bit is unknown