久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 10927|回復(fù): 12
打印 上一主題 下一主題
收起左側(cè)

單片機(jī)執(zhí)行C語言時間計算

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:223571 發(fā)表于 2017-9-29 15:32 | 只看該作者 |只看大圖 回帖獎勵 |倒序瀏覽 |閱讀模式
1T模式,16M赫茲的單片機(jī),在c語言編程做延時運(yùn)算,使用do while結(jié)構(gòu)void Delay200ms()                //@16MHz{
        unsigned char i, j, k;

        i = 13;
        j = 41;
        k = 198;
        do
        {
                do
                {
                        while (--k);
                } while (--j);
        } while (--i);
}
這個時間是怎么推算出來的呀?




分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報

沙發(fā)
ID:97438 發(fā)表于 2017-9-29 16:32 | 只看該作者
根據(jù)運(yùn)行一個指令的時間,然后計算這個程序運(yùn)行了多少個指令。如果你用的是STC的單片機(jī)的話,它的那個下載工具里面有自動幫你計算的工具。
回復(fù)

使用道具 舉報

板凳
ID:47286 發(fā)表于 2017-9-29 19:26 | 只看該作者
在c下寫這種延時 設(shè)定好運(yùn)行頻率用c仿真 看經(jīng)過多少時間 估計出來的 在c下全c的語句很難精確計算時間 不知道c怎么編譯
回復(fù)

使用道具 舉報

地板
ID:111634 發(fā)表于 2017-9-29 21:48 | 只看該作者
keil  c中,系統(tǒng)特殊寄存器組“Sys”中有一項“sec”和“states”,可查看程序執(zhí)行時間和運(yùn)行周期數(shù)。例如,執(zhí)行到延時子程序時,記錄進(jìn)入該子程序的sec值,然后按過程單步鍵,快速執(zhí)行該子程序完畢,再讀取sec值,兩者之差,即為該子程序執(zhí)行時間。也可根據(jù)周期數(shù)states與圖2-8中設(shè)置的晶振頻率計算程序運(yùn)行時間。以上摘自張志良編著《80C51單片機(jī)實用教程——基于Keil C和Proteus》高等教育出版社ISBN 978-7-04-044532-9, 用于學(xué)習(xí)51單片機(jī)原理,程序(雙解c和匯編)語句條條有注解,便于閱讀理解,便于自學(xué)。
回復(fù)

使用道具 舉報

5#
ID:223571 發(fā)表于 2017-9-29 22:07 | 只看該作者
luoluoluo136 發(fā)表于 2017-9-29 16:32
根據(jù)運(yùn)行一個指令的時間,然后計算這個程序運(yùn)行了多少個指令。如果你用的是STC的單片機(jī)的話,它的那個下載 ...

“根據(jù)運(yùn)行一個指令的時間,然后計算這個程序運(yùn)行了多少個指令。“這個我能理解;關(guān)鍵是指令語言是相對匯編而言,而不同結(jié)構(gòu)的C語言反匯編會有不同的指令語句,那么我的問題就變成了:是否有一種直接的規(guī)則針對不同的C語言結(jié)構(gòu)對應(yīng)出相應(yīng)的執(zhí)行時間?
回復(fù)

使用道具 舉報

6#
ID:223571 發(fā)表于 2017-9-29 22:10 | 只看該作者
luoluoluo136 發(fā)表于 2017-9-29 16:32
根據(jù)運(yùn)行一個指令的時間,然后計算這個程序運(yùn)行了多少個指令。如果你用的是STC的單片機(jī)的話,它的那個下載 ...

還有一個問題,關(guān)于你的第二個回答,這是STC芯片。這是一個已經(jīng)存在的時間延時函數(shù),假如我要用此芯片延時300us,該怎么進(jìn)行修改,就在此模式下,就是說怎么計算?
回復(fù)

使用道具 舉報

7#
ID:223571 發(fā)表于 2017-9-29 22:12 | 只看該作者
dzbj 發(fā)表于 2017-9-29 19:26
在c下寫這種延時 設(shè)定好運(yùn)行頻率用c仿真 看經(jīng)過多少時間 估計出來的 在c下全c的語句很難精確計算時間 不知 ...

這個其實在調(diào)試的時候,可以通過反匯編可以看到執(zhí)行的時間,關(guān)鍵是怎么設(shè)計延時,假如我要延時300us該怎么搞?

回復(fù)

使用道具 舉報

8#
ID:123289 發(fā)表于 2017-9-30 00:40 | 只看該作者
簡單,編譯器生成匯編后,就能看出來了。這樣就可以增刪了。
回復(fù)

使用道具 舉報

9#
ID:236686 發(fā)表于 2017-9-30 01:42 | 只看該作者
有個調(diào)試的功能  keil  里面     可以看到花了多少時間
回復(fù)

使用道具 舉報

10#
ID:164602 發(fā)表于 2017-9-30 08:33 | 只看該作者
這是個很專業(yè)的問題,我回答不了,但我知道怎么去找答案!
STC的下載軟件,功能是很強(qiáng)大的,其中就有這個延時函數(shù)的自動生成功能。
在軟件右上角,有很多功能的頁面,其中就有“軟件延時計算器”,我截個圖,你自己看看。
當(dāng)然,如果你是想自己掌握這個時間,那我就幫不了你了。

1.jpg (26.99 KB, 下載次數(shù): 83)

1.jpg
回復(fù)

使用道具 舉報

11#
ID:104472 發(fā)表于 2017-9-30 11:48 | 只看該作者
反編碼,能夠得到時間值;
回復(fù)

使用道具 舉報

12#
ID:155507 發(fā)表于 2017-10-1 13:02 | 只看該作者

  1. void Delay300us()                //@16.000MHz
  2. {
  3.         unsigned char i, j;

  4.         i = 5;
  5.         j = 168;
  6.         do
  7.         {
  8.                 while (--j);
  9.         } while (--i);
  10. }
復(fù)制代碼


  1. DELAY300US:                        ;@16.000MHz
  2.         NOP
  3.         PUSH 30H
  4.         PUSH 31H
  5.         MOV 30H,#4
  6.         MOV 31H,#183
  7. NEXT:
  8.         DJNZ 31H,NEXT
  9.         DJNZ 30H,NEXT
  10.         POP 31H
  11.         POP 30H
  12.         RET
復(fù)制代碼
回復(fù)

使用道具 舉報

13#
ID:207388 發(fā)表于 2017-10-10 15:30 | 只看該作者
void Delay300us()                //@16.000MHz
回復(fù)

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 欧美在线激情 | 精品久久久久一区二区国产 | 成人一区二区三区 | 国产午夜高清 | 日韩亚洲欧美综合 | 欧美精品久久久 | 国产一区精品在线 | 亚洲一二三在线 | 国产精品日本一区二区在线播放 | 欧美久久不卡 | 精品视频一区二区 | 国产精品国产a级 | 91精品国产色综合久久不卡98 | 亚洲九九 | 国产免费一级一级 | 国产网站在线免费观看 | 欧美日韩综合 | 精品欧美一区免费观看α√ | 日韩一二三区视频 | 午夜一区二区三区 | 国产探花在线精品一区二区 | 国产三区在线观看视频 | 噜噜噜色网 | 中文字幕 欧美 日韩 | 久久久www成人免费无遮挡大片 | www.精品国产 | 亚洲精品成人网 | 国产激情在线看 | 综合欧美亚洲 | 日韩视频在线观看中文字幕 | 91视频在线观看 | av黄色国产 | 国产无人区一区二区三区 | 婷婷精品 | 欧美自拍另类 | 精品乱码一区二区三四区 | www312aⅴ欧美在线看 | 国产精品毛片av | 精品久久久一区 | 中文字幕在线国产 | av网站在线免费观看 |