Datasheet
2001 Microchip Technology Inc. DS30292C-page 113
PIC16F87X
These steps should be followed for doing an A/D
Conversion:
1. Configure the A/D module:
• Configure analog pins/voltage reference and
digital I/O (ADCON1)
• Select A/D input channel (ADCON0)
• Select A/D conversion clock (ADCON0)
• Turn on A/D module (ADCON0)
2. Configure A/D interrupt (if desired):
• Clear ADIF bit
• Set ADIE bit
• Set PEIE bit
• Set GIE bit
3. Wait the required acquisition time.
4. Start conversion:
• Set GO/DONE
bit (ADCON0)
5. Wait for A/D conversion to complete, by either:
• Polling for the GO/DONE
bit to be cleared
(with interrupts enabled); OR
• Waiting for the A/D interrupt
6. Read A/D result register pair
(ADRESH:ADRESL), clear bit ADIF if required.
7. For the next conversion, go to step 1 or step 2,
as required. The A/D conversion time per bit is
defined as T
AD. A minimum wait of 2TAD is
required before the next acquisition starts.
FIGURE 11-1: A/D BLOCK DIAGRAM
(Input Voltage)
V
AIN
VREF+
(Reference
Voltage)
V
DD
PCFG3:PCFG0
CHS2:CHS0
RE2/AN7
(1)
RE1/AN6
(1)
RE0/AN5
(1)
RA5/AN4
RA3/AN3/V
REF+
RA2/AN2/V
REF-
RA1/AN1
RA0/AN0
111
110
101
100
011
010
001
000
A/D
Converter
Note 1: Not available on PIC16F873/876 devices.
VREF-
(Reference
Voltage)
V
SS
PCFG3:PCFG0