回首頁ㄌ 向上一網頁 8096 實習一 8096 實習二
         8096 實習三 8096 實習四 8096 實習五 8096 實習六 8096 實習七 8096 實習八

                                                  實 習 三

                    控 速 左 旋 燈

.INCLUDE 80C196KC.H ;定義各暫存器與I/O之位址

.SYMBOLS

.CHIP 80196KC ;定義晶片編號

.ORG 0A000H ;CCR暫存器的位址

LDB AL,#80H ;PPI_CW為單片上之8255位址﹐設定

STB AL,PPI_CW ;80H (ABC埠為輸出)

START:

LDB AL,#01 ;設為右邊第一燈

LDB BX,#16 ;DELAY時間變數之一

LDB CL,#8 ;減速8次 (8的燈)

ROTATE:

STB AL,PPI_PA ;AL送到A

LD DELY1,BX

CALL DELAY ;延遲

SHLB AL,#1 ;AL之值左移1BIT

SUBB BX,#2 ;延遲減0.25 Sec

DJNZ CL,ROTATE ;IF CL不為0跳至ROTATE

SJMP START

 

;延遲副程式 (DELAY 0.25E-5 *DELY2 *DELY1 Sec)

DELAY:

LD DELY2,#50000

DJNZW DELY2,$ ;IF DELY2不為0跳至自己

DJNZW DELY1,DELAY ;IF DELY1不為0跳至DELAY

RET

END