首先你要延時(shí)多長(zhǎng)時(shí)間,us級(jí)別的必須使用匯編,C誤差很大,10-100us級(jí)別的可以用C控制,單必須考慮C出棧入棧時(shí)間。ms以上的用時(shí)間除以機(jī)器周期(除以你則個(gè)1us是不行的,誤差大)。
成都創(chuàng)新互聯(lián)公司專業(yè)提供服務(wù)器托管服務(wù),為用戶提供五星數(shù)據(jù)中心、電信、雙線接入解決方案,用戶可自行在線購(gòu)買服務(wù)器托管服務(wù),并享受7*24小時(shí)金牌售后服務(wù)。
就是用晶振頻率算cpu指令周期,再算Delay循環(huán)中有幾條代碼,需要多少個(gè)指令周期。除一下可以算個(gè)大概。具體你可以結(jié)合硬件資料來(lái)算。
.比如前面那個(gè)箭頭指到你的調(diào)用函數(shù)delay(200);假設(shè)執(zhí)行到此部用時(shí)1110。
C語(yǔ)言的延遲函數(shù)一般是利用無(wú)意義程序運(yùn)行來(lái)控制時(shí)間從而達(dá)到延時(shí)的目的 舉個(gè)例子:for(i=0;ix;i++)for(j=0;j120;j++);這是延時(shí)x毫秒的for循環(huán)語(yǔ)句。值得注意的是記得最后的;一定得記得寫(xiě)。
在C語(yǔ)言中使用有參延時(shí)函數(shù)時(shí),需要考慮以下幾點(diǎn):參數(shù)的類型和范圍:延時(shí)函數(shù)的參數(shù)應(yīng)該是一個(gè)整數(shù)或者長(zhǎng)整型,代表延時(shí)的時(shí)間,通常以毫秒為單位計(jì)算。
delay函數(shù)是一般自己定義的一個(gè)延時(shí)函數(shù)。C語(yǔ)言定義延時(shí)函數(shù)主要通過(guò)無(wú)意義指令的執(zhí)行來(lái)達(dá)到延時(shí)的目的。下面給出一個(gè)經(jīng)典的延時(shí)函數(shù)。
唯有Sleep函數(shù),只有Sleep函數(shù)參數(shù)是用毫秒,比如1000毫秒等于1秒。
說(shuō)明:延時(shí)msec*4毫秒所以,delay的延遲時(shí)間是和你的cpu時(shí)鐘周期相關(guān)的。
函數(shù)difftime();是double類型,用來(lái)計(jì)算運(yùn)行的時(shí)間,用第一個(gè)參數(shù)的時(shí)間減去第二個(gè)參數(shù)的時(shí)間,得到的值就是運(yùn)行用了多少時(shí)間。
就是用晶振頻率算cpu指令周期,再算Delay循環(huán)中有幾條代碼,需要多少個(gè)指令周期。除一下可以算個(gè)大概。具體你可以結(jié)合硬件資料來(lái)算。
算法是這樣的:這個(gè)用編譯軟件,如keil,編譯通過(guò)之后,進(jìn)入軟件調(diào)試功能,就可以測(cè)出來(lái)是延時(shí)多少秒。具體我?guī)湍阏{(diào)試過(guò)了,如果單片機(jī)接12mhz晶振的話,這個(gè)是延時(shí)0.2秒的子程序。你調(diào)用一次delay();就延時(shí)0.2秒。
.比如前面那個(gè)箭頭指到你的調(diào)用函數(shù)delay(200);假設(shè)執(zhí)行到此部用時(shí)1110。
標(biāo)題名稱:c語(yǔ)言延時(shí)函數(shù)的計(jì)算器 c語(yǔ)言延時(shí)函數(shù)的計(jì)算器在哪
當(dāng)前鏈接:http://chinadenli.net/article8/depjiip.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供微信小程序、外貿(mào)網(wǎng)站建設(shè)、標(biāo)簽優(yōu)化、網(wǎng)站維護(hù)、手機(jī)網(wǎng)站建設(shè)、App設(shè)計(jì)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)