標(biāo)題: 單片機(jī)跑馬燈設(shè)計(jì)(匯編語(yǔ)言) [打印本頁(yè)]

作者: lalaYeol    時(shí)間: 2020-7-19 16:24
標(biāo)題: 單片機(jī)跑馬燈設(shè)計(jì)(匯編語(yǔ)言)
原理圖:


代碼:
ORG 0000H         

LJMP MAIN                ;跳轉(zhuǎn)到主程序

ORG 0003H

AJMP INT            ;跳轉(zhuǎn)到中斷

ORG 0030H

MAIN: MOV IE,#81H        ;開放外部中斷源0

      MOV TCON,#01H        ;TCOND7D0全為零,T0T1都停止計(jì)數(shù)

      MOV A, #01H        ;01這個(gè)數(shù)立即送到累加器A
         
          MOV P1,#00H        ;P1口輸出低電平0

LOOP: MOV P2, A                ;累加器A中的數(shù)據(jù)傳送到P2寄存器,

      LCALL DELAY        ;跳轉(zhuǎn)到延遲

      RR A                 ;燈向右亮

      SJMP LOOP                ;循環(huán)

      SJMP $



DELAY: MOV R2, #0FFH          ;延遲程序

DELAY1: MOV R3, #0FFH

DJNZ R3, $                                ;循環(huán)等待R3不為0,直到R3=0往下執(zhí)行

DJNZ R2, DELAY1                 ;延遲

RET                                                ;返回



ORG 0050H
        
INT:  PUSH ACC          ;保護(hù)現(xiàn)場(chǎng)

          MOV R4,#08H

          MOV P3,#00H  ;P3口輸出低電平0

          MOV R6,#02H

          LOOP2:MOV R6,#02H        ;循環(huán)指令

      MOV R6, P1
        
          ACALL DELAY  ;跳轉(zhuǎn)到延遲

          DJNZ R6,LOOP2        

          POP ACC           ;恢復(fù)現(xiàn)場(chǎng)
        
          RETI        ;中斷程序返回


END







歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1