I. TUJUAN
II. ALGORITMA
Dengan menggunakan konsep penampilan karakter pada 7-segment pada
bab 2 dapat dibuat tampilan karakter bergerak. Tampilan bergerak ke kiri berarti
tempat karakter yang ditampilkan berubah yang sebelumnya pada digit 0 menjadi
pada digit 1, yang sebelumnya digit 1 menjadi digit 2 dan seterusnya kemudian
pada tampilan digit 0 diisi dengan karakter yang baru, hal ini dapat dilakukan
dengan membuat alamat memori display tempat karakter berubah-ubah seperti
ditunjukkan pada algoritma berikut:
Digit 5 Digit 4 Digit 3 Digit 2 Digit 1 Digit 0
Peraga
7-Segment
-1-
30=00 300=00
31=00 301=00
32=00 302=00
33=00 1 303=00
34=00 2
304=00
35=00 305=40
3 306=40
307=76 'H'
4
5
308=5C 'o'
309=50 'r'
30A=5F 'a'
30B=6D 'S'
30C=80
30D=80 '.'
30E=80 '.'
30F=0FH 'J'
310=1CH 'u'
311=5FH 'a'
312=74H 'h'
313=40H '-'
314=0FH 'J'
315=1CH 'u'
316=5FH 'a'
317=74H 'h'
318=40H '-'
25 319=80 '.'
26 31A=80 '.'
31B=80 '.'
31C=00
31D=00
31E=00
-2-
III. ALAT DAN BAHAN
-Komputer Dengan Program Proteus.
ORG 00
SJMP START
ORG 30H
START: CALL CLEAR_DISP ; Clear memori display
MOV R4,#03H ; Set alamat awal Tabel pesan (300H)
MOV R3,#00H
MOV R2,#1AH ; Set Banyak Geser
ULANG: MOV DPH,R4 ;Berikan alamat awal dari pesan
MOV DPL,R3 ; yg ditampilkan
CALL COPY ;Copy pesan ke memori display
MOV R5,#0FH ;Set delay gerak pesan
TAHAN: MOV R6,#0FFH ;
TAHAN1: CALL OUT_DISP ;Tampilkan Pesan
DJNZ R6,TAHAN1 ;Kurangi delay
DJNZ R5,TAHAN
INC R3 ;Naikkan alamat awal pesan yg akan dicopy
CJNE R3,#00,LJT ;Jika R3 telah 00 naikkan
INC R4 ;R4
LJT: DJNZ R2,ULANG ;Ulangi jika banyak Geser belum habis
JMP START ;Ulangi dari awal pesan
-3-
MOV @R0,A ;Simpan ke memori Display
DEC R0 ; Kurangi banyak pesan
INC R1 ;Naikkan alamat tabel pesan
CJNE R1,#06,ISI ;Ulangi jika belum semua buffer diisi
RET ; Kembali
CLEAR_DISP:
MOV R0,#30H ;Tandai alamat buffer display
UL_kOSONG:MOV A,#00 ; Set data 00
MOV @R0,A ; Data 00 kebuffer display
INC R0 ; Naikkan alamat buffer Display
CJNE R0,#36H,UL_kOSONG; Ulangi hingga semua
RET ; Kembali
ORG 210H
DB 00H,01H,02H,03H ;Data Trace
DB 04H,05H
ORG 300H
DB 00H, 00H, 00H, 00H
DB 00H, 40H, 40H, 76H
DB 5CH, 50H, 5FH, 6DH
DB 80H, 80H, 80H, 0FH
DB 1CH, 5FH, 74H, 40H
DB 0FH, 1CH, 5FH, 74H
DB 40H, 80H, 80H, 80H
DB 00H, 00H, 00H
END
-4-
1. Masukkan Program dan nilai segment dari pesan yang akan ditampilkan.
(“HorAS JUAH—JUAH ”)
2. Eksekusi Program
3. Amati tampilan peraga 7-segment dan catat hasilnya.
4. Kurangi lama delay sehingga tampilan lebih cepat bergerak hingga enak dibaca
5. Ubah isi memori segment sehingga tampilan “Saya belajar ”
6. Perbaiki program (isi register C) sehingga pesan yang ditampilkan sesuai
dengan yang diinginkan.
7. Laporkan hasil pengamatan anda
8. Berikan analisa anda dan kesimpulan
-5-