«

»

Apr 04

Pemrograman ADC pada AVR dengan BASCOM

Sejumlah tipe mikrokontroler AVR memiliki ADC di dalamnya, sebagai contoh ATmega8535. Pada chip ini, 8 kanal input terhubung dengan sebuah ADC internal – yang memiliki resolusi 10-bit, melalui sebuah multiplekser. ADC ini memiliki catu tersendiri, yang diberi label AVCC. Dalam banyak kasus, AVCC dapat dihubungkan dengan VCC (disarankan, terlebih dahulu dilewatkan pada low pass filter).

Dengan resolusi 10-bit, input analog 0-5V akan di-konversi menjadi 0-1023. Jadi, setiap perubahan satu digit pada hasil konversi, menunjukkan perubahan 4.88 mV pada kanal input.

ADC dapat di-set untuk beroperasi terus menerus (free running) atau hanya satu kali konversi.

Menggunakan fasilitas ADC internal ATmega8535 dengan BASCOM-AVR, cukup mudah. Cukup melakukan inisialisasi untuk modus operasi, prescaler dan tegangan referensi yang digunakan. Selanjutnya, data analog siap diubah menjadi digital.

Berikut adalah contoh penerapannya dengan menggunakan BASCOM-AVR pada ATmega8535:

$regfile = "m8535.dat"
$baud = 9600
Config Adc = single, Prescaler = auto, Reference = avcc
Start Adc
Dim W as Word
Do
  W = Getadc(0)
  Print W
  Waitms 1000
Loop
End

Prescaler akan membagi internal clock dengan faktor pembagi. ADC Clock yang disarankan datasheet adalah 50-200 kHz.

Reference – tegangan referensi ADC, memiliki opsi : AVCC, OFF (referensi eksternal) dan INTERNAL (2.56V pada ATmega8535).

Setelah program ditanam ke dalam chip, hasil konversi dapat dilihat melalui program Terminal yang dihubungkan dengan serial port terkait.

Link berikut bisa dijadikan salah satu sumber pembelajaran mengenai ADC pada AVR – http://www.avrfreaks.net.

Selamat mencoba.

Bila memerlukan pelatihan mikrokontroler dan robotik, silahkan menghubungi:

NEXT SYSTEM
Robotics Learning Center
ITC Kosambi F2
Jl. Baranang Siang 6-8
Bandung 40112
Tel. (022) 4222062, 085100775874

Email: info at nextsys.web.id

Official Website: http://edukasi.nextsys.web.id