Kamis, 22 Desember 2011

Running LED

( LED Berjalan / Running LED )
$mod51
org 00h
jmp mulai
mulai:
;inisialisasi
mov p0, #00
mov p1, #00
mov p2, #00
mov p3, #00
;kedip mulai disini
ulang: mov a, #1 ( Menghidupkan LED Dg Mengisi Acumulator Dg Nilai 1 )
kiri: rl a ( Merotasikan Isi Acumulator Ke Kiri )
mov p1,a ( Kirimkan Isi Acumulator Ke Port 1 )
call delay ( Penundan Sesaat )
call delay
cjne a, #128,kiri
kanan: rr a ( Merotasikan Isi Acumulator Ke Kanan )
mov p1,a ( Kirimkan Isi Acumulator Ke Port 1 )
call delay ( Penundan Sesaat )
call delay
cjne a, #1,kanan ( Menjalankan Isi Acumulator Ke Kana 1 Per 1 )
jmp ulang
delay: ;mode pengurangan 5x255
mov r0, #255 ( Nilai Di Perkecil, Berkedipnya Lebih Cepat )
loop1: mov r1, #255
loop: dec r1
cjne r1,#00, loop ( Sebelum Isi Register Sampai Pada Alamat 00h Maka Lanjut Ke Loop )
dec r0
cjne r0, #00, loop1
ret
end

Tidak ada komentar:

Posting Komentar