標(biāo)題:
求解單片機(jī)延時(shí)函數(shù)的計(jì)算
[打印本頁(yè)]
作者:
a865550942
時(shí)間:
2018-1-16 22:49
標(biāo)題:
求解單片機(jī)延時(shí)函數(shù)的計(jì)算
void delay_16us(u16 us)
{
while(--us);
}
如上所示的延時(shí)函數(shù),在89c52中運(yùn)行,晶振用的是12兆赫茲,那這個(gè)該如何計(jì)算延時(shí)的時(shí)間長(zhǎng)度,網(wǎng)上的看不懂希望能說(shuō)說(shuō)
作者:
木木de
時(shí)間:
2018-1-16 23:04
需要轉(zhuǎn)換成匯編指令 再去計(jì)算時(shí)鐘周期 計(jì)算出延時(shí)時(shí)間
作者:
jizi
時(shí)間:
2018-1-17 07:38
12MHZ的晶振在89c52中,一個(gè)機(jī)械時(shí)間是12MHZ/12=1us
一個(gè)機(jī)械時(shí)間就是單片機(jī)運(yùn)行一個(gè)指令的時(shí)候例如(;)
也是一個(gè)機(jī)械時(shí)間,所以上面的程序是 輸入的數(shù) 慢慢地減
一個(gè)一個(gè)的運(yùn)行這個(gè)指令( ;)
計(jì)算公式:晶振數(shù)/12=機(jī)械時(shí)間
作者:
cccc888
時(shí)間:
2018-1-17 09:26
捕獲.PNG
(98.69 KB, 下載次數(shù): 67)
下載附件
2018-1-17 09:26 上傳
作者:
zl2168
時(shí)間:
2018-1-17 11:13
本帖最后由 zl2168 于 2018-1-17 11:15 編輯
c程序中的延時(shí)函數(shù),不能準(zhǔn)確計(jì)算延時(shí)時(shí)間。匯編程序可以。
歡迎光臨 (http://www.torrancerestoration.com/bbs/)
Powered by Discuz! X3.1