2ADC featuresThe converter generates a 10-bit binary result using the method of successive approximation and stores the conversion results into the ADC registers (ADRESL and ADRESH).There are 14 separate analog inputs.The A/D converter allows conversion of an analog input signal to a 10-bit binary representation of that signal andBy selecting voltage references Vref- and Vref+, the minimal resolution or quality of conversion may be adjusted to various needs.
6ADCON0**ADCS1, ADCS0 - A/D Conversion Clock Select bits select clock frequency used for internal synchronization of A/D converter. It also affects duration of conversion.**CHS3-CHS0 - Analog Channel Select bits select a pin or an analog channel for conversion, i.e. voltage measurement**GO/DONE - A/D Conversion Status bit determines current status of conversion:1 - A/D conversion is in progress; and0 - A/D conversion is complete. This bit is automatically cleared by hardware when the A/D conversion is completed.**ADON - A/D On bit enables A/D converter.1 - A/D converter is enabled; and0 - A/D converter is disabled.
7ADCON1 **ADFM - A/D Result Format Select bit 1 - Conversion result right justified. Six most significant bits of the ADRESLH are not used; and0 - Conversion result left justified. Six least significant bits of the ADRESL are not used.**VCFG1 - Voltage Reference bit selects negative voltage reference source needed for A/D converter operating.1 - Negative voltage reference is applied on the Vref- pin; and0 - Voltage power supply Vss is used as negative voltage reference source.**VCFG0 - Voltage Reference bit selects positive voltage reference source needed for A/D converter operating.1 - Positive voltage reference is applied on the Vref+ pin; and0 - Voltage power supply Vdd is used as positive voltage reference source.
8USING ADC Step 1 - Configuring port: Write logic one (1) to the corresponding bit of the TRIS register to configure it as input; andWrite logic one (1) to the corresponding bit of the ANSEL register to configure it as analog input.Step 2 - Configuring ADC module:Configure voltage reference in the ADCON1 register;Select ADC conversion clock in the ADCON0 register;Select one of input channels CH0-CH13 of the ADCON0 register;Select data format using the ADFM bit of the ADCON1 register; andEnable A/D converter by setting the ADON bit of the ADCON0 register.
9USING ADC CONTI.. Step 3 - Configuring ADC interrupt (optionally): Clear the ADIF bit; andSet the ADIE, PEIE and GIE bits.Step 4 - Wait for the required acquisition time (approximately 20uS) to pass.Step 5 - Start conversion by setting the GO/DONE bit of the ADCON0 register.Step 6 - Wait for ADC conversion to complete.It is necessary to check in program loop whether the GO/DONE pin is cleared or wait for an A/D interrupt (must be previously enabled).Step 7 - Read ADC results:Read the ADRESH and ADRESL registers.