當前位置:編程學習大全網 - 編程軟體 - 單片機 跑馬燈 代碼詳解

單片機 跑馬燈 代碼詳解

ORG 0000H ;開機上電主程序入口

AJMP START ;系統壹進來就轉到主程序

ORG 0030H ;主程序地址

START: MOV A, #0FFH ;主程序開始,A中初始化成全1

CLR C ;c清零

MOV R2, #08H ;R2左轉循環計數器

LOOP: RLC A <<C+A+C<<帶進位循環左移,A中的內容在8此循環中從0位到7位依次變0

MOV P2, A ;送到P2,使P2從0位到7位依次點亮LED

CALL DELAY ;單片機運行很快,為了能看到燈的變化,必須延遲,把速度降下來

DJNZ R2, LOOP ;R2每次減1後判斷是否=0,8次後=0程序才會下行,否則會跳回LOOP

MOV R2,#07H ;R2右轉循環計數器

LOOP1: RRC A >>C+A+C>>帶進位循環右移,A中的內容在8此循環中從7位到0位依次變0

MOV P2, A ;送到P2,使P2從7位到0位依次點亮LED

CALL DELAY ;和上個循環壹樣,延時

DJNZ R2, LOOP1 ;R2每次減1後判斷是否=0,7次後=0程序才會下行,否則會跳回LOOP1

JMP START ;跳回程序起始位置重復下壹個循環

DELAY: MOV R3, #20;延時子程序,這個應該不用解釋了吧

D1: MOV R4, #200

D2: MOV R5, #248

DJNZ R5, $

DJNZ R4, D2

RET

END

  • 上一篇:玩魔獸爭霸怎麽設置鼠標 dpi
  • 下一篇:壹道簡單的VFP題
  • copyright 2024編程學習大全網