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

單片機亮燈匯編

發布時間:2023-10-19 05:32:16

單片機點亮一盞led燈代碼

用MCS51單片機匯編語言編寫的點亮一隻LED燈源程序LED1.ASM,代碼如下:
ORG 0000H
AJMP MAIN
ORG 0030H
MAIN:MOV A,#FEH
MOV P1,A
AJMP $
END

⑵ 51單片機用匯編語言如何設計8個輪流呼吸的呼吸燈

因為我不知道你這個板子的硬體,我就假設一下吧,你自己對照著看看,關鍵是流程
假設如下這八個燈依次接在P0口的八個口上,高電平為燈亮,低電平為燈滅,程序如下
ORG 0000H
AJMP START
START:MOV P0,#01H;()只有第一個燈亮
ACALL DELAY;延遲,不加延遲的話 你根本看不起清到底那個燈亮的
MOV P0,#02H;()只有第二個燈亮
ACALL DELAY
MOV P0,#04H;()只有第三個燈亮
ACALL DELAY
MOV P0,#08H;()只有第四個燈亮
ACALL DELAY
MOV P0,#10H;()只有第五個燈亮
ACALL DELAY
MOV P0,#20H;()只有第六個燈亮
ACALL DELAY
MOV P0,#40H;()只有第七個燈亮
ACALL DELAY
MOV P0,#80H;()只有第八個燈亮
ACALL DELAY
AJMP START;周而復始
DELAY: MOV R6,#40;延遲程序,晶振為3.57MHZ時大概是0.1S
0.1SL1: MOV R5,#246
0.1SL2: NOP
DJNZ R5,0.1SL2
DJNZ R6,0.1SL1
RET
END

⑶ 單片機匯編程序:有八個小燈,要求從內到外隔一個依次點亮,

/* 實驗目的:初步了解單片機I/O口的工作原理,進一步掌握51單片機的匯編指令。
* 實驗內容:用匯編指令對單片機I/O口進行編程,控制8個發光二極體的流水亮滅。
*/
/* 程序詳細功能介紹:
*做單一燈的左移右移,八個發光二極體L0-L7分別接在單片機的P0.0-P0.7介面上,
*輸出「0」時,發光二極體亮,開始時P0.0→P0.1→P0.2→P0.3→┅→P0.7→P0.6→┅→P0.0亮,重復循環。
*/
ORG 0000H
LJMP START
ORG 0030H
START:
MOV R2,#8 ;左移次數
MOV A,#0FEH ;A的初始值,即 P0.0的L0 點亮
SETB C
LOOP: MOV P0,A
LCALL DELAY
RLC A ;左移流水燈(帶進位的左移),即亮點向P0口的高位移動
DJNZ R2,LOOP

MOV R2,#8 ;右移次數
LOOP1: RRC A ;右移流水燈
MOV P0,A
LCALL DELAY
DJNZ R2,LOOP1
LJMP START

DELAY: MOV R5,#10 ;延時子程序,改變R5,R6,R7 的值,可以改變延時的時間,從而改變流水燈移動速度
D1: MOV R6,#20
D2: MOV R7,#248
DJNZ R7,$
DJNZ R6,D2
DJNZ R5,D1
RET
END

⑷ 各位單片機達人幫個忙 用匯編語言做一個 發光二極體循環點亮的程序 要求 使八隻發光二極體做循環點亮一次

發光二極體循環點亮

八隻發光二極體左循環點亮一次、然後右循環點亮一次。

循環。

模擬試驗成功。

⑸ 單片機led左移然後右移循環亮滅的匯編語言

ORG 0000H
LJMP MAIN
ORG 0030H
MAIN:
MOV A,#0FEH
MOV R2,#8
LOOP1:
MOV P0,A
LCALL DELAY
RL A
DJNZ R2,LOOP1
MOV R2,#8
LOOP2:
MOV P0,A
LCALL DELAY
RR A
DJNZ R2,LOOP2
SJMP MAIN
DELAY:
MOV R2,#200
DLY:
MOV R3,#250
DJNZ R3,$
DJNZ R2,DLY
RET
END

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

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

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

;定義變數========================
YSJSEQU 30H;延時計數器
LEDEQU 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;匯編程序結束

(6)單片機亮燈匯編擴展閱讀:

實現流水燈的三個方法:

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

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

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

⑺ 用匯編語言讓51單片機八個燈從左到右依次點亮且都不滅,每個燈亮的時

用匯編語言讓51單片機八個燈從左到右依次點亮且都不滅,每個燈亮的時間間隔0.5秒,然後全滅,再循環之前的步驟。
參考如下:

  1. 電路

    LED_COUNT DATA 30H
    T0_COUNT DATA 31H

    ORG 0000H
    LJMP MAIN
    ORG 000BH
    LJMP T0_INT

    ORG 0030H
    MAIN:
    ANL TMOD,#0F0H
    ORL TMOD,#01H
    MOV TH0,#3CH
    MOV TL0,#0B0H
    ORL IE,#82H
    SETB TR0
    CLR F0
    MOV LED_COUNT,#00H
    MOV T0_COUNT,#00H
    MOV DPTR,#TAB

    M1:
    JNB F0,M2
    CLR F0
    MOV A,LED_COUNT
    MOVC A,@A+DPTR
    MOV P2,A
    INC LED_COUNT
    MOV A,#9
    CJNE A,LED_COUNT,M2
    MOV LED_COUNT,#00H
    M2:
    SJMP M1

    T0_INT:
    MOV TH0,#3CH
    MOV TL0,#0B0H
    INC T0_COUNT
    MOV A,#10
    CJNE A,T0_COUNT,T
    MOV T0_COUNT,#00H
    SETB F0
    T:
    RETI

    TAB:
    DB0FEH,0FCH,0F8H,0F0H,0E0H,0C0H,80H,00H,0FFH
    END

    希望能達到你的要求!!!!!

閱讀全文

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

熱點內容
安卓10制空霸權怎麼打開 瀏覽:255
視唱練耳用什麼app好 瀏覽:585
有兩個項目要部署在雲伺服器上 瀏覽:930
信源編解碼器的作用 瀏覽:919
remove命令linux 瀏覽:599
php發送郵件鏈接 瀏覽:34
創維冰箱壓縮機 瀏覽:869
nginxopenssl交叉編譯 瀏覽:750
相機卡無法創建新文件夾 瀏覽:225
單片機照明控制系統程序代碼 瀏覽:10
服務編程一體化 瀏覽:471
tx小霸王伺服器是什麼意思 瀏覽:545
計算機編程工齡工資怎麼算 瀏覽:491
macandroid配置環境變數 瀏覽:854
做項目文件夾的圖標 瀏覽:327
數控車床車軸編程教程 瀏覽:728
怎麼解壓截圖軟體 瀏覽:885
演算法符號橢圓 瀏覽:174
網路螞蟻app是什麼 瀏覽:273
php面向對象編程開發 瀏覽:798