. P3.0 merupakan fasilitas khusus pengiriman data serial yang disediakan oleh
mikrokontroler AT89S52. Sedangkan P3.1 merupakan sinyal clock untuk pengiriman data serial. Pada rangkaian display ini digunakan dua buah dioda yang berfungsi untuk
menurunkan tegangan supply untuk seven segment. Satu buah dioda dapat menurunkan tegangan sekitar 0,6 volt. Jadi, apabila dioda yang digunakan dua buah
maka tegangan yang dapat diturunkannya adalah 1,8 volt. Tegangan ini diturunkan agar umur seven segment lebih tahan lama dan karena tegangan maksimum seven
segment adalah 3,7 volt
3.5. Perancangan rangkaian keypad
Rangkaian Keypad berfungsi sebagai tombol untuk memasukkan pin. Kemudian data yang diketikkan pada keypad akan diterima oleh mikrokontroler AT89S52 untuk
kemudian diolah dan ditampilkan pada display seven segmen. Rangkaian keypad ditunjukkan pada gambar berikut ini :
Tbl 1 Tbl 2
Tbl 3 Tbl 4
P2.0 P2.1
P2.2
P2.3 P2.4
P2.5 P2.6
P2.7
Gambar 3.5. Rangkaian keypad
Universitas Sumatera Utara
Rangkaian keypad yang digunakan adalah rangkaian keypad yang telah ada dipasaran. Keypad ini terdiri dari 16 tombol yang hubungan antara tombol-tombolnya
seperti tampak pada gambar di atas. Rangkaian ini dihubungkan ke port 1
mikrokontroler AT89S52.
Universitas Sumatera Utara
BAB 4
PENGUJIAN ALAT DAN PROGRAM
4.1 Pengujian Rangkaian Mikrokontroler AT89S52
Untuk mengetahui apakah rangkaian mikrokontroler AT89S52 telah bekerja dengan baik, maka dilakukan pengujian. Pengujian bagian ini dilakukan dengan memberikan
program sederhana pada mikrokontroler AT89S52. Programnya adalah sebagai berikut:
Loop: Setb P0.0
Acall tunda Clr P0.0
Acall tunda Sjmp Loop
Tunda: Mov r7,255
Tnd: Mov r6,255 Djnz r6,
Djnz r7,tnd Ret
Program di atas bertujuan untuk menghidupkan LED yang terhubung ke P0.0 selama ± 0,13 detik kemudian mematikannya selama ± 0,13 detik secara terus
Universitas Sumatera Utara
menerus. Perintah Setb P0.0 akan menjadikan P0.0 berlogika high yang menyebabkan LED menyala. Acall tunda akan menyebabkan LED ini hidup selama beberapa saat.
Perintah Clr P0.0 akan menjadikan P0.0 berlogika low yang menyebabkan LED akan mati. Perintah Acall tunda akan menyebabkan LED ini mati selama beberapa saat.
Perintah Sjmp Loop akan menjadikan program tersebut berulang, sehingga akan tampak LED tersebut tampak berkedip.
Lamanya waktu tunda dapat dihitung dengan perhitungan sebagai berikut : Kristal yang digunakan adalah kristal 12 MHz, sehingga 1 siklus mesin adalah 12
clock 12 MHz maka satu siklus mesin membutuhkan waktu 1 mikro detik.
Mnemonic Siklus
Waktu Eksekusi MOV Rn,data
2 2 x 1
μd = 2 μd DJNZ
2 2 x 1
μd = 2 μd RET
1 1 x 1
μd = 1 μd
Tunda: 1
mov r7,255 2 Tnd: mov r6,255 2
djnz r6, 255 x 2 = 510 x 255 = 130.054 = 130.058 = 130.060
μd
djnz r7,loop3 2 djnz r2,loop8 2
ret
1 Jadi waktu yang dibutuhkan untuk mengerjakan program di atas adalah
130.060
μdetik atau 0,
130060
detik dan dapat dibulatkan menjadi 0,13 detik.
Universitas Sumatera Utara
Jika program tersebut diisikan ke mikrokontroller AT89S52, kemudian mikrokontroller dapat berjalan sesuai dengan program yang diisikan, maka rangkaian
minimum mikrokontroller AT89S52 telah bekerja dengan baik.
4.2 Pengujian Rangkaian Display Seven Segment