欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

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

QQ登錄

只需一步,快速開(kāi)始

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

求一個(gè)精準(zhǔn)延時(shí)的函數(shù)(51單片機(jī)用)

  [復(fù)制鏈接]
回帖獎(jiǎng)勵(lì) 10 黑幣 回復(fù)本帖可獲得 5 黑幣獎(jiǎng)勵(lì)! 每人限 1 次
跳轉(zhuǎn)到指定樓層
樓主
void delay(unsigned int t)                                
{
    unsigned int i,j;
        for(i=t;i>0;i--)                     
    for(j=112;j>0;j--);
}

類似于這種,輸入變量t, 就延時(shí)t毫秒,delay(1000)就是延時(shí)1秒。

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

使用道具 舉報(bào)

沙發(fā)
ID:824490 發(fā)表于 2021-1-14 15:18 | 只看該作者
用定時(shí)器中斷來(lái)做比較“精準(zhǔn)“的延時(shí),除此之外別無(wú)它法,這個(gè)”精準(zhǔn)“取決于你晶體的的溫飄、誤差、電壓等等指標(biāo)。
回復(fù)

使用道具 舉報(bào)

板凳
ID:388013 發(fā)表于 2021-1-14 15:47 | 只看該作者
怎么個(gè)精準(zhǔn)法,你要的延時(shí)最小單位是多少,你用的晶振是多少兆的
回復(fù)

使用道具 舉報(bào)

地板
ID:752974 發(fā)表于 2021-1-14 16:20 | 只看該作者
要延時(shí)精準(zhǔn),只是相對(duì)的精準(zhǔn)。定時(shí)部分用匯編寫,再后期調(diào)試修正。
回復(fù)

使用道具 舉報(bào)

5#
ID:866313 發(fā)表于 2021-1-14 17:11 | 只看該作者
  1. // 全局變量,ms時(shí)標(biāo)
  2. unsigned char xms = 0;

  3. // 定時(shí)函數(shù)
  4. void delay(unsigned int t) {
  5.     TR0 = 1; // 定時(shí)器 T0 開(kāi)始計(jì)時(shí)
  6.     while (xms != t); // 直至計(jì)時(shí)至 t ms 退出
  7. }

  8. // 定時(shí)器 T0 初始化
  9. void t0_init() {
  10.     TMOD = 0x02; // 定時(shí)器 T0,方式 2
  11.     TH0 = (256-200)%256; // 定時(shí)200us 初值
  12.     TL0 = (256-200)%256;
  13.     EA = 1;
  14.     ET0 = 1;
  15.     TR0 = 0;
  16. }

  17. void t0_srv() interrupt 1 {
  18.     static unsigned char 200us = 0;
  19.     200us++;
  20.     if (200us == 5) {
  21.         xms++;
  22.         200us = 0;
  23.     }
  24. }
復(fù)制代碼


不知道這樣可不可以呢?
回復(fù)

使用道具 舉報(bào)

6#
ID:390416 發(fā)表于 2021-1-14 18:25 | 只看該作者
第一、不同的單片機(jī),比如STC12和STC8 速度就不同。你算那么精準(zhǔn)有啥用?
回復(fù)

使用道具 舉報(bào)

7#
ID:390416 發(fā)表于 2021-1-14 18:31 | 只看該作者
第一、不同的單片機(jī),比如STC12跟STC8就不一樣。你算這么精準(zhǔn)有啥用?
第二、同一片單片機(jī)芯片,不同的晶振頻率速度也不一樣。你算這么精準(zhǔn)有啥用?
第三、相同的時(shí)鐘,不同的指令,速度也不相同。你算這么精準(zhǔn)有啥用?
第四、不同的變量長(zhǎng)度,執(zhí)行速度也不同。你算這么精準(zhǔn)有啥用?
第五、不同的變量存放位置,執(zhí)行速度也不同。你算這么精準(zhǔn)有啥用?
第六、中斷一打開(kāi),這種延遲函數(shù) 誤差可能會(huì)增加250%,你算這么精準(zhǔn)有啥用?
所以,看《人人學(xué)會(huì)單片機(jī)》課程,來(lái)學(xué)習(xí)我們的框架式編程方式。沒(méi)要求的用計(jì)數(shù)延遲,有要求的必須定時(shí)器。程序里面不能這樣死等、提高代碼執(zhí)行效率才是最需要考慮的事情。
回復(fù)

使用道具 舉報(bào)

8#
ID:398477 發(fā)表于 2021-1-14 20:14 來(lái)自觸屏版 | 只看該作者
可以用一些輔助軟件計(jì)算的呢,論壇里也都有!
回復(fù)

使用道具 舉報(bào)

9#
ID:584041 發(fā)表于 2021-1-14 20:34 | 只看該作者
1984528951 發(fā)表于 2021-1-14 15:47
怎么個(gè)精準(zhǔn)法,你要的延時(shí)最小單位是多少,你用的晶振是多少兆的

當(dāng)然是12MHZ的喲
回復(fù)

使用道具 舉報(bào)

10#
ID:584041 發(fā)表于 2021-1-14 20:35 | 只看該作者
留住這一刻2014 發(fā)表于 2021-1-14 20:14
可以用一些輔助軟件計(jì)算的呢,論壇里也都有!

是單片機(jī)小精靈吧,我知道哇
回復(fù)

使用道具 舉報(bào)

11#
ID:584041 發(fā)表于 2021-1-14 20:36 | 只看該作者
cedtek 發(fā)表于 2021-1-14 17:11
不知道這樣可不可以呢?

就是用定時(shí)器嘛,這個(gè)可以。
回復(fù)

使用道具 舉報(bào)

12#
ID:339654 發(fā)表于 2021-1-14 21:37 | 只看該作者
STC單片機(jī)的下載程序里頭有軟件延時(shí)程序計(jì)算器很方便
回復(fù)

使用道具 舉報(bào)

13#
ID:584814 發(fā)表于 2021-1-14 22:57 | 只看該作者
精準(zhǔn)就呵呵了罷,除非你對(duì)精準(zhǔn)的要求和“最美”一樣隨便就能拉一車。
軟件寫得再精準(zhǔn),沒(méi)有精準(zhǔn)的硬件還是不可能,難不成你是航天科技派出的探子
硬件大多都有個(gè)寬容度,大多對(duì)延時(shí)要求都不高,甚至很多步驟省去也能正常工作的,你可以調(diào)試好硬件后對(duì)單片機(jī)的主頻(軟件寫或硬改晶振)動(dòng)一下試試就知道了。
回復(fù)

使用道具 舉報(bào)

14#
ID:401564 發(fā)表于 2021-1-15 08:53 | 只看該作者
STC下載器有專用的軟件延時(shí),直接生成C或者匯編就可以了
就算是一樣的時(shí)鐘,不同的STC系列延時(shí)都不一樣的
想要真正的精準(zhǔn),直接上匯編
回復(fù)

使用道具 舉報(bào)

15#
ID:854772 發(fā)表于 2021-1-15 15:02 | 只看該作者
用匯編吧,可以自己計(jì)算每條指令的時(shí)間
回復(fù)

使用道具 舉報(bào)

16#
ID:584041 發(fā)表于 2021-1-16 21:21 | 只看該作者
人人學(xué)會(huì)單片機(jī) 發(fā)表于 2021-1-14 18:31
第一、不同的單片機(jī),比如STC12跟STC8就不一樣。你算這么精準(zhǔn)有啥用?
第二、同一片單片機(jī)芯片,不同的晶 ...

嗯,有道理喲
回復(fù)

使用道具 舉報(bào)

17#
ID:235954 發(fā)表于 2021-1-18 15:41 | 只看該作者
定時(shí)器一開(kāi),誤差值偏大的
回復(fù)

使用道具 舉報(bào)

18#
ID:878649 發(fā)表于 2021-1-18 16:27 | 只看該作者
匯編可能會(huì)相對(duì)精準(zhǔn)一些
回復(fù)

使用道具 舉報(bào)

19#
ID:851922 發(fā)表于 2021-1-18 16:59 | 只看該作者
要延時(shí)精準(zhǔn),只是相對(duì)的精準(zhǔn)。不同的單片機(jī)是不同的。
回復(fù)

使用道具 舉報(bào)

20#
ID:847443 發(fā)表于 2021-1-25 17:05 | 只看該作者
和你的晶振有關(guān)系,晶振的頻率越高精度越高。
回復(fù)

使用道具 舉報(bào)

21#
ID:811405 發(fā)表于 2021-1-27 11:37 | 只看該作者
利用定時(shí)器進(jìn)行延時(shí)精確,其它的延時(shí)都有一定的誤差
回復(fù)

使用道具 舉報(bào)

22#
ID:879348 發(fā)表于 2021-1-27 13:45 | 只看該作者
打開(kāi)STC官方軟件延時(shí)比較靠譜,前提是程序不能由中斷響應(yīng)
回復(fù)

使用道具 舉報(bào)

23#
ID:854242 發(fā)表于 2021-1-27 14:46 | 只看該作者
取決于晶振,采用外部晶振準(zhǔn)確度較高,但是一般ms級(jí)延時(shí),內(nèi)部晶振可以了
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

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

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

快速回復(fù) 返回頂部 返回列表