Pengujian Rangkaian Mikrokontroler Rancangan Alat Pengontrol Kecepatan Putar Motor Listrik Berbasis Mikrokontroler AT89S52

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