導航:首頁 > 操作系統 > 單片機匯編語言視頻

單片機匯編語言視頻

發布時間:2023-09-03 06:54:19

Ⅰ 急!急!急!單片機流水燈匯編語言程序

5隻LED為共陽極連接,即單片機輸出端為低電平時即可點亮LED。

;用最直接的方式實現流水燈

ORG 0000H
START:MOV P1,#01111111B ;最下面的LED點亮
LCALL DELAY ;延時60秒
LCALL DELAY ;延時60秒
MOV P1,#10111111B ;最下面第二個的LED點亮
LCALL DELAY ;延時60秒
LCALL DELAY ;延時60秒
MOV P1,#11011111B ;最下面第三個的LED點亮 (以下省略)
LCALL DELAY
LCALL DELAY ;延時60秒
MOV P1,#11101111B
LCALL DELAY
LCALL DELAY ;延時60秒
MOV P1,#11110111B
LCALL DELAY
LCALL DELAY ;延時60秒
MOV P1,#11111011B
LCALL DELAY ;延時60秒
LCALL DELAY ;延時60秒
LCALL DELAY ;延時60秒
LCALL DELAY ;延時60秒
LCALL DELAY ;完成第一次循環點亮,延時約0.25秒
AJMP START ;反復循環

;延時子程序,12M晶振延時約250毫秒
DELAY: ;大約值:2us*256*256*2=260ms,也可以認為為250ms
PUSH PSW ;現場保護指令(有時可以不加)
MOV R4,#240
L3: MOV R2 ,#00H
L1: MOV R3 ,#00H
L2: DJNZ R3 ,L2 ;最內層循環:(256次)2個周期指令(R3減一,如果比1大,則轉向L2)
DJNZ R2 ,L1 ; 中層循環:256次
DJNZ R4 ,L3 ;外層循環:240次
POP PSW
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;匯編程序結束

(2)單片機匯編語言視頻擴展閱讀:

實現流水燈的三個方法:

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

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

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

Ⅲ 單片機編程語言一般有哪幾種

  1. 單片機的編程語言有三種種:機器語言、匯編語言與高級語言。

  2. 機器語言是計算機能夠看懂的語言。(形式為一段二進制代碼)

5.由於計算機只能看懂機器語言所以無論是匯編語言還是高級語言都需要經過編譯成為機器語言才能夠執行。

拓展資料

單片機的高級語言

51單片機支持三種高級語言,即PL/M,C和BASIC。C語言是一種通用的程序設計語言,其代碼率高,數據類型及運算符豐富,並具有良好的程序結構,適用於各種應用的程序設計,是目前使用較廣的單片機編程語言。

單片機的C語言採用C51編譯器(簡稱C51)。有C51產生的目標代碼短,運行速度高,所需存儲空間小,符合C語言的ANSI標准,生成的代碼遵循Intel目標文件格式,而且可與A51匯編語言或PL/M51語言目標代碼混合使用

Ⅳ AT89C51單片機怎麼用匯編語言讓4個數碼管同時顯示1234

1、首先我們先打開keil。

Ⅳ 請問在單片機C語言中,while(--t)和while(t--)有什麼區別啊

兩者的基層匯編語言不同,程序運行時間也不同。

一、基層匯編語言的差別

(1)while(--t)用到了減一不為0轉移指令DJNZ

執行一次while(t--) 的結束時間

可得單片機在執行while(t--)指令時,共耗時:

(0.00050130s-0.00049479s)/(12/11059200Hz)=5.999616mc≈6mc,

可以發現,單片機在執行while(--t)時所消耗的時間比在執行while(t--)時所消耗的時間短了整整4個機器周期,驗證了第一部分所得結論的正確性。

閱讀全文

與單片機匯編語言視頻相關的資料

熱點內容
華為雲伺服器登錄密碼和賬號 瀏覽:154
中世紀java程序員 瀏覽:786
什麼開發引擎使用python 瀏覽:176
sh腳本運行命令 瀏覽:316
廣聯達加密鎖怎麼看到期 瀏覽:172
cad軌跡命令 瀏覽:979
同事刷到女程序員自媒體視頻 瀏覽:571
校驗演算法的缺點是什麼 瀏覽:717
PHP商品分類功能實現 瀏覽:330
php取字元串中間 瀏覽:432
程序員經常用工具 瀏覽:837
降服主力指標源碼主圖 瀏覽:502
python實用庫 瀏覽:692
電腦默認7個文件夾 瀏覽:13
新唐單片機安裝c51後編譯錯誤 瀏覽:532
紅包源碼引流神器 瀏覽:235
學生初中畢業撕書解壓 瀏覽:748
命令方塊刷銅點教學 瀏覽:691
php郵件訂閱系統 瀏覽:998
柱樑底加密箍間距 瀏覽:31