標(biāo)題:
關(guān)于單片機(jī)延時(shí)函數(shù)的時(shí)間計(jì)算
[打印本頁(yè)]
作者:
xiaokevn
時(shí)間:
2017-7-11 09:33
標(biāo)題:
關(guān)于單片機(jī)延時(shí)函數(shù)的時(shí)間計(jì)算
單片機(jī)一個(gè)延時(shí)函數(shù)延時(shí)多長(zhǎng)時(shí)間到底怎么算?由于學(xué)校直接說(shuō)的c語(yǔ)言,看網(wǎng)上說(shuō)c只有仿真來(lái)看延時(shí)是多少,只有這種方法嗎?比如
for(i=0;i<125;i++)
{
;
}
這樣一個(gè)延時(shí)了多長(zhǎng)時(shí)間呢?有沒(méi)有具體算的方法。。麻煩大家詳細(xì)說(shuō)下吧,謝謝。
作者:
小潘哥
時(shí)間:
2017-7-11 20:49
使用STC最新的程序下載軟件,右邊有個(gè)軟件延時(shí)計(jì)算,用那個(gè)生成要的延時(shí)函數(shù),就挺不錯(cuò)的
作者:
L_sen
時(shí)間:
2017-7-11 21:52
void DelayMS(uint x) { uchar i; while(x--) { for(i=0;i<120;i++) } 如:DelayMS(5);則耗時(shí)為5*120個(gè)指令周期,如果你的指令周期就是你的系統(tǒng)時(shí)鐘(12000000hz)那么時(shí)間為1/12000000*5*120 這只能是大概的算。不過(guò)應(yīng)該能滿足你的延時(shí)要求了。精準(zhǔn)的話建議用匯編
作者:
不倒翁.WZT
時(shí)間:
2017-7-12 05:59
標(biāo)題:
RE: 關(guān)于單片機(jī)延時(shí)函數(shù)的時(shí)間計(jì)算
如果晶振是24Mhz,延時(shí)大約是125*2=250us.(用仿真器仿真是251us).
如果晶振是12Mhz,延時(shí)大約是125*4=500us(用仿真器仿真是502us).
歡迎光臨 (http://www.torrancerestoration.com/bbs/)
Powered by Discuz! X3.1