假如fosc 12MHz,編寫1秒延時的時間程式

2022-02-28 06:19:39 字數 2922 閱讀 6270

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 真膜貼窗後逆光從側面觀察,膜表面的紋路細膩光滑,假膜看上去有 樣紋路,粗糙...