3.6. Diagram Alir Pemrograman
Start
Menentukan variabel dan inisialisasi port
mikokontroler
Set Timer 0 sebagai counter
Set subrutin untuk interrupt Timer 0
Aktifkan Interrupt
Hitung pulsa dari sumber gelombang yang dihitung
pada port 3.4
Delay 1 detik
Ambil nilai yang didapat setelah 1 detik
Tampilkan hasil perhitungan pada LCD
sebagai frekuensi
Reset semua variabel
Gambar 3.7 Flowchart pemrograman frequency counter
Afniza : Frequency Counter Berbasis Mikrokontroler AT89S52, 2008. USU Repository © 2009
Di atas diperlihatakan sebuah flowchart program yang akan diisi pada mikrokontroler. Berikut adalah penjelasannya :
a. Start: Program dimulai
b. Menentukan variabel dan inisialisasi port mikrokontroler: disinilah kita
menuliskan variabel yang kita gunakan dalam program dan sekaligus kita tentukan port mikrokontroler yang akan digunakan.
c. Set Timer 0 sebagai counter: Pada mikrokontroler AT89S52 di port
3.4 adalah pin yang dinamakan timer 0, kita dapat memanfaatkan interrupt timer 0 tersebut sebagai timer pewaktu ataupun sebagai counter, pada
permasalahan kita saat ini kita men-set timer 0 sebagai counter. d.
Set subrutin untuk timer 0: Pada bagian ini kita membuat subrutin untuk pengaktifan timer 0.
e. Aktifkan interrupt timer 0: Pada bagian ini interrupt timer 0 diaktifkan,
interrupt tersebut akan aktif bila mendapatkan sinyal dari luar dan apabila tidak ada sinyal dari luar maka sistem akan tetap menunggu sampai ada sinyal
masuk. f.
Hitung pulsa dari sumber gelombang: Apabila ada sinyal dari luar maka pulsa dari gelombang tersebut segera dihitung.
g. Delay 1 detik: Untuk mengetahui frekuensi dari gelombang yang masuk maka
kita membutuhkan waktu sampling sebanyak 1 detik untuk mencacah sinyal yang masuk tersebut.
h. Ambil nilai setelah 1 detik
i. Hasil counting cacahan kita tampilkan pada LCD
Afniza : Frequency Counter Berbasis Mikrokontroler AT89S52, 2008. USU Repository © 2009
j. Reset semua variabel: Setelah counting mencacah dan hasilnya telah
ditampilkan maka sistem kita rancang untuk mengulang reset seluruh variabel untuk menerima data count cacahan yang baru.
Afniza : Frequency Counter Berbasis Mikrokontroler AT89S52, 2008. USU Repository © 2009
BAB 4
PENGUJIAN RANGKAIAN
4.1. Pengujian Rangkaian Mikrokontroler AT89S52