.
Circuit diagram :
Program :
;------------------------------------------------------------------------------------
;program untuk membaca tombol-tombol yang disusun
;secara matrik, input tombol pada port 1, output
;tombol pada port 2 dan hasil ditampilkan pada
;display 7 segment di port 0 file name HL11, H51
;-----------------------------------------------
Org 0h
Mulai:
Mov p2, #0fEh ; buat p2.0 = 0 (untuk baca tombol
;0,A,B,C,F4
Jb P1.7,key1 ; lompat ke key1 jika p1.7 =1 dan
;bila =0 maka
Mov p0, #0AAh ; keluarka kode huruf 'C' ke port 0
SJMP mulai ; lompat ke label mulai
Key1 :
Jb p1.6,key2 ; lompat ke key1 jika p1.6 =1 dan
;bila =0 maka
Mov p0,#38h ; keluarka kode huruf 'g' ke port 0
SJMP mulai ; lompat ke label mulai
Key2 :
Jb p1.5,key3
Mov p0, #60h
SJMP mulai
Key3 :
Jb P1.4,key4
Mov P0,#22h
SJMP mulai
Key4 :
Jb P1.3,key5
Mov P0,#70h
SJMP mulai
;---------------------------
Untuk baca tombol 1,2,3,D,f3
;---------------------------
Key5 :
Mov P2,#0FDh
Jb P1.7,key6
Mov P0,#34h
SJMP mulai
Key6 :
Jb P1.6,key7
Mov P0,#25h
SJMP mulai
Key7 :
Jb P1.5,key8
Mov P0,#0A4h
SJMP mulai
Key8 :
Jb P1.4,key9
Mov P0,#77h
SJMP mulai
Key9 :
Jb P1.3,key10
Mov P0,#62h
SJMP mulai
Key10 :
;----------------------------
;untuk baca tombol 4,5,6,E,F2
;----------------------------
Mov P2,#0FBh
Jb P1.7,key11
Mov P0, #0A8h
SJMP mulai
Key11 :
Jb P1.6,key12
Mov P0,#28h
SJMP mulai
key12 :
Jb P1.5,key13
Mov P0,#29h
SJMP mulai
Key13 :
Jb P1.4,key14
Mov P0,#71h
SJMP mulai
Key14 :
Jb P1.3,key15
Mov P0,#0BAh
LJMP mulai
Key15 :
;----------------------------
;Untuk baca tombol 7,8,9,F,F1
;---------------------------
Mov P2,#0F7h
Jb P1.7,key16
Mov P0,#0E8h
LJMP mulai
Key16 :
Jb P1.6,key17
Mov P0,#0E8h
LJMP mulai
Key17 :
Jb P1.5,key18
Mov P0,#20h
LJMP mulai
Key18 :
Jb P1.4,key19
Mov P0,#67h
Key19 :
Jb P1.3,key20
Mov P0,#0E0h
Key20 :
LJMP mulai
END