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
   61   62   63   64   65   66   67   68   69   70   71