Page 66 -
P. 66
;
; 本程式以 P0 到 P2 為輸出,P3 為輸入,
;
; 應用指令:
; 旋轉指令 RL
; 互斥或指令 XRL
; 堆疊 PUSH 和 POP
;
; 動作: 以 P3.7 為切換開關設定不同顯示方式,
; 當 P3.7 為 0 時 LED 全亮時則逐點暗掉,當 LED 全暗時則逐點亮起,
; P3.0~6 為延遲時間長短控制
;
; 說明: 暫存器 R0 用以控制 P0 到 P3 為全亮或全暗,R1 用以控制目前掃描的位置
; 暫存器 R2 用以儲存延遲時間之設定
;
ORG 00H
JMP INIT ;規避 00H 至 2FH 間之中斷向量執行位址
ORG 30H
INIT: MOV SP,#30H ;將堆疊指標重新指向
MOV R2,#25 ;暫存器 R2 設定初始延遲時間 25*20mS
MOV A,#00H ;將埠 2 至埠 0 設定為全滅
MOV R3,A
MOV A,R3
MOV P2,A
CALL DELAY
MOV A,R3
MOV P1,A
CALL DELAY
MOV A,R3
MOV P0,A
CALL DELAY
START: MOV R2,#25 ;暫存器 R5 設定初始延遲時間 25*20mS
MOV A,R3
CPL A
MOV R3,A
MOV P2,A
CALL DELAY
MOV A,R3