Datasheet
PIC16C9XX
DS30444E - page 84 1997 Microchip Technology Inc.
12.4 A/D Conversions
Example 12-2 show how to perform an A/D conversion.
The RA pins are configured as analog inputs. The ana-
log reference (V
REF) is the device VDD. The A/D inter-
rupt is enabled, and the A/D conversion clock is F
RC.
The conversion is performed on the RA0 pin
(channel0).
Note: The GO/DONE bit should NOT be set in
the same instruction that turns on the A/D.
Clearing the GO/DONE bit during a conversion will
abort the current conversion. The ADRES register will
NOT be updated with the partially completed A/D con-
version sample. That is, the ADRES register will con-
tinue to contain the value of the last completed
conversion (or the last value written to the ADRES reg-
ister). After the A/D conversion is aborted, a 2T
AD wait
is required before the next acquisition is started. After
this 2T
AD wait, an acquisition is automatically started on
the selected channel.
EXAMPLE 12-2: DOING AN A/D CONVERSION
BCF STATUS, RP1 ; Select Bank1
BSF STATUS, RP0 ;
CLRF ADCON1 ; Configure A/D inputs
BSF PIE1, ADIE ; Enable A/D interrupts
BCF STATUS, RP0 ; Select Bank0
MOVLW 0xC1 ; RC Clock, A/D is on, Channel 0 is selected
MOVWF ADCON0 ;
BCF PIR1, ADIF ; Clear A/D interrupt flag bit
BSF INTCON, PEIE ; Enable peripheral interrupts
BSF INTCON, GIE ; Enable all interrupts
;
; Ensure that the required acquisition time for the selected input channel has elapsed.
; Then the conversion may be started.
;
BSF ADCON0, GO ; Start A/D Conversion
: ; The ADIF bit will be set and the GO/DONE bit
: ; is cleared upon completion of the A/D Conversion.