Sebuah variasi animasi LED redup berjalan bolak balik, dengan pemrograman assembly yang didownloadkan ke mikrokontroller 8051. Hanya sekedar hiburan semata, saya yakin Anda bisa membuatnya lebih baik dan lebih menarik lagi.

Contoh Program Assembly LED Berjalan Bolak-Balik
Source Code:
$MOD51 ; This includes 8051 definitions for the Metalink assembler
; Please insert your code here.
;--------------------------------------------------------------------------------
;
; Lampu menyala pingpong kiri ke kanan, kanan ke kiri di port 0
; author: www.bundet.com
;---------------------------------------------------------------------------------
Org 0h
MOV A, #0FEh ; simpan data 11111110B ke akumulator (P0.0 menyala duluan)
MULAI:
MOV P0,A ; kirim data ke Port 1
ACALL DELAY ; tunda sebentar
RL A ; putar isi akumulator ke kiri 1 bit
CJNE A,#7FH,MULAI ; apakah A=01111111B ? Tidak, ulangi lagi!
MULAI1: ; Ya, lanjutkan ke proses berikut...
MOV P0,A ; kirim data ke Port 1
ACALL DELAY ; tunda sebentar
RR A ; putar isi akumulator ke kanan 1 bit
CJNE A,#0FEh,MULAI1 ; apakah A=11111110B ? Tidak, ulangi lagi!
SJMP MULAI ; Ya, ulangi lagi dari paling awal...
;-subrutin DELAY------------------------------------------------------------------
;
; subrutin ini hanya sekedar melakukan penundaan sesaat dengan cara
; mengulangi proses (pengurangan isi register) hingga dicapai suatu
; kondisi tertentu
;
;---------------------------------------------------------------------------------
Delay:
Mov R0,#5 ; Isi Register R0 dengan 0 (5x ulang)
Delay1:
Mov R1,#2h ; Isi Register R1 dengan 0 (25x ulang)
Djnz R1,$
Djnz R0,Delay1
Ret
End
Demo:
https://youtu.be/8Obnzi6Bb_M
DOWNLOAD SCHEMATIC (117KB)