|
|||||||||||
| 技術(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) |
給電容充電,充至額定值為止。充電時(shí)間是毫秒級(jí),甚至更短。difftime( finish, star)得到的時(shí)間是秒級(jí)的,不能滿足精度。請(qǐng)問有什么解決辦法?多謝指教! |
| 2樓: | >>參與討論 |
| 作者: ecurb2006 于 2007/1/6 18:01:00 發(fā)布:
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 于 2007/1/7 13:20:00 發(fā)布:
多謝指教 多謝ecurb2006 |
|
| 4樓: | >>參與討論 |
| 作者: ecurb2006 于 2007/1/7 13:39:00 發(fā)布:
呵呵 多多交流,共同進(jìn)步! 微型嵌入式GUI 開發(fā)者 blog.csdn.net/ecurb2006 急需資金,轉(zhuǎn)讓個(gè)人作品。 歡迎給我投資。 support@ecurb2006.com * - 本貼最后修改時(shí)間:2007-1-7 13:41:03 修改者:ecurb2006 |
|
| 5樓: | >>參與討論 |
| 作者: szhaochong 于 2007/1/9 21:34:00 發(fā)布:
再請(qǐng)教ecurb2006 我在 Win tc 1.91 環(huán)境下輸入程序,可是系統(tǒng)提示“無法打開包含文件‘sys/time.h'”。 請(qǐng)問這個(gè)頭文件要自己添加還是win tc 沒有這個(gè)功能? |
|
| 6樓: | >>參與討論 |
| 作者: ecurb2006 于 2007/1/9 21:46:00 發(fā)布:
呵呵 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 于 2007/1/10 13:24:00 發(fā)布:
請(qǐng)?jiān)试S我叫你一聲:大哥! 佩服!我用的是ICOP-6054VE,操作系統(tǒng)確實(shí)是DOS。老師不久前剛給的課題,好多地方不懂,還望多多指教!我的QQ:94431038,不介意的話請(qǐng)加我。“struct time tm; gettime(&tm);” 這種用法能精確到毫秒級(jí)嗎?先前我打算用它,但覺得它精確度可能達(dá)不到要求就沒用。 |
|
| 8樓: | >>參與討論 |
| 作者: ecurb2006 于 2007/1/11 16:00:00 發(fā)布:
可以 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 于 2007/1/12 11:17:00 發(fā)布:
又多學(xué)了一招~~~ |
|
| 10樓: | >>參與討論 |
| 作者: jxfeifei 于 2007/1/17 19:56:00 發(fā)布:
定時(shí)器啊 用定時(shí)器編一個(gè)不是很精確嗎? |
|
|
|
| 免費(fèi)注冊(cè)為維庫電子開發(fā)網(wǎng)會(huì)員,參與電子工程師社區(qū)討論,點(diǎn)此進(jìn)入 |
Copyright © 1998-2006 m.58mhw.cn 浙ICP證030469號(hào) |