Sebuah pemrograman assembly untuk menampilkan animasi nyala LED berjalan menggunakan mikrokontroller 8051.

Contoh Program Assembly Nyala LED Berjalan
Source Code:
$MOD51 ; This includes 8051 definitions for the Metalink assembler
; Please insert your code here.
;--------------------------------------------------------------------------------
;
; Lampu berjalan dari P0.0 s/d P0.7 kemudian kembali lagi
; author: www.bundet.com
;---------------------------------------------------------------------------------
Org 0h
Mov A,#00000001B ; data lampu menyala dikirim melalui akumulator
; agar P0.0 pertama kali menyala, akumulator
; diisi dengan 11111110B atau 0FEh
Mulai:
Mov P0,A ; kirimkan data di akumualtor ke port 1
Acall Delay ; lakukan penundaan sesaat
RL A ; rotasikan isi akumulator ke kiri
; +->------>----->----->+
; | |
; +<--7-6-5-4-3-2-1-0<--+
Sjmp Mulai ; ulangi lagi dari 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, #1h ; Isi Register R0 dengan 0 (256x ulang)
Delay1:
Mov R1, #0 ; Isi Register R1 dengan 0 (256x ulang)
Djnz R1,$
Djnz R0,Delay1
Ret
End
Demo:
https://youtu.be/UcKWAikdGHs
DOWNLOAD SCHEMATIC (117KB)
Variasi Lain

Source code:
;=====================================
; bundet.com
; VARIASI LED BERJALAN
;=====================================
#include <sfr51.inc>
ORG 00H
mov A, #00000001b
MULAI: RR A
MOV P2, A
MOV P0, A
ACALL TUNDA
SJMP MULAI
TUNDA: MOV R0, #001h
TUNDA1: MOV R1, #0FFH
TUNDA2: MOV R2, #0FFH
TUNDA3: NOP
DJNZ R2, TUNDA3
DJNZ R1, TUNDA2
DJNZ R0, TUNDA1
RET
END
Demo:
https://youtu.be/5Pco-M1RfwM
Semoga bermanfaat & selamat belajar!