#include <p33fj16gp304.h>
_FBS(0xFFFF);
_FGS(0x0007);
_FOSCSEL(0x0003);
_FOSC(0x00E1);
_FWDT(0x0000);
_FPOR(0x00F0);
_FICD(0x00C1);
void delay (void)
{ T3CONbits.TON = 1;
while (!_T3IF);
}// end sub
void main (void)
{ TRISAbits.TRISA0 = 1;
TRISAbits.TRISA1 = 1;
TRISCbits.TRISC0 = 1;
TRISB = 0;
T3CON = 0x8030;
PR3 = 12500;
//ADC Configuration:
AD1CON1bits.AD12B = 0; //10-bit
AD1CON2bits.CHPS = 1; //CH0 and CH1
AD1CON2bits.VCFG = 0; //AVDD-AVSS
AD1CON3bits.ADCS = 2; //ADCS = 2, TAD = 75n
AD1CON1bits.FORM1 = 0; //integer
AD1CON1bits.SSRC = 7; //auto convert
AD1PCFGL = 0xFFFC; //CH0, CH1
AD1CON1bits.SIMSAM = 1; //Simultaneous scanning
AD1CON2bits.ALTS = 0; //Dont' alternate between MuxA and MuxB
AD1CHS0bits.CH0NA = 0; //AVss
AD1CHS0bits.CH0NB = 0; //AVss
AD1CHS0bits.CH0SA = 6; //For Ch0, MuxA, AN6
AD1CHS123bits.CH123NA = 0; //VREF-
AD1CHS123bits.CH123NB = 0; //VREF-
AD1CON1bits.ADON = 1; //Start ADC Module
//done with ADC config
while (1)
{ AD1CON1bits.SAMP = 1;
while (!AD1CON1bits.DONE);
LATB = ADC1BUF0 >> 2;
delay;
LATB = ADC1BUF1 >> 2;
delay;
}//wend
}//end.