Datasheet

Table Of Contents
© 2006 Microchip Technology Inc. DS41159E-page 241
PIC18FXX8
20.0 COMPATIBLE 10-BIT ANALOG-
TO-DIGITAL CONVERTER (A/D)
MODULE
The Analog-to-Digital (A/D) Converter module has five
inputs for the PIC18F2X8 devices and eight for the
PIC18F4X8 devices. This module has the ADCON0
and ADCON1 register definitions that are compatible
with the PICmicro
®
mid-range A/D module.
The A/D allows conversion of an analog input signal to
a corresponding 10-bit digital number.
The A/D module has four registers. These registers are:
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 ADCON0 register, shown in Register 20-1,
controls the operation of the A/D module. The
ADCON1 register, shown in Register 20-2, configures
the functions of the port pins.
REGISTER 20-1: ADCON0: A/D CONTROL REGISTER 0
R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 U-0 R/W-0
ADCS1 ADCS0 CHS2 CHS1 CHS0 GO/DONE
—ADON
bit 7 bit 0
bit 7-6 ADCS1:ADCS0: A/D Conversion Clock Select bits (ADCON0 bits in bold)
bit 5-3 CHS2:CHS0: Analog Channel Select bits
000 = Channel 0 (AN0)
001 = Channel 1 (AN1)
010 = Channel 2 (AN2)
011 = Channel 3 (AN3)
100 = Channel 4 (AN4)
101 = Channel 5 (AN5)
(1)
110 = Channel 6 (AN6)
(1)
111 = Channel 7 (AN7)
(1)
Note 1: These channels are unimplemented on PIC18F2X8 (28-pin) devices. Do not select
any unimplemented channel.
bit 2
GO/DONE
: A/D Conversion Status bit
When ADON =
1:
1 = A/D conversion in progress (setting this bit starts the A/D conversion which is automatically
cleared by hardware when the A/D conversion is complete)
0 = A/D conversion not in progress
bit 1 Unimplemented: Read as ‘0
bit 0 ADON: A/D On bit
1 = A/D converter module is powered up
0 = A/D converter module is shut-off and consumes no operating current
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
ADCON1
<ADCS2>
ADCON0
<ADCS1:ADCS0>
Clock Conversion
0 00 F
OSC/2
0 01 F
OSC/8
0 10 F
OSC/32
0 11 F
RC (clock derived from the internal A/D RC oscillator)
1 00 F
OSC/4
1 01 F
OSC/16
1 10 F
OSC/64
1 11 F
RC (clock derived from the internal A/D RC oscillator)