欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136
標題:
51單片機匯編學習例程(0)——LED篇
[打印本頁]
作者:
s414545584
時間:
2019-12-12 22:26
標題:
51單片機匯編學習例程(0)——LED篇
0.ASM0_LED_Flash:LED閃爍,3種方式
LED_Flash.jpg
(352.84 KB, 下載次數: 42)
下載附件
2019-12-12 22:23 上傳
/**
******************************************************************************
* @file asm.asm
* @author Alex——小白
* @version V1.0
* @date 2019.9.1
* @brief 3種方法LED Flash 共陽極
******************************************************************************
* @attention All Rights Reserved
**/
ORG 0000H ;程序執行的起始地址
LJMP Main ;跳轉到main函數
ORG 0100H ;程序跳轉到0100H開始執行
;方法1:
Main: ;最簡單的LED閃爍
MOV P1,#0FEH ;11111110
LCALL Delay ;調用延時函數
MOV P1,#0FDH ;11111101
LCALL Delay ;調用延時函數
MOV P1,#0FBH ;11111011
LCALL Delay ;調用延時函數
MOV P1,#0F7H ;11110111
LCALL Delay ;調用延時函數
MOV P1,#0EFH ;11101111
LCALL Delay ;調用延時函數
MOV P1,#0DFH ;11011111
LCALL Delay ;調用延時函數
MOV P1,#0BFH ;10111111
LCALL Delay ;調用延時函數
MOV P1,#07FH ;01111111
LCALL Delay ;調用延時函數
SJMP Main ;跳轉到main,死循環
;方法2:
; Main: ;通過數組的遍歷取值來流水
; MOV DPTR,#LED_table ;數組
; MOV R4,#00H ;R4寄存器存儲遍歷的變量,類似于c語言中的變量i
; While:
; MOV A,R4 ;將R4賦值給A
; CJNE A,#08H,Next ;判斷A是否為8,若是,繼續執行,否則跳轉Next
; MOV R4,#00H ;若A是8,R4賦值0
; SJMP While ;跳轉到While循環
; Next:
; MOVC A,@A+DPTR ;通過A的值來選擇數組中的值,如A=3,則@A+DPTR=0F7H,然后賦值給A
; MOV P1,A ;P1=A=0F7
; LCALL Delay ;調用延時函數
; INC R4 ;R4自加
; SJMP While ;跳轉到While循環
;方法3:
; Main: ;通過左移流水燈,RR是右移
; MOV A,#0FEH ;11111110
; While:
; MOV P1,A ;P1 = A = 11111110
; LCALL Delay ;調用延時函數
; RL A ;A左移,11111110左移后=11111101,
; SJMP While
Delay: ;t=t1*8=1s,修改R5的值即可更改時間(不精準)
MOV R5, #08H ;單周期,8次
D1: ;t1=t2*250=500*250=125000
MOV R6, #0FAH
D2:
MOV R7, #0FAH ;t2=250*2=500
D3:
DJNZ R7, D3 ;R7=250自減,直到為0跳出循環,雙周期
DJNZ R6, D2 ;R6=250自減,直到為0跳出循環,雙周期
DJNZ R5, D1 ;R5=100自減,直到為0跳出循環,雙周期
RET
LED_table:
DB 0FEH, 0FDH, 0FBH, 0F7H, 0EFH, 0DFH, 0BFH, 07FH
END
復制代碼
工程文件:
ASM0_LED_Flash.zip
(64.98 KB, 下載次數: 11)
2019-12-12 22:25 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
歡迎光臨 (http://www.raoushi.com/bbs/)
Powered by Discuz! X3.1