Penggunaan Analog to-Digital Converter, atau yg lebih dikenal dengan sebutan ADC, banyak sekali aplikasi yang membutuhkan ADC, biasanya untuk pembacaan sensor. kebutuhan Akan ADC bervariasi tergantung sensor yg digunakan, jika ingin lebih akurat bisa menggunakan ADC 10bit atau lebih, dan bisa juga menggunakan ADC 8 bit, ini yg sering sekali digunakan, dan sudah tersedia pada microkontroller berseri ATMega, pada ATMega sudah menyediakan ADC 8 bit dan 10 bit dengan 8 channel input. ADC 8 bit atau 2^8 = 256 artinya data digital yg dihasilkan dari conversi ADC 8 bit adalah 0-255 dan untuk ADC 10bit atau 2^10 =1024 artinya data digital yg dihasilkan dari conversi adalah 0-1023. Untuk yg menggunakan CodeVisionAVR atau disingkat CVAVR bisa langsung menggunakan fasilitas CodeWizard seperti gambar dibawah ini.
Jika ingin menggunakan ADC 8 bit maka tinggal meng-klik saja pada “use 8 bit“. “Volt Ref” merupakan sumber pemilihan tegangan referensi ADC, tegangan refrensi yg digunakan untuk pemilihan penggunaan tegangan ref ADC, antara AVCC dan VREF, sedangkan “Clock” adalah banyaknya frekuensi sampling ADC. Dan “Auto Trigger Source” merupakan mode ADC yang akan digunakan.
Seperti kita tahu bahwa LM35, sensor suhu yg memiliki output yang linear sebesar 10mV/oCelcius. Jadi tiap kenaikkan 10mV, maka suhu bertambah 1 oC. Dengan tingkat akurasi 0.5 oC. Memiliki range pengukuran antara -55 s/d 150 oC.
Dengan menggunakan rangkaian dasar, atau yang disebut Basic Centigrade Temperature Sensor, maka si LM35 memiliki range pengukuran 0mV – 10mV/oC. Jika dibuatkan kesetaraaan antara voltage dengan suhu, maka akan terlihat sbb :
0V = 0 oC
10mv = 1 oC
100mV = 10 oC
1000mV = 100 oC
1500mV = 150 oC
Jika menggunakan rangkaian Full-Range Centigrade Temperature Sensor, lain lagi range pengukurannya.
Dengan melihat karakteristik tersebut, maka dengan teknik ADC (Analog to Digital Convertion) kita bisa melakukan konversi dari tegangan ke suhu.
Karena yang didiskusikan kali ini menggunakan mikrokontroler ATMEGA8535. Maka secara internal dia sudah memiliki ADC yang berjumlah 8 channel 10 bit. Range voltage dari 0 s/d volt_max sama dengan nilai 0 s/d 1024 (n10).
Secara internal, si uC menggunakan rumus sebagai berikut untuk mengeluarkan output ADC :
Hasil Konversi ADC = (Vin * 1024) / Vref Dimana Vin adalah output LM35.
Jika Vref diberi tegangan 5 V (5000 mV). Dan LM35 tidak mengeluarkan tegangan, maka
0 * 1024 / 5000 = 0
Jika LM35 mengeluarkan tegangan sebesar 1 mV, maka uC akan mengeluarkan angka digital:
1 * 1024 / 5000 = 0.2048 => 0
Jika LM35 mengeluarkan tegangan sebesar 10 mV, maka uC akan mengeluarkan angka digital :
10 * 1024 / 5000 = 2.048 => 2
Jika LM35 mengeluarkan tegangan sebesar 1 V (1000 mV), maka uC akan mengeluarkan angka digital
1000 * 1024 / 5000 = 204.8 => 205
Sekarang cara membacanya dibalik. Setiap kita mendapatkan output digital dari uC, berapa hasil konversinya dalam bentuk tegangan?. Dari pertanyaan tersebut dihasilkan kesimpulan, bahwa setiap satu digit LSB yang dikeluarkan ADC uC akan bernilai sebesar :
1 LSB = Vref / (2n – 1)
Jika Vref adalah 5000 mV, maka : 1 LSB-nya kurang lebih = 4.9 mV (pembulatan)
Sehingga rumus konversinya adalah :
SUHU = Ouput_ADC * Kenaikan_satu_LSB / Volt_per_Celcius
dimana :
Output_ADC = adalah hasil pembacaan ADC uC
Kenaikan_satu_LSB = 4.9 (jika Vref = 5V)
Volt_per_celcius = 10 (karakteristik LM35, 10mV/oC)
program bisa di download: source code dengan CVAVR

#1 by psicozone on June 17, 2011 - 7:00 pm
bingung kakak, filenya docx, gk ada yang doc saja kk ya??
#2 by yogi permady on June 20, 2011 - 5:24 am
kenapa harus bingung2, tinggal pake Office 2007 keatas bisa buka deh docx nya.
atau mau saya kirim file doc nya aja, mana alamat emailnya?
#3 by Iwan Ryoma on June 26, 2011 - 7:36 am
mas boleh saya tau referensi perhitungan SUHU = Ouput_ADC * Kenaikan_satu_LSB / Volt_per_Celcius dr sumber mana? saya butuh referensi untuk tugas akhir saya…. makasih…
#4 by momogie on June 28, 2011 - 4:30 am
referensi perhitungan didapat dari datasheet LM35.
Features
n Calibrateddirectlyin˚Celsius(Centigrade)
n Linear+10.0mV/˚Cscalefactor
n 0.5˚Caccuracyguaranteeable(at+25˚C)
n Ratedforfull−55˚to+150˚Crange
n Suitableforremoteapplications
n Lowcostduetowafer-leveltrimming
n Operatesfrom4to30volts
n Lessthan60µAcurrentdrain
n Lowself-heating,0.08˚Cinstillair
n Nonlinearityonly ±1⁄4˚Ctypical
n Lowimpedanceoutput,0.1 Ω for1mAload
penjelasan diatas sudah ada mas,
#5 by Iwan Ryoma on August 31, 2011 - 3:02 pm
ohh gitu dari datasheet aja ya mas, saya kira ada referensi dari buku-buku mikrokontroler atau dari jurnal2 penelitian… ok mas trima kasih…