Menghidupkan display LED 8 x 7 segment
rangkaian ini menggunakan display led 8x7 dan transistor sebagai penghidup seven segment, pada percobaan ini bisa menggunakan led yang terpisah (satuan/singgle) yang disusun, dimana kaki yang sama di hubungkan dan commonya setiap masing-masing sevensegment di beri transistor, karena prinsipnya rangkaian ini bekerja secara bergantian dengan delay yang sangat cepat, sehingga terlihat bersamaan.
ok gan langsung aja ki masuk pembuatan
rangkaian ini gw buat pake proteus,,,,,lanjut aja tinggal rangkai skematiknya,,,,,
rangkaian ini menggunakan display led 8x7 dan transistor sebagai penghidup seven segment, pada percobaan ini bisa menggunakan led yang terpisah (satuan/singgle) yang disusun, dimana kaki yang sama di hubungkan dan commonya setiap masing-masing sevensegment di beri transistor, karena prinsipnya rangkaian ini bekerja secara bergantian dengan delay yang sangat cepat, sehingga terlihat bersamaan.
ok gan langsung aja ki masuk pembuatan
rangkaian ini gw buat pake proteus,,,,,lanjut aja tinggal rangkai skematiknya,,,,,
Circuit diagram :
;
; Program untuk menghidupkan Display 8x7 segment HD001
; untuk menampilkan tulisan "-Haline-" mati - hidup
; File name : HL6.H51
;
org 0h
Ulang: Mov R5,#50H ; Register 5 diisi 50h untuk
; keperluan jumlah pengulangan
; display hidup
Hidup: Mov DPTR,#Haline ; Isidata pointer dengan alamat
; Haline
Mov R6,#08h ; R6=8= jumlah digit 7segment
mov R1,#0FEH ; R1 = Common
Ulang1:
Clr A ; Isi Accumulator dengan 0
Movc A,@A+DPTR ; Pindahkan data ke n ke A
Inc DPTR ; Data pointer tambahkan dengan 1
Mov P0,A ; Keluarkan data A ke port 0
Mov A,R1 ; Pindahkan isi register 1 ke Acc.
Mov P2,A ; Keluarkan isi A (common) ke port 2
RL A ; Rotate Accumulator left
|
;
mov R1,A ; Kembalikan isi Accumulator ke R1
Lcall Delay ; Panggil sub routine delay
Mov P0,#0FFh ; Buat P0 berlogika 1 (semua LED
; padam)
Djnz R6,Ulang1 ; Ulangi sampai 8 kali (8 digit)
Djnz R5,Hidup ; Ulangi langkah diatas sampai 50h
; kali
Mov R5,#0FFh ; Isi Register 5 dengan FFh (untuk
; pengulangan saat padam)
Mati: Lcall Delay ; Panggil sub routine delay
Djnz R5,mati ; Ulangi sampai FFh(255) kali
Ljmp Ulang ; Ulangi semua langkah diatas dari
; awal
;
; sub routine delay
;
Mov R2,#90h ; Isi Register R2 dengan 90h
Delay: Djnz R2,Delay ; ulangi langkah ini sapai 90h kali
Ret ; Kembali
;
; DATA AREA
;
Haline: DB 0FDh,70h,24h,0BAh,77h,62h,0A0h,0FDh
END