PIC16F818/819
11.0
ANALOG-TO-DIGITAL
CONVERTER (A/D) MODULE
The A/D module has four registers:
•
•
•
•
A/D Result High Register (ADRESH)
A/D Result Low Register (ADRESL)
A/D Control Register 0 (ADCON0)
A/D Control Register 1 (ADCON1)
The Analog-to-Digital (A/D) converter module has five
inputs for 18/20 pin devices.
The conversion of an analog input signal results in a
corresponding 10-bit digital number. The A/D module
has a high and low-voltage reference input that is
software selectable to some combination of V
DD
, V
SS
,
RA2 or RA3.
The A/D converter has a unique feature of being able
to operate while the device is in Sleep mode. To oper-
ate in Sleep, the A/D conversion clock must be derived
from the A/D’s internal RC oscillator.
The ADCON0 register, shown in Register 11-1,
controls the operation of the A/D module. The
ADCON1 register, shown in Register 11-2, configures
the functions of the port pins. The port pins can be
configured as analog inputs (RA3 can also be a voltage
reference) or as digital I/Os.
Additional information on using the A/D module can be
found in the
“PICmicro
®
Mid-Range MCU Family
Reference Manual”
(DS33023).
REGISTER 11-1:
ADCON0: A/D CONTROL REGISTER 0 (ADDRESS 1Fh)
R/W-0
ADCS1
bit 7
R/W-0
ADCS0
R/W-0
CHS2
R/W-0
CHS1
R/W-0
CHS0
R/W-0
GO/DONE
U-0
—
R/W-0
ADON
bit 0
bit 7-6
ADCS1:ADCS0:
A/D Conversion Clock Select bits
If ADCS2 =
0:
00
= F
OSC
/2
01
= F
OSC
/8
10
= F
OSC
/32
11
= F
RC
(clock derived from the internal A/D module RC oscillator)
If ADCS2 =
1:
00
= F
OSC
/4
01
= F
OSC
/16
10
= F
OSC
/64
11
= F
RC
(clock derived from the internal A/D module RC oscillator)
CHS2:CHS0:
Analog Channel Select bits
000
= Channel 0 (RA0/AN0)
001
= Channel 1 (RA1/AN1)
010
= Channel 2 (RA2/AN2)
011
= Channel 3 (RA3/AN3)
100
= Channel 4 (RA4/AN4)
GO/DONE:
A/D Conversion Status bit
If ADON =
1:
1
= A/D conversion in progress (setting this bit starts the A/D conversion)
0
= A/D conversion not in progress (this bit is automatically cleared by hardware when the
A/D conversion is complete)
Unimplemented:
Read as ‘0’
ADON:
A/D On bit
1
= A/D converter module is operating
0
= A/D converter module is shut-off and consumes no operating current
Legend:
R = Readable bit
-n = Value at POR
W = Writable bit
‘1’ = Bit is set
U = Unimplemented bit, read as ‘0’
‘0’ = Bit is cleared
x = Bit is unknown
bit 5-3
bit 2
bit 1
bit 0
2003 Microchip Technology Inc.
DS39598D-page 81