Datasheet
PIC18F87K22 FAMILY
DS39960D-page 392  2009-2011 Microchip Technology Inc.
EXAMPLE 27-1: SETUP FOR CTMU CALIBRATION ROUTINES
#include "p18cxxx.h"
/**************************************************************************/
/*Setup CTMU *****************************************************************/
/**************************************************************************/
void setup(void)
{ //CTMUCON - CTMU Control register
 CTMUCONH = 0x00; //make sure CTMU is disabled
 CTMUCONL = 0X90;
 //CTMU continues to run when emulator is stopped,CTMU continues
 //to run in idle mode,Time Generation mode disabled, Edges are blocked
 //No edge sequence order, Analog current source not grounded, trigger
 //output disabled, Edge2 polarity = positive level, Edge2 source =
 //source 0, Edge1 polarity = positive level, Edge1 source = source 0,
 // Set Edge status bits to zero
 //CTMUICON - CTMU Current Control Register
 CTMUICON = 0x01; //0.55uA, Nominal - No Adjustment
/**************************************************************************/
//Setup AD converter;
/**************************************************************************/
 TRISA=0x04; //set channel 2 as an input
 // Configured AN2 as an analog channel
 // ANCON0 
 ANCON0 = 0X04;
 // ANCON1
 ANCON1 = 0XE0;
 // ADCON2
 ADCON2bits.ADFM=1; // Resulst format 1= Right justified
 ADCON2bits.ACQT=1; // Acquition time 7 = 20TAD 2 = 4TAD 1=2TAD
ADCON2bits.ADCS=2; // Clock conversion bits 6= FOSC/64 2=FOSC/32
// ADCON0
ADCON1bits.VCFG0 =0; // Vref+ = AVdd
ADCON0bits.VCFG1 =0; // Vref+ = AVdd
ADCON0bits.VCFG = 0; // Vref- = AVss
ADCON0bits.CHS=2; // Select ADC channel
ADCON0bits.ADON=1; // Turn on ADC 
}










