void ADC_Init()
{
TRISAbits.TRISA1 = 1;
AD1CON1bits.ADON = 0;
AD1CON1bits.ADSIDL = 0;
AD1CON1bits.AD12B = 1;
// a) Select port pins as analog inputs
AD1PCFGL = 0;
// b) Select voltage reference source
AD1CON2bits.VCFG = 0;
// c) Select analog conversion clock
AD1CON3bits.ADCS = 0;
// d) Determine how many S/H channels is used
AD1CON2bits.CHPS = 0;
// e) Select the appropriate sample/conversion sequence
AD1CON1bits.SSRC = 0b000;
AD1CON3bits.SAMC = 0;
// f) Select how conversion results are presented in the buffer
AD1CON1bits.FORM = 0b11;
// g) Turn on ADC module
AD1CON1bits.ADON = 1;
}