BAB 4
HASIL DAN PEMBAHASAN
4.1 Pengujian Rangkaian Mikrokontroler
Pengujian rangkaian Mikrokontroler dapat dilakukan dengan cara menghubungkan rangkaian sistem minimum dengan sumber tegangan 5 V. Dimana
pin 40 mikrokontroler dihubungkan dengan tegangan 5 volt dan pin 20 dihubungkan dengan ground. Setelah itu dilakukan pengukuran tegangan antara pin 40 dan pin 20,
didapat tegangan sebesar 4,98 Volt, artinya sumber tegangan telah sampai pada mikrokonroler.
74245
Gambar 4.1 Rangkaian pengujian mikrokontroler
Langkah selanjutnya adalah menghubungkan pin 17 P3.7 dengan IC buffer 74LS24 dan keluarannya dihubungkan dengan sebuah LED yang dipasang aktif High
sebagai indikator. IC 74LS24 berfungsi sebagai Buffer penyangga dimana logika
Universitas Sumatera Utara
yang diberikan mikrokontroler akan dikuatkan oleh IC tersebut. Dengan demikian apabila Mikrokontroler memberikan logika 1 maka LED akan Aktif dan apabila diberi
logika 0 maka LED akan padam. Dengan adanya IC 74LS24 ini maka arus yang digunakan untuk menghidupkan LED tidak diambil dari mikrokontroler melainkan,
mikrokontroler hanya memberikan logika saja. Berikut ini adalah program yang diisikan kedalam mikrokontroler AT89S52:
Mov r1,0 Kedip:
Setb p3.7 Acall delay
Clr p3.7 Acall delay
Sjmp Kedip
delay: mov r0,255
djnz r0, djnz r1,delay
ret end
Program diatas dibuat untuk menghidupkan LED pada port 3.7 dan kemudian mematikannya. Perintah Setb akan menjadikan p3.7 berlogika high yang
menyebabkan LED menyala. Perintah clr p3.7 membuat p3.1 kembali berlogika low dan menyebabkan LED padam. Adapun perintah acall delay digunakan untuk
memanggil routin delay yang berfungsi untuk menunda waktu selama beberapa saat supaya pergantian menyala dan pedamnya LED dapat terlihat oleh mata.
Untuk melakukan penundaan waktu, maka dibuatlah perintah acall delay. Dengan adanya perintah acall maka program untuk sementara akan beralih ke label
yang dialamatkan yaitu delay sampai ditemukannya perintah ret. Lamanya penundaaan waktu yang dikerjaakan oleh delay dapat dihitung dengan cara berikut:
Mikrokontroler yang digunakan dalam penelitian ini memakai kistal 12 MHz, dalam mengeksekusi satu siklus perintah mikrontroler membutuhkan 12 clock, berarti dalam
suatu siklus perintah mikrokontroler membutuhkan waktu sebesar: 12 MHz 12 clock = 1 µs
Perintah mov dan djnz menggunakan 2 siklus dan perintah ret mengunakan 1 siklus. Dalam routin delay, pertama kali r0 diisi senilai 255. selanjutnya djnz r0, artinya isi
r0 dikurang dengan satu jika hasilnya tidak nol maka program akan tetap berjalan
Universitas Sumatera Utara
dibaris ini. Dari awal r0 bernilai 255, maka program djnz r0, dijalankan sebanyak 255 kali. Berikutnya “djnz r1, delay” kurangi isi r1 dengan satu dan lompat ke label
delay bila hasilnya tidak nol. Dari awal r1 sudah diisikan nilai 0, maka ketika pertama kali dikurang 1 hasilnya akan 256, itu berarti untuk melewati baris program ini,
program akan memutar lagi dari label delay sebanyak 256 kali hingga akhirnya r1 kembali bernilai 0. Routin delay akan dianggap selesai setelah ditemukan perintah ret,
maka total waktu untuk mengeksekusi routrin delay adalah:
Tabel 4.1 waktu pengeksekuian routin delay perintah
siklus pengulangan
Waktu µs
Mov r0,255 2
256 510
Djnz r0, 2
255 x 256 130. 560
Djnz r1,delay 2
256 510
ret 1
1 1
total 131.581
Jadi untuk mengerjakan satu routin delay membutuhkan waktu selama 131.581 µs. Dengan demikian ditambah dengan perintah acall delay selama 2 µs maka LED
akan hidup dan mati selama 131.583 µs atau sekitar 0,13 detik secara bergantian.Perintah sjmp kedip akan membuat program kembali mengulang dari label
kedip, sehingga program ini berjalas secara terus-menerus.
Saat program ini dieksekusi maka terlihat pada port3.7 LED berkedip terus- menerus. Dengan berjalannya program ini pada mikrokontroler, maka mikrokontroler
telah dianggap bagus dan dapat digunakan pada penelitian selanjutnya
Universitas Sumatera Utara
4.2 Interfacing LCD 2 x16