MCS-51單片機匯編語言編程實例.ppt

MCS-51單片機匯編語言編程實例.ppt

ID:51587392

大?。?3.50 KB

頁數(shù):15頁

時間:2020-03-24

MCS-51單片機匯編語言編程實例.ppt_第1頁
MCS-51單片機匯編語言編程實例.ppt_第2頁
MCS-51單片機匯編語言編程實例.ppt_第3頁
MCS-51單片機匯編語言編程實例.ppt_第4頁
MCS-51單片機匯編語言編程實例.ppt_第5頁
資源描述:

《MCS-51單片機匯編語言編程實例.ppt》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫。

1、例1方波產(chǎn)生任務(wù):從P1.0引腳輸出一個方波程序1:ORG0000HLOOP:CPL90HSJMPLOOP機器碼0000B20001900002800003FC0004--程序2:加軟延時ORG0000HLOOP:CPL90HMOVR1,#100MOVR0,#100LOOP1:DJNZR0,LOOP1DJNZR1,LOOP1SJMPLOOP例2跑馬燈任務(wù):D1,D2,D3循環(huán)亮滅,D1→D2→D3↑↓一個時間只有一個亮,每個1秒轉(zhuǎn)換一次。程序1:ORG0000HLOOP0:ORLP1,#07H;全熄滅ANLP1,#0FBH;D1亮CALLDT;延時ORLP1,#07H;全熄滅ANLP1,#

2、0FDH;D2亮CALLDT;延時ORLP1,#07H;全熄滅ANLP1,#0FEH;D3亮CALLDT;延時SJMPLOOP0DT:MOVR2,#0FH;#15MOVR1,#32H;#50MOVR0,#0FFH;#255DT1:DJNZR0,DT1DJNZR1,DT1DJNZR2,DT1RETT=(2*(256*256*(R2-1)+256*(R1-1)+R0+256*(R2-1)+R1+R2)+3+1)*(12/fosc)(256*256+256+1)R2+(256+1)R1+R0-(256*256+2*256-2)=100000065793R2+257R1+R0=1066046R2=

3、15,R1=50,R0=255程序2ORG0000HLOOP:MOVA,#0FBHMOVP1,ARRACALLDTMOVP1,ARRACALLDTMOVP1,ACALLDTSJMPLOOP程序3ORG0000HLOOP:MOVA,#0FBHMOVR0,#3LOOP0:MOVP1,ARRACALLDTDJNZR0,LOOP0SJMPLOOP7行程序4ORG0000HLOOP0:MOVR7,#0LOOP1:ORLP1,#07H;全熄滅LOOP2:CJNER7,#0,LOOP3INCR7ANLP1,#0FBH;D1亮SJMPLOOP5LOOP3:CJNER7,#1,LOOP4INCR7ANLP1

4、,#0FDH;D2亮SJMPLOOP5LOOP4:CJNER7,#02,LOOP0MOVR7,#0ANLP1,#0FEH;D3亮LOOP5:CALLDT;延時SJMPLOOP1例3步進電機任務(wù)1:初始化步進電機START:;初始化MOVDPTR,#30H;表基址L5:MOVR7,#0H;百位L9:MOVR6,#0H;十位L10:MOVR5,#0H;個位MOVIE,#82H;全局中斷,T0中斷允許ORLIP,#2H;邏輯或,T0中斷優(yōu)先級高MOVTMOD,#11H;定時器方式字,T1和T0都工作在方式1,16位的計數(shù)器GATE等于0,不受外部控制P4EQU0C0H;聲明P4地址MOVP4,#

5、0FFHP4SWEQU0BBH;聲明P4SW寄存器的地址MOVP4SW,#70HSETBp1.1SETBP1.4;CE2置高SETBP1.3;CE1置高例3步進電機任務(wù)2:定時器中斷實現(xiàn)演示程序TIME:CJNER2,#0,TIM0;R2不等于0則是慢速,跳轉(zhuǎn);;;;;;;快速,60轉(zhuǎn)/分MOVTH0,#5BHMOVTL0,#0F0HSETBTR0MOVR1,#0HTIM1:CJNER1,#1H,TIM1SJMPTIM2;;;;;;;;慢速,10轉(zhuǎn)/分TIM0:MOVR3,#2HTIM4:MOVTH0,#0HMOVTL0,#0HSETBTR0MOVR1,#0H例3步進電機任務(wù)3:定時器中斷

6、實現(xiàn)延時程序TIM3:CJNER1,#1H,TIM3DJNZR3,TIM4MOVTH0,#2FHMOVTL0,#70HSETBTR0MOVR1,#0HTIM5:CJNER1,#1H,TIM5TIM2:RETT0IN:;中斷程序MOVR1,#1HRETI;中斷返回例3步進電機任務(wù)4:開關(guān)設(shè)置NEXT:JBP3.7,OPP;如果P3.7等于1則轉(zhuǎn)移(開關(guān)S2按下)MOVR0,#00101101B;按下,順時針LJMPS1OPP:MOVR0,#01111000B;松開,逆時針S1:JBP3.6,SPDMOVR2,#0H;未按下,快速LJMPL1SPD:MOVR2,#1H;按下,慢速例3步進電機任

7、務(wù):主程序L1:MOVA,R0RLCA;帶進位的循環(huán)左移操作MOVP3.2,C;IN1RLCAMOVP1.0,C;IN2MOVR0,ALCALLLEDLCALLTIMEMOVA,R0RLCAMOVP3.2,CRLCAMOVP1.0,CMOVR0,ALCALLLEDLCALLTIME例3步進電機任務(wù):主程序MOVA,R0RLCAMOVP3.2,CRLCAMOVP1.0,CMOVR0,ALCALLLEDLCALLTIMEMO

當前文檔最多預(yù)覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當前文檔最多預(yù)覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學公式或PPT動畫的文件,查看預(yù)覽時可能會顯示錯亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負責整理代發(fā)布。如果您對本文檔版權(quán)有爭議請及時聯(lián)系客服。
3. 下載前請仔細閱讀文檔內(nèi)容,確認文檔內(nèi)容符合您的需求后進行下載,若出現(xiàn)內(nèi)容與標題不符可向本站投訴處理。
4. 下載文檔時可能由于網(wǎng)絡(luò)波動等原因無法下載或下載錯誤,付費完成后未能成功下載的用戶請聯(lián)系客服處理。