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

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

搜索
查看: 2943|回復(fù): 9
收起左側(cè)

關(guān)于Delay組成的C語(yǔ)言語(yǔ)句問(wèn)題

[復(fù)制鏈接]
ID:616666 發(fā)表于 2019-10-4 11:34 | 顯示全部樓層 |閱讀模式
DelayMS(3800)   是3.8s,怎么跑了0.18s
IMG_20190930_172408.jpg
回復(fù)

使用道具 舉報(bào)

ID:275826 發(fā)表于 2019-10-4 12:11 | 顯示全部樓層

DelayMS(3800)  誰(shuí)說(shuō)是3.8s,具體多長(zhǎng)跟晶振和子程序函數(shù)都有關(guān)系
回復(fù)

使用道具 舉報(bào)

ID:619205 發(fā)表于 2019-10-4 14:34 | 顯示全部樓層
Delay程式 延遲的時(shí)間和你所使用的指令週期與Delay方法有關(guān)我看你的圖片事阻塞式延遲,原理就是跑空指令,根據(jù)芯片不同每一個(gè)指令都需要花費(fèi)數(shù)個(gè)指令週期
你的Delay在副程式中視兩個(gè)空的迴圈函數(shù),裡面的for(i=0;i<y;i++) 中的y代表你每次執(zhí)行會(huì)跑幾個(gè)空迴圈
,whie(x--) 中的x 是你可以輸入的變數(shù),意思是你要跑幾次for迴圈 , 如果你輸入x,那你執(zhí)行空迴圈的次數(shù)就是x*y次,如果你輸入x=3800那
,就是執(zhí)行了3800*y次迴圈空迴圈.
如果使用這種方式來(lái)來(lái)完成Delay你可以去看你芯片執(zhí)行指令需要多少時(shí)間來(lái)計(jì)算實(shí)際的延遲時(shí)間,會(huì)者用其他發(fā)法一個(gè)一個(gè)嘗試來(lái)確定執(zhí)行1次for迴圈需要多久.
當(dāng)然用這種方式時(shí)間不會(huì)太準(zhǔn)確,如果時(shí)間要求精度高可以選擇使用TIM,或改用組合語(yǔ)言.

評(píng)分

參與人數(shù) 2黑幣 +90 收起 理由
機(jī)子單 + 30
admin + 60 回帖助人的獎(jiǎng)勵(lì)!

查看全部評(píng)分

回復(fù)

使用道具 舉報(bào)

ID:616666 發(fā)表于 2019-10-4 14:38 | 顯示全部樓層
有沒有大神,指導(dǎo)下,工作過(guò)程
回復(fù)

使用道具 舉報(bào)

ID:155507 發(fā)表于 2019-10-4 18:12 | 顯示全部樓層
機(jī)子單 發(fā)表于 2019-10-4 14:38
有沒有大神,指導(dǎo)下,工作過(guò)程

你可以參考這個(gè)

http://www.zg4o1577.cn/bbs/dpj-4711-1.html
回復(fù)

使用道具 舉報(bào)

ID:619372 發(fā)表于 2019-10-5 05:48 | 顯示全部樓層
不是循環(huán)多少次就是多少秒的,可以直接搜delay()函數(shù),可以查到很多常用的。
回復(fù)

使用道具 舉報(bào)

ID:155507 發(fā)表于 2019-10-5 07:16 | 顯示全部樓層
一、51單片機(jī)軟件延時(shí):
1、 幾種周期介紹
  周期名稱
            描述
            時(shí)間
  
  振蕩
            單片機(jī)提供時(shí)鐘脈沖信號(hào)
  的振蕩源的周期
            T=1/f
  
  狀態(tài)
            振蕩周期經(jīng)二分頻后得到
  的
            2T
  
  機(jī)器
            CPU 可以完成一個(gè)獨(dú)立操
  作所需要的周期
            12T
  
  指令
            指 CPU 完成一條操作所需
  的全部時(shí)間
            n*12T
  


2、指令:
1、MUL、DIV:僅有的 4 周期指令
2、包含 DPTR 和 PC 的指令均為 2 周期指令
3、所有的絕對(duì)跳轉(zhuǎn)和條件轉(zhuǎn)移指令,均為 2 周期指令
4、所有包括 A 寄存器的指令,均為單周期指令
5、位操作指令中,ANL 和 ORL 是 2 周期指令
6、所有包含立即地址的指令,除 INC direct 及 DEC direct 外,均為 2 周期指令
7、剩下的均為單周期指令。如:
void delay(uint z)
{
uint i ,j;
for(i = z; i> 0;i--)


for(j =0; j < 921; j++)
}


分析:
1.先計(jì)算你單片機(jī)的振蕩(時(shí)鐘)周期 T=1/晶振(11.0592MHZ)
2.一次 i--操作為 12T
3.忽略變量定義,上述延時(shí)函數(shù)共需時(shí)間:921*z*12T
4.帶入 T:921*12*T*z 約為 z us
3、計(jì)算誤差出現(xiàn)的原因:
1.軟件仿真時(shí),函數(shù)調(diào)用的時(shí)候入棧出棧操作的耗時(shí)。
2.指令周期隨指令的不同而不同導(dǎo)致的誤差。
3.中斷的影響。
4.變量的范圍超過(guò),從而與預(yù)計(jì)時(shí)間不一樣。


while(i--):如果 i 為 char 型,執(zhí)行一次大概為 5us 左右;如果 i 為 int 型則執(zhí)行一次大概為 10us 左右。注意:軟件延時(shí)通常用于時(shí)序要求較高的編程中,其它需延時(shí)較長(zhǎng)的地方必須采用單片機(jī)內(nèi)部定時(shí)器。

評(píng)分

參與人數(shù) 1黑幣 +12 收起 理由
機(jī)子單 + 12

查看全部評(píng)分

回復(fù)

使用道具 舉報(bào)

ID:445775 發(fā)表于 2019-10-5 10:33 | 顯示全部樓層
延時(shí)時(shí)間和單片機(jī)的時(shí)鐘頻率有關(guān),可以去網(wǎng)上下載例如單片機(jī)小精靈之類的工具,不僅可以生成相對(duì)準(zhǔn)確的延時(shí),提供了波特率生成器等工具,簡(jiǎn)單暴力
回復(fù)

使用道具 舉報(bào)

ID:451448 發(fā)表于 2019-10-5 16:48 | 顯示全部樓層
這個(gè)是跟你的CPU的執(zhí)行速度有關(guān),假如你用的CPU一毫秒能執(zhí)行2條指令,那么循環(huán)體里面的數(shù)值為2時(shí),代表執(zhí)行一次這個(gè)函數(shù)所花的時(shí)間為1ms,數(shù)值為4的話,代表執(zhí)行一次這個(gè)函數(shù)代表花費(fèi)時(shí)間為2ms,依次來(lái)達(dá)到延時(shí)的目的,不過(guò)這種延時(shí)是不夠精準(zhǔn)的,用在要求精度不高的事件
回復(fù)

使用道具 舉報(bào)

ID:158375 發(fā)表于 2019-10-5 17:19 | 顯示全部樓層
DelayMS(3800)   是3.8s,怎么跑了0.18s
  -----
  軟件延時(shí),不太準(zhǔn)確,與許多都有關(guān)系,例如中斷等等.....再說(shuō),DelayMS(3800) ,你咋確定是3.8S的?
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

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

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

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 国产视频日韩 | 欧美精品一二三区 | 国产日韩欧美在线观看 | 久久精品欧美一区二区三区不卡 | 免费av直接看 | 成人欧美一区二区 | 每日在线更新av | 911精品国产 | 九九热这里 | 国产精品久久久久久久久久久久久 | 中文字幕av免费 | 一级毛片免费视频 | 黄a网| 国产激情福利 | 日韩在线视频一区 | 天天干在线播放 | 亚洲国产aⅴ精品一区二区 免费观看av | 欧美成人一区二区 | 国产成人免费视频网站视频社区 | 精品国产一区二区在线 | 欧美中文在线 | 亚洲精品成人 | 国产精品99999 | 成人精品一区二区三区 | 久久久久久久久99精品 | 色婷婷综合久久久中文字幕 | 精品视频免费 | 亚洲视频精品 | www.伊人.com| 中文字幕亚洲精品 | 国产成人精品一区二区三区四区 | 国产成人精品一区二区在线 | 欧美 日韩 中文 | 蜜桃免费一区二区三区 | 亚洲一区二区三区在线视频 | 国产精品色 | 久久久久久久久久久久一区二区 | 国产成人综合久久 | 一区二区日本 | 中国大陆高清aⅴ毛片 | 99re99|