Selasa, 28 September 2010

RPM Motor DC : Pengaturan Timer 8 bit

.
Seperti yang saya katakan sebelumnya bahwa pengaturan timer 8 bit agak sulit dibanding pengaturan timer 16 bit karena timer 8 bit memiliki nilai 0 - 255 sedangkan timer 16 bit bernilai 0 - 65536.
Nilai frekuensi yang digunakan adalah 10.800 Hz dan untuk mendapatkan nilai 10.800 counting, timer 8 bit tidak mampu menghitungnya sehingga digunakan variabel / memori tambahan agar dapat diperoleh 10.800 counting.

Perhitungan Nilai Counting Timer
Nilai frekuensi clock yang digunakan adalah 10.800 Hz atau 10,8 kHz dan timer 8 bit hanya mampu hingga 255 hitungan maka :
10.800 / 255 = 42.35294
10.800 / 250 = 43.2
10.800 / 220 = 49.0909
10.800 / 200 = 54
10.800 / 180 = 60
10.800 / 108 = 100
Dari nilai-nilai diatas jangan gunakan nilai pecahan karena kurang akurat dan gunakan nilai yang hasilnya bulat (dan maksimum) atau nilainya 200, maka :
255 - 200 = 55 atau 0x37 dalam heksadesimal.

Nilai 55 atau 0x37 adalah nilai Start Value timer yang akan digunakan sedangkan nilai 54 atau 0x36 adalah nilai memori counting, jika nilai memori telah sama dengan 54 berarti frekuensi telah mencapai 1 Hz.

Pengaturan Timer 0 / 8 bit Timer
Timer 0 pada AVR (ATmega8535) adalah timer 8 bit sehingga mempunyai Counting Value dari 0 - 255 atau 0x00 - 0xff.
Langkah-langkah pengaturan timer :
  • Diatas kertas tentukan nilai counting yaitu 200 counting yaitu Start Value = 55 atau 0x37 dan memori counting = 54 atau 0x36.



  • Gunakan CodeWizzardAVR dan tentukan jenis Chip serta Clocknya. Saya gunakan ATmega8535 dengan clock 11.059.200 Hz atau 11,0592 MHz.
  • Pada Tab timer sub tab Timer 0 dan atur seperti pada gambar.










  • Berikan nilai awal timer (Timer Value) 0x37 agar didapatkan counting sebanyak 200 pada timer 0.
  • Buat global variabel dengan nama unsigned char cnt_1Hz;
  • Untuk mengecek benar tidaknya, gunakan coding berikut yang akan mematikan dan menyalakan LED pada PORTC setiap 1 Hz.



  • Jika nyala LED telah sesuai, selesai dah.
Next : fiuhh cape.. tar dlu dah..

Semoga Manfaat ;)

Topik yang Populer