實 習 一
左 旋 燈
.INCLUDE
80C196KC.H ;定義各暫存器與I/O之位址
.SYMBOLS
.CHIP
80196KC ;定義晶片編號
.ORG
0A000H ;CCR暫存器的位址
LDB AL,#80H ;PPI_CW為單片上之8255位址﹐設定
STB AL,PPI_CW ;為80H
(A、B、C埠為輸出)
START: ;主程式開始
LDB AL,#00000001B ;設為右邊第一燈
LEFT:
STB AL,PPI_PA
;AL送到A埠
CALL DELAY ;延遲
SHLB AL,#1 ;AL之值左移1BIT
JNC LEFT ;IF
C旗標為0跳至LEFT
SJMP START ;JUMP
START (C=1)
DELAY: ;延遲副程式 (DELAY
0.25 Sec)
LD DELY1,#2
D1:
LD DELY2,#50000
DJNZW DELY2,$ ;IF DELY2不為0跳至自己
DJNZW DELY1,D1 ;IF DELY1不為0跳至D1
RET
;副程式結束