KL301

Mikroprosesor

Lesson 09

Menggunakan ADC pada ATmega8535

Dalam mikrokontroler keluarga AVR, khususnya kelas ATmega, umumnya sudah dilengkapi dengan Analog to Digital Conver (ADC) yang tertanam di dalamnya, sebagai contoh adalah ATmega8535 yang cukup populer.

atmega8535a

Menggunakan fasilitas ADC yang terdapat dalam ATmega8535 dengan Bahasa BASIC, 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:

$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

Data analog tidaklah mudah untuk diproses oleh mikrokontroler, dalam hal ini adalah AVR ATmega.
maka perlu perubahan bentuk signal untuk dapat melakukan proses pada mikrokontroler.
Hal yang perlu dilakukan adalah merubah bentuk analog menjadi bentuk digital,
yaitu dengan menggunakan ADC.

  • Didalam kenyataan, sensor melakukan pembacaan parameter fisis yang ada. Kemudian mengubahnya kedalam bentuk sinyal analog yang merepresentasikan besaran fisis.
  • Untuk efisiensi dan kemudahan dalam memproses data, sinyal analog tersebut diubah kedalam bentuk digital menggunakan Analog to Digital Converter (ADC).
  • Sinyal digital ini kemudian dikirimkan ke mikrokontroler untuk dapat diproses lebih lanjut.

Hal hal yang perlu diperhatikan dalam ADC antara lain:

1. Memahami fitur-fitur pada mikrokontroler yang digunakan, berikut ada fitur ADC pada ATMEGA 8535

Fitur ADC dapat dilihat di datasheet mikrokontroler yang digunakan.

2. Perhatikan dan pahami tentang resolusi ADC pada mikrokontroler.
Berikut adalah penjelasan mengenai resolusi ADC

Kita fokus pada ADC 8 channel dengan resolusi 10 bit.
8 Channel artinya terdapat 8 port yang bisa melakukan konversi ADC, yaitu pada PORT A, dari PORT A0 hingga PORT A7.
10 bit artinya nilai ADC memiliki rentang nilai 2 pangkat 10. 2^10 = 1024. artinya ADC akan memiliki nilai antara 0-1024.
Jika ADC 8 bit maka nilai ADC = 2^8

Nilai Analog yang digunakan memili rentang antara 0 volt hingga 5 volt, jika menggunakan VCC pada mikrokontroler sebagai acuan konversi ADC. (nilai ini dapat diubah dengan konfigurasi tertentu, dalam hal ini kita gunakan 5 volt).

Konversi analog ke digital pada ADC memiliki nilai yang linear,
0 volt akan bernilai 0 pada ADC,
5 volt akan bernilai 1024 pada ADC,
2.5 volt akan bernilai 512 pada ADC,
begitupun setesrusnya

Ketiga,

ADC Prescaler

ADC Prescaler adalah untuk menentukan frekuensi yang digunakan ADC untuk melakukan konversi. Nilai frekuensi yang digunakan ADC bergantung pada frekuensi oscillator dari XTAL yang digunakan pada rangkaian mikrokontroler.
Pada dasarnya ADC bekerja pada frekuensi 50-200 KHz.
Prescaler ADC memiliki beberapa nilai pembagi, 2, 4, 6, 8, 16, 32, 64 dan 128

Cara menghitung nilai frekuensi ADC adalah dengan nilai frekuensi pada mikrokontroler yang digunakan, misal :
Mikrokontroler menggunakan frekuensi 11 MHZ, lalu kita menggunakan prescaler 64,
maka nilai frekuensi ADC-nya adalah

11 MHz dibagi 64 = 171,875 KHz

semakin rendah frekuensi ADC maka semakin teliti nilai konversi yang dihasilkan, begitupun sebaliknya.

Keempat

Yang terakhir adalah mengenai register, register sangat penting, untuk melakukan banyak pengaturan pada fitur ADC yang akan digunakan, sperti menentukan prescaler, menentukan tegangan referensi dan yang lainnya.

Sumber : http://maxembedded.com/2011/06/20/the-adc-of-the-avr/

Bacaan yang dianjurkan :
1. 20 Aplikasi Mikrokontroler ATmega8535 & ATmega16 menggunakan BASCOM-AVR, Afrie Setiawan.
2. Aplikasi dan Teknik Pemrograman Mikrokontroler AVR ATmel, Sidik Nurcahyo.
3. Mikrokontroler ATMEGA8535, Syahrul.

 

Leave a Reply