導航:首頁 > 操作系統 > 51單片機匯編延時程序

51單片機匯編延時程序

發布時間:2023-01-09 02:08:58

⑴ 51單片機,求用匯編語言編寫延時1小時的子程序,要精確到秒級別

這個可以做到,如果晶振是12M的話,一下方法可以實現延時1小時,精確度在秒級別。
DELAY1H:
MOV R7,#180 ;1/1000000
DLY1H:
LCALL DELAY_20S ;180*19.960603s +2*180
DJNZ R7,DLY1H ;2*180/1000000
RET 2/1000000
共延時時間:3592.9s誤差為7.1秒,如果再精確的話,再加一點延時就可以了。

DELAY_20S: ;Total=19.960603s
MOV R2,# ;1
DLY1:
MOV R3,#200 ;1*200
DLY2:
MOV R4,#248 ;1**200*200
DJNZ R4,$ ;2**248*200*200
DJNZ R3,DLY2 ;2*200*200
DJNZ R2,DLY1 ;2*200
RET ;2

⑵ 51單片機中延時程序

1. sleep()是以毫秒計算的,延時5秒是sleep(5*1000);,延時5分是sleep(5*1000*60);

2.包含的頭文件看你用的什麼編輯軟體。

3.我用的VC++是用包含在#include<windows.h>頭文件中。

#include<stdio.h>#include<windows.h>//Sleep()的頭文件 main() { int i;

int n=10;for(i=1;i<=n;i++) {printf("%d",i);Sleep(5*1000*60);} //

這里修改延時時間,

有些人說是用#include<dos.h>做頭文件你自己試下吧。

還用Sleep的S是大寫的,不是小寫的。

⑶ C51單片機延時程序,需要不精確延時2小時,請問大神怎麼寫延時代碼,謝謝!

可以有很多辦法,一是調整參數,使其延時5分鍾或6分鍾,循環24次或20次。二是將延時函數的形參改為長整型(32位)延時時間擴大65536倍。三是使用定時器,每次定時50mS,累計144000次,便是2小時,使用定時器(中斷)的好處是在延時期間還可以干許多事情,例如顯示剩餘時間,檢測設備工作狀態或者調整延時時間等,而你的純軟體延時期間想干其它事情比較困難。

⑷ 51單片機定時器的匯編語言程序編程,

LED BIT P1.0 ;定義LED的引腳
ORG 0000H

LJMP MAIN
ORG 000BH
LJMP T0ISR
ORG 0030H
MAIN:
MOV TMOD,#01H ;定時器0工作模式1
MOV TH0,#HIGH(65536-50000) ;初值,50毫秒中斷一次
MOV TL0,#LOW(65536-50000)
SETB TR0 ;啟動定時器
SETB ET0 ;啟動定時器中斷
SETB EA ;開總中斷
MOV R2,#40 ;中斷計數初始值
SJMP $
T0ISR:
CLR TR0
MOV TH0,#HIGH(65536-50000)
MOV TL0,#LOW(65536-50000)
SETB TR0
DJNZ R2,T0E ;R2減到0重新賦值,否則退出
MOV R2,#40
CPL LED ;LED亮滅轉換
T0E:
RETI
END

⑸ 51單片機匯編語言延時子程序怎樣計算

;以下按12M晶振計算,#後面的數最大可以是255
DELAY:MOV R7,#10 ;1
MOV R6,#100 ;10*1
MOV R5,#200 ;10*100*1
DJNZ R5, $ ; 10*100*200*2
DJNZ R6, $ - 4 ;10*100*2
DJNZ R7, $ - 8 ;10*2
RET ;2
Total=1+10*1+10*100*1+10*100*200*2+10*100*2+10*2+2=403033微秒

⑹ 用匯編怎麼寫51單片機的延時程序

DEL1S:MOV R7,#10x0dx0aD1: MOV R6,#200x0dx0aD2: MOV R5,#250x0dx0a DJNZ R5,$x0dx0a DJNZ R6,D2x0dx0a DJNZ R7,D1x0dx0a RETx0dx0ax0dx0a說明:1、如果不使用R5、R6、R7可以用別的單元替換,比如換成30H、31H、32H等等x0dx0a 2、這個程序是12M時鍾,如果時鍾不同,要修改數值。如6M時鍾,要把MOV R7,#10 修改成:MOV R7,#5

閱讀全文

與51單片機匯編延時程序相關的資料

熱點內容
最強大逃頂通達信指標源碼 瀏覽:441
java程序員面試寶典歐立奇 瀏覽:457
cad命令不要跟著游標 瀏覽:200
騰訊軟體伺服器是什麼 瀏覽:894
高中單片機 瀏覽:347
正則命令 瀏覽:341
javawin10配置環境變數 瀏覽:564
梁全長箍筋加密怎麼設置 瀏覽:403
蘋果appstore怎麼填 瀏覽:688
radiogroupandroid 瀏覽:152
微信加密手機店能破解嗎 瀏覽:952
如何更換win7補丁伺服器地址 瀏覽:702
如何舉報dota2伺服器 瀏覽:584
蘋果怎麼打鏈接微信文件夾 瀏覽:366
阿拉德之路怎麼蘋果跟安卓一起玩 瀏覽:241
主力排序選股源碼 瀏覽:149
android無法生成apk文件 瀏覽:505
如何開一個掛網頁的伺服器 瀏覽:538
虞城車輛解壓去哪裡 瀏覽:759
如何發送戰艦世界命令 瀏覽:609