導航:首頁 > 操作系統 > 單片機點亮一盞燈匯編

單片機點亮一盞燈匯編

發布時間:2024-08-07 22:21:34

『壹』 匯編語言,利用AT89C51單片機結合8個發光二極體L0~L7,要求每間隔0.5秒依次點亮一盞燈,

ORG 0000H
LJMP MAIN
ORG 0030H
MAIN:
MOV R2,#3
MOV A,#0FEH
LOOP:
MOV P1,A
LCALL DELAY
RL A
DJNZ R2,LOOP
MOV P1,#0FFH
SJMP $
DELAY:
MOV R3,#10
DLY1:
MOV R4,#100
DLY2:
MOV R5,#250
DJNZ R5,$
DJNZ R4,DLY2
DJNZ R3,DLY1
RET
END

『貳』 51單片機怎麼用匯編實現流水燈循環點亮,要求亮1秒熄滅,等待一秒後下一個才點亮

嘿嘿 俺可以幫你噢
1 給你一個演算法
可以利用定時計數器0 定時50毫秒 允許中斷 再設置一個軟體計數器(初始值為20)
每當定時器定時時間到即50毫秒 計入中斷服務程序後 軟體計數器減1
等於0時 表示1秒鍾到( 要重新給軟體計數器送初值) 同時根據用戶標志FAL1=1 則
顯示內容左移 同時顯示 並將用戶標志FAL1取反
否則 顯示全滅 並將用戶標志FAL1取反。具體指導,可以參見右上角的網路私信。

呵呵 滿意就選滿意回答

『叄』 51單片機中如何用匯編語言編寫流水燈

流水燈就是51單片機控制led燈依次點亮的控制方式。具體程序如下:

ORG 0000H ;復位啟動
AJMP START ;
ORG 001BH ;T1中斷
AJMP T1INT ;

;定義變數========================
YSJS EQU 30H;延時計數器
LED EQU 31H;LED控制緩沖器

;主程序==========================
START: MOV LED,#0FEH ;初始化數據
MOV YSJS,#0 ;
MOV TMOD,#10H ;定時器1工作於方式1,16位定時器
MOV TL1,#0B0H ;設置定時初值
MOV TH1,#3CH ;定時時間=50mS
SETB ET1 ;使能定時器1中斷
SETB TR1 ;啟動定時器1
SETB EA ;開總中斷

MOV P1,LED ;初始化流水燈
LOOP: JMP LOOP ;循環等待中斷
T1INT: PUSH PSW ;定時器1中斷程序
PUSH ACC ;保護現場
MOV TH1,#3CH ;定時時間=50mS
MOV TL1,#0B0H ;
INC YSJS ;

PUSH ACC ;保護ACC
MOV A,YSJI ;
CJNE A,#2,QT1 ;50mS*2=100mS
MOV P1,LED ;
MOV A,LED ;
RL A ;累加器A的值循環左移1位
MOV LED,A ;
MOV YSJS,#0 ;
QT1: POP ACC ;恢復現場
POP PSW ;
RETI ;返回主程序
END ;匯編程序結束

(3)單片機點亮一盞燈匯編擴展閱讀:

實現流水燈的三個方法:

第一種,匯流排方法實現流水燈。這是一種比較笨但又最易理解的方法,採用順序程序結構,用位指令控制P1口的每一個位輸出高低電平,加上延時函數,即可控制每個LED燈的亮滅。

第二種,移位方法實現流水燈採用循環程序結構編程。首先在程序開始給P1.0口送一個低電平,其它位為高。然後延時一段時間再讓低電平往高位移動,這樣就實現「流水」的效果了。

第三種,庫函數實現流水燈。利用左移函數進行。

閱讀全文

與單片機點亮一盞燈匯編相關的資料

熱點內容
為什麼編譯原理難 瀏覽:551
送股派現的演算法 瀏覽:276
phpurl鏈接 瀏覽:953
蒸汽壓縮式製冷應用 瀏覽:867
如何算進攻伺服器 瀏覽:502
python文件緩存 瀏覽:782
程序員最近體檢 瀏覽:610
中國思想史pdf 瀏覽:631
android刷新launcher 瀏覽:257
甘肅白銀dns伺服器雲主機 瀏覽:471
可以正常支付的發卡源碼 瀏覽:712
伺服器系統怎麼管理虛擬機 瀏覽:29
怎麼下載跨聲app 瀏覽:645
人人都懂設計模式python 瀏覽:676
其他安卓機如何刷smartisanos 瀏覽:17
珠海教材Python 瀏覽:484
51單片機結構和原理 瀏覽:246
phpdbf 瀏覽:281
三電貝洱壓縮機怎麼樣 瀏覽:543
流行的linux版本 瀏覽:152