Dibuat untuk Memenuhi Tugas Mata Kuliah Mikroprosesor Digital yang Diberikan oleh Bapak Darmawan Hidayat, MT
JURUSAN FISIKA FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS PADJADJARAN 2013
Tugas 1 B Buat Flowchart dan program dengan MCS-51 utk proses berikut: 1. input Push Button (PB) PB1 di p1.0 PB2 di p1.1 2. Output : 1 buah peraga 7-segmen di p2 3. proses : tampilan awal 7-segmen: karakter 0 (nol) peraga 7-segmen mencacah naik terus dari 0-9 jika pb1 ditekan-lepas sekali peraga 7-segmen berhenti mencacah jika pb1 ditekan-tahan peraga 7-segmen mencacah turun terus jika pb2 ditekan-lepas sekali peraga 7-segmen berhenti mencacah jika pb2 ditekan-tahan
mov r7,#09h mov p1,#255 mov b,#0 mov a,b lcall tampil mov p2,a tekan: naik: mulai1: jnb p1.0,naik jnb p1.1,turun jmp tekan jnb p1.0,naik lcall tunda inc b mov a,b lcall tampil mov p2,a djnz r7,naik sjmp tekan jnb p1.1,turun lcall tunda dec b mov a,b lcall tampil mov p2,a djnz r7,turun sjmp tekan end tunda: wait: mov r0,#0 mov r1,#0 djnz r0,wait djnz r1,wait ret inc a movc a,@a+pc ret db 3fh ;0 db 06h ;1 db 5bh ;2 db 4fh ;3 db 66h ;4 db 6dh ;5 db 7dh ;6 db 07h ;7 db 7fh ;8 db 67h ;9
Listing Program :
tampil:
turun: mulai2:
Flowchart :
mulai
tekan
R7 = 9 P1 = 255 b=0
mulai
Tidak
naik
ya
P1.0 = 0 tidak
Tidak
R7 = 9 P1 = 255 b=0
a=b
turun ya
P1.1 = 0 a=b
tampil
tampil
P2 = a
tampil
P2
a = a+1
P2 = a
tekan
a = @a+PC
P2
tunda
tekan
R0 = 0 R1 = 0
R0 = R0-1
tidak R0 = 0
Ya
tidak R1 = R1-1
R1 = 0
turun ya P1.1 = 0
tidak
naik ya P1.0 = 0
tidak
tunda
tunda
b = b-1
b = b+1
a=b
a=b
tidak
P2 = a
P2 = a
P2
P2
R7 = R7-1
R7 = R7-1
R7 = 0
R7 = 0
ya tekan
ya tekan