1樓:匿名使用者
void delay_s()
一個delay_s()就差不多是一秒。不過不是很精確存在些誤差,如果要精確點的就像樓上說得用定時器中斷實現。
2樓:開車撞死牛
請參考
51微控制器用定時器查新的方法編寫一秒的延時程式,fosc=12mhz 5
已知fosc = 12mhz,試用組合語言編寫延時2s子程式
3樓:揪皮寶寶
實際0.100005s
delay01s:
mov r1,#200
loop01s:
mov r0,#249
djnz r0,$
djnz r1,loop01s
ret實際1.000074s
delay1s:
mov r0,#10
loop1s:
和acall delay01s
ret實際60.004568s
delay1m:
mov r0,#60
loop1m:
acall delay1s br /> djnz r0,loop1mret
已知微控制器的外接晶振頻率fosc=12mhz 。請編寫組合語言子程式,其功能分別是延時0.1s和1s 和 1 min。
4樓:匿名使用者
實際為0.100005s
delay01s:
mov r1, #200
loop01s:
mov r0, #249
djnz r0, $
djnz r1, loop01s
ret實際為1.000074s
delay1s:
mov r0, #10
loop1s:
acall delay01s
djnz r0, loop1s
ret實際為60.004568s
delay1m:
mov r0, #60
loop1m:
acall delay1s
djnz r0, loop1mret
假設微控制器晶振為12mhz,編寫一段延時20秒的程式?
5樓:
用unsigned char或char型
一條do{}while(--i);反彙編是djnz 一次2us(中斷時無法計算)
6樓:匿名使用者
org 0000h
jmp main
org 000bh
timer0: ;50毫秒@12.000mhz
mov tl0,#0b0h ; 重灌定時初值
mov th0,#03ch
djnz r5, tt0
mov r5, # 20 ; 50 x 20 = 1000 ms
setb 30h ; 1 秒標誌
tt0: reti
main: mov tmod,#01h ; 設定定時器模式
mov tl0,#0b0h ; 設定定時初值
mov th0,#03ch
mov ie, #82h ; 開t0 中斷
setb tr0 ; 定時器0開始計時
mov r5, #20
mov r6, #20
min1: jb 30h, $ ; 1 秒
clr 30h
djnz r6, min1 ; 1 x 20 = 20 秒
mov r6, #20
- - - ; 這裡為 20 秒處理程式
cpl p1.0 ; 如 led 20 秒 亮,20 秒 滅
jmp min1end
7樓:匿名使用者
微控制器如果想有確延時的話,就用定時/計數器來實現,具體實法可以查資料,在這裡一句兩句也說不清。
如果不需要精確延時的話, 有一個小軟體叫「微控制器小精靈」可以幫你編寫,你輸入晶振,延時時間,就可以幫你編好了,自己編,不好編,因為涉及到時鐘週期,指令佔幾個週期等等問題,用那個小軟體很容易就實現了。
8樓:散盤打坐有效果嗎
12mhz 是什麼嘛?晶振?頻率?
時間和頻率是怎麼換算的呢《注意頻率和時間並不是一個概念哦》?
t = 1/f
1hz 等同於 1s
12mhz 等同於 1/12 us;
設一個變數t = 0;
每1/12us變化一次,(比如t++);
那麼,20s中有多少個 1/12us,則t就需要自動加多少次;
當最後加完最後一個 1/12us的時候,延時計時變數就該溢位了嘛(清零了)
則用個for迴圈實現我的思路:
unsigned long long t = 0;
for(t = 0;t < (20s/(1/12us);t++)){}//處理**
//計時變數恢復成0
t = 0; //如果你要進行第二輪處理的話。否則就沒必要了說明:for()迴圈裡面的值不可以這麼寫哈,你得自己計算了;另外,也可以用while()結構;
當然樓上有人介紹用定時器,定時器還是考驗了時間和頻率之間的隱射關係。呵呵~~
M12普通螺栓能承受多大拉力M12普通螺栓能承受的最大拉力是多少?
按材質 有效直徑 面積 來算。如m12螺栓,材質q235,有效直徑為10.3mm 假設 那麼螺栓最大承壓力 210 3.14 10.3 2 2 查國標gb t 3098.1螺栓的保證荷載。m12螺栓 4.8級 保證荷載為26100n 2660kg 也就是說m12普通螺栓 4.8級 在承受小於2610...
化簡,再求值 3m 2 3m 2 5m m 12m 1 的平方,其中m 3分之2, 因式分解)
原式 4m 3m 3 2m 3 2m 1 m 2 3時,原式 35 9 解 3m 2 3m 2 5m m 1 2m 1 的平方 9m 4 5m 5 4m 4m 1 4m 4 2 3 8 3 化簡求值 3m 2 2m 5m 2 4m 2 1,其中 m 1 4 原式 3m2 2m 5m2 4m 2 1 ...
如何辨別3m車膜真假,如何辨別3M汽車膜的真偽
1 3m膜應為壓粘膜,即需在外力不停施壓下,方可顯現粘力。可取一邊角廢膜撕下里層放於指間感覺一下,如果沒有粘力即是真膜,如果粘手即是假膜 2 真膜上的3m水印小字邊緣清晰,輪廓分明,假膜上的3m水印小字邊緣模糊,字跡不清 3 真膜貼窗後逆光從側面觀察,膜表面的紋路細膩光滑,假膜看上去有 樣紋路,粗糙...