Senin, 11 Februari 2008

Percobaan 9.2. Aplikasi Timer 0, Mode 3 sebagai counter 8 bit dengan output 7 Segmen

Pada percobaan ini, pulsa diambil melalui clock generator yang dibangkitkan oleh IC 555 yang mempunyai frekuensi 1 Hz, hasil cacahan biner pada register counter akan ditampilkan pada 7 Segmen.
Lakukan beberapa langkah percobaan sebagai berikut:
1. Hubungkan 1 buah kabel antara P3.5 dengan output clock IC 555
2. Hubungkan jumper konektor 7Segmen_EN
3. Hubungkan modul Microcontroller Trainer dengan power supply +5V
4. Hubungkan modul Microcontroller Trainer dengan rangkaian programmer
5. Buka Program M-IDE Studio for MCS-51, sebagai editor dan compiler program
6. Ketik program berikut ini: (download file prog92a.asm)

ratusan   equ 30h
puluhan equ 31h
satuan equ 32h
Org 0h
Mov TMOD,#00000111b ; mode 3 counter 8 bit timer 0
Setb TR0 ; TR1 = 0, start counting
Get: Mov A, TL0 ; A = TL0
Call Bin2Dec ; panggil subroutine biner ke desimal
Call Display7Segmen; panggil subroutine display 7 segmen
Sjmp Get ;Looping Forever
;
Bin2Dec:
mov b,#100d
div ab
mov ratusan,a
mov a,b
mov b,#10d
div ab
mov puluhan,a
mov satuan,b
ret
;
Display7Segmen:
clr P3.5
clr P3.6
clr P3.7
mov A, ratusan
mov DPTR,#Data7segmen
movc A,@A+DPTR
mov P0,A
call delay
;
setb P3.5
clr P3.6
clr P3.7
mov A, puluhan
mov DPTR,#Data7segmen
movc A,@A+DPTR
mov P0,A
call delay
;
clr P3.5 ;
setb P3.6
clr P3.7
mov A, satuan
mov DPTR,#Data7segmen
movc A,@A+DPTR
mov P0,A
call delay
ret
;
delay: mov R0,#0
delay1:mov R2,#0fh
djnz R2,$
djnz R0,delay1
ret
;
Data7segmen:
db 11000000b,11111001b,10100100b,10110000b,10011001b
db 10010010b,10000010b,11111000b,10000000b,10010000b
;
end

7. Simpanlah program yang anda ketik dan beri nama : prog92a.asm
8. Pada program MIDE tersebut pilih Build /F9 atau untuk melakukan kompilasi program dari *.asm ke *.hex.
9. Lakukan pemrograman mikrokontroller dengan menggunakan Program ISP Software ( Lihat Petunjuk Penggunaan)
10. Lakukan pengamatan pada display 7 segmen ? dan lengkapi tabel berikut.

Clock ke
Display 7 Segmen
1
?
2
?
3
?
4
?
5
?
:
:
20
?

BACK NEXT

Tidak ada komentar: