4.7 Pengujian Alarm
Pengujian pada rangkaian alarm ini dapat dilakukan dengan memberikan tegangan 5 volt dan 0 volt pada basis transistor C945. Transistor C945 merupakan transistor jenis
NPN, transistor jenis ini akan aktip jika pada basis diberi tegangan 0,7 volt dan tidak aktipjika pada basis diberi tegangan 0,7 volt. Aktifnya transistor akan membunyikan
alarm. Selanjutnya alarm dihubungkan dengan mikrokontroler dan mikrokontroler
diberi program sederhana untuk megaktifkan alarm. Program yang diisikan ke mikrokontroler untuk mengaktifkan alarm adalah :
Setb P0.0 . . . . . .
Perintah di atas akan memberikan logika high 1 atau tegangan 5 volt. pada P0.0, sehingga dengan demikian alarm akan berbunyi.
Universitas Sumatera Utara
4.8 Program Lengkap
; = = = = initialisasi port = = = = ; Batas_Tutup bit P3.5
Batas_buka bit P3.6 Alarm bit p3.7
bil0 equ 20h bil1 equ 0ech
bil2 equ 18h bil3 equ 88h
bil4 equ 0c4h bil5 equ 82h
bil6 equ 2h bil7 equ 0e8h
bil8 equ 0h bil9 equ 80h
Kosong equ 0ffh Utama:
mov p0,0 mov p1,0
clr alarm mov 70h,0
mov 71h,0 mov 72h,0
mov 73h,0 mov 64h,0 ;jumlah kesalahan
acall delay mov sbuf,Kosong
jnb ti, clr ti
mov sbuf,Kosong jnb ti,
clr ti mov sbuf,Kosong
jnb ti, clr ti
mov sbuf,Kosong jnb ti,
clr ti
Universitas Sumatera Utara
Bdg_Kode1: clr alarm
mov 60h,5 mov 61h,4
mov 62h,2 mov 63h,0 ; password 1
mov 7ah,bdg_kode1 sjmp Tbl_Satu
tbl_Satu: mov P0,7fh
mov a,p0 cjne a,77h,tbl_Dua
mov 74h,bil1 Mov 70h,1
acall tampil Recek_tbl_Satu:
mov a,p0 cjne a,77h,Recek_tbl_Satu
ljmp Tbl_Satu1 tbl_Dua:
cjne a,7bh,tbl_Tiga mov 74h,bil2
Mov 70h,2 acall tampil
Recek_tbl_Dua: mov a,p0
cjne a,7bh,Recek_tbl_Dua ljmp Tbl_Satu1
tbl_Tiga: cjne a,7dh,Tbl_Empat
mov 74h,bil3 Mov 70h,3
acall tampil Recek_tbl_Tiga:
mov a,p0 cjne a,7dh,Recek_tbl_Tiga
ljmp Tbl_Satu1
Universitas Sumatera Utara
Tbl_Empat: mov P0,0bfh
mov a,p0 cjne a,0b7h,Tbl_Lima
mov 74h,bil4 Mov 70h,4
acall tampil Recek_tbl_Empat:
mov P0,0bfh mov a,p0
cjne a,0b7h,Recek_tbl_Empat Ljmp Tbl_Satu1
Tbl_Lima: cjne a,0bbh,Tbl_Enam
mov 74h,bil5 Mov 70h,5
acall tampil Recek_tbl_Lima:
mov a,p0 cjne a,0bbh,Recek_tbl_Lima
ljmp Tbl_Satu1 Tbl_Enam:
cjne a,0bdh,Tbl_Tujuh mov 74h,bil6
Mov 70h,6 acall tampil
Recek_tbl_Enam: mov a,p0
cjne a,0bdh,Recek_tbl_Enam ljmp Tbl_Satu1
Tbl_Tujuh: mov P0,0dfh
mov a,P0 cjne a,0d7h,Tbl_Delapan
mov 74h,bil7 Mov 70h,7
acall tampil Recek_tbl_Tujuh:
mov P0,0dfh mov a,p0
cjne a,0d7h,Recek_tbl_Tujuh ljmp Tbl_Satu1
Universitas Sumatera Utara
Tbl_Delapan: cjne a,0dbh,Tbl_Sembilan
mov 74h,bil8 Mov 70h,8
acall tampil Recek_tbl_Delapan:
mov a,p0 cjne a,0dbh,Recek_tbl_Delapan
ljmp Tbl_Satu1 Tbl_Sembilan:
cjne a,0ddh,Tbl_nol mov 74h,bil9
Mov 70h,9 acall tampil
Recek_tbl_Sembilan: mov a,p0
cjne a,0ddh,Recek_tbl_Sembilan ljmp Tbl_Satu1
Tbl_Nol: mov P0,0efh
mov a,P0 cjne a,0ebh,Balik_Tbl_Satu
mov 74h,bil0 Mov 70h,0
acall tampil Recek_tbl_Nol:
mov P0,0efh mov a,p0
cjne a,0ebh,Recek_tbl_Nol Ljmp Tbl_Satu1
Balik_Tbl_Satu: Ljmp Tbl_Satu
Universitas Sumatera Utara
tampil: mov sbuf,74h
jnb ti, clr ti
mov sbuf,Kosong jnb ti,
clr ti mov sbuf,Kosong
jnb ti, clr ti
mov sbuf,Kosong jnb ti,
clr ti ret
tbl_Satu1: acall delay
mov P0,7fh mov a,p0
cjne a,77h,tbl_Dua1 mov 75h,bil1
Mov 71h,1 acall tampil1
Recek_tbl_Satu1: mov a,p0
cjne a,77h,Recek_tbl_Satu1 ljmp Tbl_Satu2
tbl_Dua1: cjne a,7bh,tbl_Tiga1
mov 75h,bil2 Mov 71h,2
acall tampil1 Recek_tbl_Dua1:
mov a,p0 cjne a,7bh,Recek_tbl_Dua1
ljmp Tbl_Satu2 tbl_Tiga1:
cjne a,7dh,Tbl_Empat1 mov 75h,bil3
Mov 71h,3 acall tampil1
Universitas Sumatera Utara
Recek_tbl_Tiga1: mov a,p0
cjne a,7dh,Recek_tbl_Tiga1 ljmp Tbl_Satu2
Tbl_Empat1: mov P0,0bfh
mov a,p0 cjne a,0b7h,Tbl_Lima1
mov 75h,bil4 Mov 71h,4
acall tampil1 Recek_tbl_Empat1:
mov P0,0bfh mov a,p0
cjne a,0b7h,Recek_tbl_Empat1 Ljmp Tbl_Satu2
Tbl_Lima1: cjne a,0bbh,Tbl_Enam1
mov 75h,bil5 Mov 71h,5
acall tampil1 Recek_tbl_Lima1:
mov a,p0 cjne a,0bbh,Recek_tbl_Lima1
ljmp Tbl_Satu2 Tbl_Enam1:
cjne a,0bdh,Tbl_Tujuh1 mov 75h,bil6
Mov 71h,6 acall tampil1
Recek_tbl_Enam1: mov a,p0
cjne a,0bdh,Recek_tbl_Enam1 ljmp Tbl_Satu2
Tbl_Tujuh1: mov P0,0dfh
mov a,P0 cjne a,0d7h,Tbl_Delapan1
mov 75h,bil7 Mov 71h,7
acall tampil1
Universitas Sumatera Utara
Recek_tbl_Tujuh1: mov P0,0dfh
mov a,p0 cjne a,0d7h,Recek_tbl_Tujuh1
ljmp Tbl_Satu2 Tbl_Delapan1:
cjne a,0dbh,Tbl_Sembilan1 mov 75h,bil8
Mov 71h,8 acall tampil1
Recek_tbl_Delapan1: mov a,p0
cjne a,0dbh,Recek_tbl_Delapan1 ljmp Tbl_Satu2
Tbl_Sembilan1: cjne a,0ddh,Tbl_nol1
mov 75h,bil9 Mov 71h,9
acall tampil1 Recek_tbl_Sembilan1:
mov a,p0 cjne a,0ddh,Recek_tbl_Sembilan1
ljmp Tbl_Satu2 Tbl_Nol1:
mov P0,0efh mov a,P0
cjne a,0ebh,Balik_Tbl_Satu1 mov 75h,bil0
Mov 71h,0 acall tampil1
Recek_tbl_Nol1: mov P0,0efh
mov a,p0 cjne a,0ebh,Recek_tbl_Nol1
Ljmp Tbl_Satu2 Balik_Tbl_Satu1:
Ljmp Tbl_Satu1
Universitas Sumatera Utara
tampil1: mov sbuf,75h
jnb ti, clr ti
mov sbuf,74h jnb ti,
clr ti mov sbuf,Kosong
jnb ti, clr ti
mov sbuf,Kosong jnb ti,
clr ti ret
Tbl_Satu2: acall delay
mov P0,7fh mov a,p0
cjne a,77h,tbl_Dua2 mov 76h,bil1
Mov 72h,1 acall tampil2
Recek_tbl_Satu2: mov a,p0
cjne a,77h,Recek_tbl_Satu2 ljmp Tbl_Satu3
tbl_Dua2: cjne a,7bh,tbl_Tiga2
mov 76h,bil2 Mov 72h,2
acall tampil2 Recek_tbl_Dua2:
mov a,p0 cjne a,7bh,Recek_tbl_Dua2
ljmp Tbl_Satu3 tbl_Tiga2:
cjne a,7dh,Tbl_Empat2 mov 76h,bil3
Mov 72h,3 acall tampil2
Universitas Sumatera Utara
Recek_tbl_Tiga2: mov a,p0
cjne a,7dh,Recek_tbl_Tiga2 ljmp Tbl_Satu3
Tbl_Empat2: mov P0,0bfh
mov a,p0 cjne a,0b7h,Tbl_Lima2
mov 76h,bil4 Mov 72h,4
acall tampil2 Recek_tbl_Empat2:
mov P0,0bfh mov a,p0
cjne a,0b7h,Recek_tbl_Empat2 Ljmp Tbl_Satu3
Tbl_Lima2: cjne a,0bbh,Tbl_Enam2
mov 76h,bil5 Mov 72h,5
acall tampil2 Recek_tbl_Lima2:
mov a,p0 cjne a,0bbh,Recek_tbl_Lima2
ljmp Tbl_Satu3 Tbl_Enam2:
cjne a,0bdh,Tbl_Tujuh2 mov 76h,bil6
Mov 72h,6 acall tampil2
Recek_tbl_Enam2: mov a,p0
cjne a,0bdh,Recek_tbl_Enam2 ljmp Tbl_Satu3
Tbl_Tujuh2: mov P0,0dfh
mov a,P0 cjne a,0d7h,Tbl_Delapan2
mov 76h,bil7 Mov 72h,7
acall tampil2
Universitas Sumatera Utara
Recek_tbl_Tujuh2: mov P0,0dfh
mov a,p0 cjne a,0d7h,Recek_tbl_Tujuh2
ljmp Tbl_Satu3 Tbl_Delapan2:
cjne a,0dbh,Tbl_Sembilan2 mov 76h,bil8
Mov 72h,8 acall tampil2
Recek_tbl_Delapan2: mov a,p0
cjne a,0dbh,Recek_tbl_Delapan2 ljmp Tbl_Satu3
Tbl_Sembilan2: cjne a,0ddh,Tbl_nol2
mov 76h,bil9 Mov 72h,9
acall tampil2 Recek_tbl_Sembilan2:
mov a,p0 cjne a,0ddh,Recek_tbl_Sembilan2
ljmp Tbl_Satu3 Tbl_Nol2:
mov P0,0efh mov a,P0
cjne a,0ebh,Balik_Tbl_Satu2 mov 76h,bil0
Mov 72h,0 acall tampil2
Recek_tbl_Nol2: mov P0,0efh
mov a,p0 cjne a,0ebh,Recek_tbl_Nol2
Ljmp Tbl_Satu3 Balik_Tbl_Satu2:
Ljmp Tbl_Satu2
Universitas Sumatera Utara
tampil2: mov sbuf,76h
jnb ti, clr ti
mov sbuf,75h jnb ti,
clr ti mov sbuf,74h
jnb ti, clr ti
mov sbuf,Kosong jnb ti,
clr ti ret
Tbl_Satu3: acall delay
mov P0,7fh mov a,p0
cjne a,77h,tbl_Dua3 mov 77h,bil1
Mov 73h,1 acall tampil3
Recek_tbl_Satu3: mov a,p0
cjne a,77h,Recek_tbl_Satu3 ljmp Tbl_Satu4
tbl_Dua3: cjne a,7bh,tbl_Tiga3
mov 77h,bil2 Mov 73h,2
acall tampil3 Recek_tbl_Dua3:
mov a,p0 cjne a,7bh,Recek_tbl_Dua3
ljmp Tbl_Satu4 tbl_Tiga3:
cjne a,7dh,Tbl_Empat3 mov 77h,bil3
Mov 73h,3 acall tampil3
Universitas Sumatera Utara
Recek_tbl_Tiga3: mov a,p0
cjne a,7dh,Recek_tbl_Tiga3 ljmp Tbl_Satu4
Tbl_Empat3: mov P0,0bfh
mov a,p0 cjne a,0b7h,Tbl_Lima3
mov 77h,bil4 Mov 73h,4
acall tampil3 Recek_tbl_Empat3:
mov P0,0bfh mov a,p0
cjne a,0b7h,Recek_tbl_Empat3 Ljmp Tbl_Satu4
Tbl_Lima3: cjne a,0bbh,Tbl_Enam3
mov 77h,bil5 Mov 73h,5
acall tampil3 Recek_tbl_Lima3:
mov a,p0 cjne a,0bbh,Recek_tbl_Lima3
ljmp Tbl_Satu4 Tbl_Enam3:
cjne a,0bdh,Tbl_Tujuh3 mov 77h,bil6
Mov 73h,6 acall tampil3
Recek_tbl_Enam3: mov a,p0
cjne a,0bdh,Recek_tbl_Enam3 ljmp Tbl_Satu4
Universitas Sumatera Utara
Tbl_Tujuh3: mov P0,0dfh
mov a,P0 cjne a,0d7h,Tbl_Delapan3
mov 77h,bil7 Mov 73h,7
acall tampil3 Recek_tbl_Tujuh3:
mov P0,0dfh mov a,p0
cjne a,0d7h,Recek_tbl_Tujuh3 ljmp Tbl_Satu4
Tbl_Delapan3: cjne a,0dbh,Tbl_Sembilan3
mov 77h,bil8 Mov 73h,8
acall tampil3 Recek_tbl_Delapan3:
mov a,p0 cjne a,0dbh,Recek_tbl_Delapan3
ljmp Tbl_Satu4 Tbl_Sembilan3:
cjne a,0ddh,Tbl_nol3 mov 77h,bil9
Mov 73h,9 acall tampil3
Recek_tbl_Sembilan3: mov a,p0
cjne a,0ddh,Recek_tbl_Sembilan3 ljmp Tbl_Satu4
Tbl_Nol3: mov P0,0efh
mov a,P0 cjne a,0ebh,Balik_Tbl_Satu3
mov 77h,bil0 Mov 73h,0
acall tampil3
Universitas Sumatera Utara
Recek_tbl_Nol3: mov P0,0efh
mov a,p0 cjne a,0ebh,Recek_tbl_Nol3
Ljmp Tbl_Satu4 Balik_Tbl_Satu3:
Ljmp Tbl_Satu3 tampil3:
mov sbuf,77h jnb ti,
clr ti mov sbuf,76h
jnb ti, clr ti
mov sbuf,75h jnb ti,
clr ti mov sbuf,74h
jnb ti, clr ti
ret Tbl_Satu4:
mov P0,7fh mov a,P0
cjne a,7eh,Tbl_Satu4 ; tombol A
Bandingkan: mov a,70h
cjne a,60h,Password_Salah mov a,71h
cjne a,61h,Password_Salah mov a,72h
cjne a,62h,Password_Salah mov a,73h
cjne a,63h,Password_Salah mov 64h,0
Universitas Sumatera Utara
buka: call kussunk
mov a,11h bk_pnt:
mov p1,a acall tunda_stepper
rr a Jnb Batas_Buka,Bk_pnt
mov p1,0h tunggu:
acall tunda_sejenak tutup:
mov p1,a acall tunda_stepper
rl a jnb batas_tutup,tutup
mov p1,0h ljmp utama
balik_Utama: ljmp Utama
Password_Salah: setb alarm
Acall tunda clr alarm
Acall tunda inc 64h
mov a,64h Cjne a,3,balik_Tbl_Satu4
Alarm_Aktip: setb alarm
Acall tunda clr alarm
acall tunda mov P0,0efh
mov a,P0 cjne a,0eeh,Alarm_Aktip ; tombol D
mov 64h,0 call tampilan_awal
Balik_Tbl_Satu4:
call kussunk Ljmp Tbl_Satu
Universitas Sumatera Utara
tampilan_awal: Ljmp utama
ret tunda_Stepper:
mov r7,100 tnd_Stepper:
mov r6,10 djnz r6,
djnz r7,tnd_Stepper ret
delay: mov r7,5
dly: mov r6,255
dl: mov r5,255
djnz r5, djnz r6,dl
djnz r7,dly ret
tunda: mov r7,5
tnd: mov r6,150
td: mov r5,255
djnz r5, djnz r6,td
djnz r7,tnd ret
tunda_Sejenak: mov r7,10
tnd_Sejenak: mov r6,255
td_Sejenak: mov r5,255
djnz r5, djnz r6,td_Sejenak
djnz r7,tnd_Sejenak ret
Universitas Sumatera Utara
kussunk: mov sbuf,Kosong
jnb ti, clr ti
mov sbuf,Kosong jnb ti,
clr ti mov sbuf,Kosong
jnb ti, clr ti
mov sbuf,Kosong jnb ti,
clr ti ret
end
Universitas Sumatera Utara
BAB 5
KESIMPULAN DAN SARAN
5.1. Kesimpulan