當前位置:首頁 » 編程語言 » c語言如何延時
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

c語言如何延時

發布時間: 2022-01-14 22:55:42

c語言delay延時時間怎麼算

  1. DelayMS(300)表示希望系統delay 300毫秒,系統有自己的RTC,根據硬體的晶振(Hz)可以計算出一次振盪大約多少耗時,這樣就能大約算出1ms需要多少次振盪;

  2. 簡單比喻一次振盪需要1us,那1ms就是1000次振盪,300ms就是300x1000次振盪,這樣就能大概的計算出300ms delay;

  3. 這得看你的CPU運行一條指令得多久,像單片機89C51一般一條1us。

Ⅱ c語言延時語句

#include<windows.h>
裡面有一個Sleep()函數(注意首字母大寫)。
還有別的方法,個人覺得這個最簡單了,下面是我從MSDN給你找的關於這個函數的詳細資料
函數原形:
VOID Sleep( DWORD dwMilliseconds // sleep time
);
ParametersdwMilliseconds [in] Specifies the time, in milliseconds, for which to suspend execution. A value of zero causes the thread to relinquish the remainder of its time slice to any other thread of equal priority that is ready to run. If there are no other threads of equal priority ready to run, the function returns immediately, and the thread continues execution. A value of INFINITE causes an infinite delay. Return ValuesThis function does not return a value. ==========================================================
調用的話,你懂的,呵呵,希望能幫到你。

Ⅲ C語言延時函數

C語言的延遲函數一般是利用無意義程序運行來控制時間從而達到延時的目的
舉個例子:
for(i=0;i<x;i++)

for(j=0;j<120;j++);

這是延時x毫秒的for循環語句。
值得注意的是記得最後的;一定得記得寫。

Ⅳ c語言延時程序

這個延時程序是用在單片機上嗎? 如果是用在單片機上的,
算應該是算不準的,而且不同的晶振延時也不一樣,
可以通過開發軟體的調試功能來查看延時程序的精確延時。

Ⅳ c語言延時1秒怎麼寫

#include <windows.h> Sleep(1000)


簡介

C語言是一門面向過程的計算機編程語言,與C++、C#、Java等面向對象編程語言有所不同。C語言的設計目標是提供一種能以簡易的方式編譯、處理低級存儲器、僅產生少量的機器碼以及不需要任何運行環境支持便能運行的編程語言。

C語言描述問題比匯編語言迅速、工作量小、可讀性好、易於調試、修改和移植,而代碼質量與匯編語言相當。C語言一般只比匯編語言代碼生成的目標程序效率低10%-20%。因此,C語言可以編寫系統軟體。

當前階段,在編程領域中,C語言的運用非常之多,它兼顧了高級語言和匯編語言的優點,相較於其它編程語言具有較大優勢。計算機系統設計以及應用程序編寫是C語言應用的兩大領域。同時,C語言的普適較強,在許多計算機操作系統中都能夠得到適用,且效率顯著。

C語言擁有經過了漫長發展歷史的完整的理論體系,在編程語言中具有舉足輕重的地位。



Ⅵ c語言 延時程序

這是一個延時程序,c是延時的相對長短
有兩層for循環執行空語句達到延時目的。
c只是延時的相對大小,c大了,外層循環就多,
時間就長一些。反之亦然。

Ⅶ 如何計算C語言中的延時函數


的程序有問題額。
void
daly()
{unsigned
char
j;
for(j=60;j〈=0;j--)
}
你可去看看單片機的時鍾信號產生電路中的有關
節拍:指振盪脈沖周期
狀態:振盪脈沖盡過2分頻後,就是單片機時鍾信號的周期,定義為狀態,一個狀態等於兩個節拍
機器周期:單片機採用定時控制方式,有固定的機器周期,一個機器周期等於6個狀態,
機器周期=6個狀態=12個節拍
當振盪脈沖頻率為12mhz時,一個機器周期為1微秒,振盪脈沖頻率為6mhz,一個機器周期為2微秒
數據類型中unsigned
char為無符號字元型值域是在0~~~255范圍里
在上面我設的是60次的循環,且晶振是約在12mhz,那麼可以看出我們的算值是用60x1微秒,即可得到我們所要的延時值啊

Ⅷ 用C語言編程如何計算延時時間

那樣子你的調用系統的API來獲得調用此函數之前的系統時間,還有調用此函數返回之後的系統時間進行比較。
#include <windows.h>
#include <stdio.h>
voidmain()
{
SYSTEMTIME sys;
GetLocalTime( &sys );
int start=sys.wMilliseconds;//獲取開始時的毫秒數
//下面調用你的函數
delay(uint型變數);//這裡面的參數你必須自己看著辦
GetLocalTime( &sys );
int end=sys.wMilliseconds;//獲取調用delay函數之後的秒數
printf("調用delay函數消耗了%d毫秒!\n",end-start);
printf("注意:此程序只能處理1秒以內的延遲毫秒數!");
}
void delay(uint z)
{
uint x,y;
for(x=z;x>0;x--)
for(y=125;y>0;y--);
}

Ⅸ c語言有個可以使程序延時的語句是什麼

Sleep函數:功 能: 執行掛起一段時間 用 法: unsigned sleep(unsigned seconds); 注意: 在VC中使用帶上頭文件#include <windows.h>在VC中,Sleep中的第一個英文字元為大寫的"S" ,在標准C中是sleep, 不要大寫,簡單的說VC用Sleep, 別的一律使用sleep 在VC中,Sleep()裡面的單位,是以毫秒為單位,所以如果想讓函數滯留1秒的話,應該是Sleep(1000); 在Linux下,sleep()裡面的單位是秒,而不是毫秒。 示例: #include <windows.h> int main() { int a; a=1000; Sleep(a); return 0; } usleep函數:功能:usleep功能把進程掛起一段時間, 單位是微秒us(百萬分之一秒)。 delay函數:功 能: 將程序的執行暫停一段時間,單位是毫秒ms(千分之一秒) 用 法: void delay(unsigned milliseconds); 示例: #include<dos.h> int main(void) { sound(440); delay(500); nosound(); return 0; }delay()是循環等待,該進程還在運行,佔用處理器。sleep()不同,它會被掛起,把處理器讓給其他的進程。

Ⅹ C語言delay的延時函數怎麼寫

回答這個問題前提需要搞清楚:
1.你的執行文件在那裡運行?
2.你要延時是否「死等」,還是可以切換到其他任務?
-----------------------------------------------
如果你只是學習c語言,寫個小函數玩玩,可以如下:
void delay(int time)
{
for(;time>0;time--)
{
nop;//可寫任何無意義的操作
}
}
死等型的延時,時間根據指令執行速度不同而不同!!!!