音影先锋亚洲天堂网|电影世界尽头的爱完整版播放|国产 熟女 91|高清无码免费观看欧美日韩|韩国一区二区三区黄色录像|美女亚洲加勒比在线|亚洲综合网 开心五月|7x成人在线入口|成人网站免费日韩毛片区|国产黄片?一级?二级?三级

登錄 免費(fèi)注冊(cè) 首頁 | 行業(yè)黑名單 | 幫助
維庫電子市場(chǎng)網(wǎng)
技術(shù)交流 | 電路欣賞 | 工控天地 | 數(shù)字廣電 | 通信技術(shù) | 電源技術(shù) | 測(cè)控之家 | EMC技術(shù) | ARM技術(shù) | EDA技術(shù) | PCB技術(shù) | 嵌入式系統(tǒng)
驅(qū)動(dòng)編程 | 集成電路 | 器件替換 | 模擬技術(shù) | 新手園地 | 單 片 機(jī) | DSP技術(shù) | MCU技術(shù) | IC 設(shè)計(jì) | IC 產(chǎn)業(yè) | CAN-bus/DeviceNe

C語言如何獲得精確的程序執(zhí)行的時(shí)間

作者:szhaochong 欄目:嵌入式系統(tǒng)
C語言如何獲得精確的程序執(zhí)行的時(shí)間
給電容充電,充至額定值為止。充電時(shí)間是毫秒級(jí),甚至更短。difftime( finish, star)得到的時(shí)間是秒級(jí)的,不能滿足精度。請(qǐng)問有什么解決辦法?多謝指教!

2樓: >>參與討論
ecurb2006
gettimeofday()
/*
需要的頭文件: <sys/time.h>
int gettimeofday(struct timeval *tv,struct timezone *tz);

strut timeval {
LONG tv_sec; /* 秒數(shù) */
LONG tv_usec; /* 微秒數(shù) */
};

timezone 一般我們不關(guān)注,將設(shè)為 NULL 就可以了。


*/

#include <sys/time.h>
void function(void); /* your function */

int main(void)
{
struct timeval fun_start,fun_end;
gettimeofday(&fun_start,NULL);
function();
gettimeofday(&fun_end,NULL);
return 0;
}
/* 你完成你自己的 function ,然后試試看 */

微型嵌入式GUI 開發(fā)者
blog.csdn.net/ecurb2006

* - 本貼最后修改時(shí)間:2007-1-6 18:04:06 修改者:ecurb2006

3樓: >>參與討論
szhaochong
多謝指教
多謝ecurb2006

4樓: >>參與討論
ecurb2006
呵呵
多多交流,共同進(jìn)步!




微型嵌入式GUI 開發(fā)者
blog.csdn.net/ecurb2006
急需資金,轉(zhuǎn)讓個(gè)人作品。 歡迎給我投資。
support@ecurb2006.com

* - 本貼最后修改時(shí)間:2007-1-7 13:41:03 修改者:ecurb2006

5樓: >>參與討論
szhaochong
再請(qǐng)教ecurb2006
我在  Win tc 1.91  環(huán)境下輸入程序,可是系統(tǒng)提示“無法打開包含文件‘sys/time.h'”。  請(qǐng)問這個(gè)頭文件要自己添加還是win tc 沒有這個(gè)功能?

6樓: >>參與討論
ecurb2006
呵呵
sys/time.h 一般是 Linux/Unix 里的頭文件

你的情況應(yīng)該這樣用

struct time tm;
gettime(&tm);

相關(guān)結(jié)構(gòu)定義如下
-----------------------------------
struct  time    {
    unsigned CHAR   ti_min;     /* Minutes */
    unsigned CHAR   ti_hour;    /* Hours */
    unsigned CHAR   ti_hund;    /* Hundredths of seconds */
    unsigned CHAR   ti_sec;     /* Seconds */
};
---------------------------------------
如果還提示有誤,那么 #include "dos.h"
就應(yīng)該沒問題了.

>給電容充電,充至額定值為止。充電時(shí)間是毫秒級(jí),甚至更短。
你是在搞 DOS 應(yīng)用,對(duì)吧 ?

微型嵌入式GUI 開發(fā)者
blog.csdn.net/ecurb2006



* - 本貼最后修改時(shí)間:2007-1-9 21:59:00 修改者:ecurb2006

7樓: >>參與討論
szhaochong
請(qǐng)?jiān)试S我叫你一聲:大哥!
佩服!我用的是ICOP-6054VE,操作系統(tǒng)確實(shí)是DOS。老師不久前剛給的課題,好多地方不懂,還望多多指教!我的QQ:94431038,不介意的話請(qǐng)加我。“struct time tm; gettime(&tm);”  這種用法能精確到毫秒級(jí)嗎?先前我打算用它,但覺得它精確度可能達(dá)不到要求就沒用。


8樓: >>參與討論
ecurb2006
可以
struct  time    {
    unsigned CHAR   ti_min;     /* Minutes */
    unsigned CHAR   ti_hour;    /* Hours */
    unsigned CHAR   ti_hund;    /* Hundredths of seconds */
    unsigned CHAR   ti_sec;     /* Seconds */
};
里面的 ti_hund 就是你需要的.

如果你需要更高的,可以去改變 DOS 的時(shí)鐘,呵呵,在 DOS 編寫游戲時(shí)最常用的.uC/OS-II 在x86的演示包,好像也是修改這個(gè)時(shí)鐘中斷的.

DOS 下還有一個(gè) eRTOS 的實(shí)時(shí)操作系統(tǒng),你自己找找資料吧.
會(huì)有幫助的.


微型嵌入式GUI 開發(fā)者
blog.csdn.net/ecurb2006


* - 本貼最后修改時(shí)間:2007-1-11 16:01:11 修改者:ecurb2006

9樓: >>參與討論
zzty
又多學(xué)了一招~~~
 
10樓: >>參與討論
jxfeifei
定時(shí)器啊
用定時(shí)器編一個(gè)不是很精確嗎?

參與討論
昵稱:
討論內(nèi)容:
 
 
相關(guān)帖子
USB的總線掛起時(shí),其電流是不是小于280uA???
gcc編譯arm的數(shù)據(jù)段長度的問題
有關(guān)usb otg方面的問題,還請(qǐng)高手指教,謝謝
lpc2119的IAP問題
有那位大俠知道.S19的文件格式如何轉(zhuǎn)換成H32格式
免費(fèi)注冊(cè)為維庫電子開發(fā)網(wǎng)會(huì)員,參與電子工程師社區(qū)討論,點(diǎn)此進(jìn)入


Copyright © 1998-2006 m.58mhw.cn 浙ICP證030469號(hào)