1樓:☆你大爺
函式名: delay
功 能: 將程式的執行暫停一段時間(毫秒)用 法: void delay(unsigned milliseconds);
程式例:
/* emits a 440-hz tone for 500 milliseconds */
#include
int main(void)
51微控制器c語言中delay函式是怎麼定義和使用的?
2樓:匿名使用者
定義一個延時xms毫秒的延時函式
void delay(unsigned int xms)// xms代表需要延時的毫秒數
使用:void delay10us(uchar ms)i=[(延時值-1.75)*12/ms-15]/41、在c51中進行精確的延時子程式設計時,儘量不要或少在延時子程式中定義區域性變數,所有的延時子程式中變數通過有參函式傳遞。
2、在延時子程式設計時,採用do...while,結構做迴圈體要比for結構做迴圈體好。
3、在延時子程式設計時,要進行迴圈體巢狀時,採用先內迴圈,再減減比先減減,再內迴圈要好。
3樓:天雲一號
delay函式是一般自己定義的一個延時函式。
c語言定義延時函式主要通過無意義指令的執行來達到延時的目的。下面給出一個經典的延時函式。
// 定義一個延時xms毫秒的延時函式
void delay(unsigned int xms) // xms代表需要延時的毫秒數
4樓:匿名使用者
這是一個延時函式()
裡的unsigned int a是一個形參,為int型變數最 大值為32767;{}裡的unsigned int i和()裡的一樣 只是變數的名稱不同,為i;while就是迴圈語句 如果他後面的()裡的量不為零就執行他{}裡的內容,一旦為零就跳出該語句。for(i=0;i<600;i++);就是把i定為零,如果i在for裡小於600就跳到第三步i++(也就是i自增1);然後i=1但他還是小於600,接著就到第三步。。。。599次之後i=600,600就不小於600,這時就跳出for。
while後的()如果為零就跳出while
5樓:匿名使用者
5 51微控制器c語言中delay函式是怎麼定義和使用的?
voiddelay(unsignedinta){unsignedinti;while(--a!=0)
6樓:匿名使用者
c的話其實時間沒有辦法完全定性地計算的
如果非得精確的話只能使用定時器了,或者彙編的也行不過時間要求精度不是很高的話使用下面的**就行了當時使用示波器把時間完全調準的,65536ms範圍內還是比較準的,已經可以滿足通常的要求了:
#include "reg51.h" //標頭檔案包含//巨集定義
#define uint unsigned int#define uchar unsigned charvoid delay(uint ms) // 毫秒級延時(at89c52 @ 11.0592mhz)
//112}}
呼叫方式如下:
delay(400); //開機延時400ms夠詳細了吧?!
7樓:神奇號
假如說執行for(i = 0; i < 600; i++); 要1s,那a決定了執行1s的次數,這個延時就是a秒,懂了嗎?
不過12m晶振的話,大家一般是for(i = 0; i < 114; i++); 執行這句要1ms
8樓:匿名使用者
這是個延遲函式,delay 括號中的表示式是定義的無符號的整形變數,它是形參,你只要知道它是定義一個變數既可,它的值由main 函式傳遞過來,a的值有了,就進入了while 迴圈。不知你是否學過c語言,如果沒有,就看看while 迴圈。
9樓:匿名使用者
delay後面的()當中的a,是呼叫函式時,傳遞過來的變數,此值越大,延遲的時間就越長。
delay的c語言怎麼用
10樓:河蟹和諧河蟹
delay([毫秒數]);
作用是讓當前程序等待[毫秒數],防止100% cpu佔有率。
11樓:匿名使用者
給你一個e2prom下,控制led顯示時間的程式希望對你的學習有幫助。
#include
#define uchar unsigned char#define uint unsigned intsbit sda=p2^0;
sbit scl=p2^1;
sbit dula=p2^6;
sbit wela=p2^7;
uchar flag,sec;
uint num;
uchar code table=;
void delay()
void start() //開始訊號
void stop() //停止
void respons() //應答
void init()
void write_byte(uchar date)sda=1;
delay();
}uchar read_byte()
return k;
}void delayms(uchar x)void write_add(uchar address,uchar date)
uchar read_add(uchar address)void display(uchar shi,uchar ge)void main()}}
void t0_time() interrupt 1}}
12樓:匿名使用者
這兩個函式都是將程式的執行暫停一段時間。
sleep是api函式,delay似乎是c專有的。
裡面的引數都是毫秒。
delay(1000)是暫停1000毫秒(1秒)sleep(1)是暫停1毫秒
自然會有不同
13樓:福建省寧德市
用 法: void delay(unsigned milliseconds);
程式例:
/* emits a 440-hz tone for 500 milliseconds */
#include
int main(void)
函式名: delay
功 能: 將程式的執行暫停一段時間(毫秒)(該函式是tc下特有的函式,vc下應使用sleep()函式)函式標頭檔案:#include
Excel Vlookup函式怎麼用
vlookup函式,遮蔽0與na值 excel中vlookup函式如何使用,我教你!vlookup函式的使用方法。方法 步驟 為了講解的需要,特製作如圖所示的 當然,大家也可以根據自己的實際情況設計合適的內容。接下來,我們的任務是通過利用vlookup函式來實現查詢同學c的成績。為此在單元格中輸入 ...
getcharputchar函式該怎麼用啊
你可以把要輸出的字串放在一個字元陣列中,再用一個迴圈語句逐個輸出字元 例如 include main getchar也是一樣 用一個迴圈語句 例 putchar函式的格式和使用方法。1 include stdio.h 2 void main 3程式執行結果如下 newnew 1 putchar函式的...
ecel怎麼用迴圈函式,Excel怎麼用迴圈函式
利用迭代計算實現迴圈 1在使用excel過程中,我們可能會出現一種情況,就是單元格有時會對本身進行引用,即形如在b2單元格中輸入 b2 1 之類的公式即為一種迴圈引用自身的行為。為了避免死迴圈的產生,就出現了迭代策略。2其實我們完成可以利用該迭代功能實現我們想要的效果。例如我們想實現 1到10的和累...