DelayMS(300)表示希望系統(tǒng)delay 300毫秒,系統(tǒng)有自己的RTC,根據(jù)硬件的晶振(Hz)可以計算出一次振蕩大約多少耗時,這樣就能大約算出1ms需要多少次振蕩;
創(chuàng)新互聯(lián)公司于2013年開始,先為同德等服務(wù)建站,同德等地企業(yè),進行企業(yè)商務(wù)咨詢服務(wù)。為同德企業(yè)網(wǎng)站制作PC+手機+微官網(wǎng)三網(wǎng)同步一站式服務(wù)解決您的所有建站問題。
簡單比喻一次振蕩需要1us,那1ms就是1000次振蕩,300ms就是300x1000次振蕩,這樣就能大概的計算出300ms delay;
這得看你的CPU運行一條指令得多久,像單片機89C51一般一條1us。
C語言是一門通用計算機編程語言,應(yīng)用廣泛。C語言的設(shè)計目標是提供一種能以簡易的方式編譯、處理低級存儲器、產(chǎn)生少量的機器碼以及不需要任何運行環(huán)境支持便能運行的編程語言;
盡管C語言提供了許多低級處理的功能,但仍然保持著良好跨平臺的特性,以一個標準規(guī)格寫出的C語言程序可在許多電腦平臺上進行編譯,甚至包含一些嵌入式處理器(單片機或稱MCU)以及超級電腦等作業(yè)平臺;
二十世紀八十年代,為了避免各開發(fā)廠商用的C語言語法產(chǎn)生差異,由美國國家標準局為C語言制定了一套完整的國際標準語法,稱為ANSI C,作為C語言最初的標準。
C語言delay函數(shù)延時計算源代碼如下:
#include "stdlib.h"
void delay()
{
time_t start,end;
start=time(null);
unchar i;
while(z--)
{
for(i=0;ilt;121;i++);
}
end=time(null);
printf("%f",difftime(end,start));
}
擴展資料
1、對于要求精確延時時間更長,這時就要采用循環(huán)嵌套的方法來實現(xiàn),因此,循環(huán)嵌套的方法常用于達到ms級的延時。
對于循環(huán)語句同樣可以采用for,do…while,while結(jié)構(gòu)來完成,每個循環(huán)體內(nèi)的變量仍然采用無符號字符變量。
下面是delay 函延遲函數(shù)里執(zhí)行的都是空語句,也就是說通過循環(huán)執(zhí)行空語句來達到延遲的目的.每執(zhí)行一條語句,即使是空語句都要耗費電腦一些處理時間的,就是因為這個,在延遲函數(shù)里寫一些無關(guān)緊要的東西,用來浪費電腦處理時間,從而達到延遲目的。數(shù)原型:
原型:
void Delay(unsigned int nDelay)
{
unsigned int i,j,k;
for ( i=0;inDelay;i++ )
for ( j=0;j6144;j++ )
k++;
}
用法:#include system.h
功能:短暫延時
說明:延時msec*4毫秒所以,delay的延遲時間是和你的cpu時鐘周期相關(guān)的。