ADC bermaksud Analog To Digital Converter. ADC Module adalah fungsi dalam PIC yang membolehkan PIC membaca analog input. Oleh itu, sistem design tidak memerlukan chip tambahan untuk menukarkan analog voltage kepada digital. ADC Module di dalam PIC akan menukarkan analog voltage tersebut kepada digital dan disimpan didalam addressnya.
Analog input hanya terdapat di beberapa pin PIC sahaja. Untuk PIC 28pin, mempunyai 5 analog input dan PIC 40/44pin mempunyai 8 analog input. Antara address-address yang terlibat untuk ADC Module adalah A/D Result High Register (ADRESH), A/D Result Low Register (ADRESL), A/D Control Register 0 (ADCON0) dan A/D Control Register 1 (ADCON1).

ADC Module mempunyai high-voltage reference (VREF+) dan low-voltage reference (VREF-). Nilainya boleh dipilih daripada VDD, VSS, RA2 atau RA3. ADC Module akan membaca voltage pada salah satu antara Channel 0-7 (AN0-AN7).

Selepas ADC Module menukarkan analog voltage, ia akan menyimpan 10bit data di address ADRESH dan ADRESL dalam bentuk 10bit. Hasilnya bergantung kepada justification sama ada disimpan di bahagian kanan atau kiri.

Dibawah adalah videonya.
w/salam, Bella. Saya x tahu, kena tiru skematik yg saya buat.
Assalam abg shahrul. sy dah dpt solve hari 2 punye problem. cume kene tambah delay jek. Cme nk tanya. Knape ye kalau saya cabut usb programmer tu, dia dah xdisplay dah adc value kt LCD tu. sedangkan saya x ttup pun MCLR target kt MPLAB tu. Boleh bantu x? trima kasih banyak2
w/salam, Bella. X de suggestion. Kena troubleshoot depan mata baru tahu.
Salam abg shahrul. Saya cbe buat program utk bace nilai adc. gune potentiometer 5k. PIC16f877a. dan LCD 2×16. tp bila saya run. di LCD tu, die keluar character cmni. Cc##?###…. lebih kurang cm2 la. saya vary potentiometer, die kluar character lain pulak. sbg pro, ada suggestion x? (:
tq.