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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 19709|回復: 27
收起左側

單片機初學者請教軟件延時和定時器延時的區(qū)別?

  [復制鏈接]
ID:143584 發(fā)表于 2018-11-23 19:51 | 顯示全部樓層 |閱讀模式
對于軟件延時還是定時器延時有點疑惑,為什么說定時器延時不占用單片機時間,書上和視頻中都說軟件延時占用單片機的掃描時間,會錯過一些事件,不都是起一個延時的效果嗎,比如 led=0;delay();led=1;delay(); ........
比如第一個delay()不論是軟件延時還是定時器延時,都得把延時函數(shù)執(zhí)行完才會執(zhí)行下一步吧,如像書上和視頻中說的定時器延時不占用掃描時間,哪豈不是就跳過delay() 函數(shù)了,哪還有什么意義。
回復

使用道具 舉報

ID:432075 發(fā)表于 2018-11-23 21:36 | 顯示全部樓層
定時器延時會使程序進入中斷,中斷進行中,主程序并不會運行,所以沒問題
回復

使用道具 舉報

ID:358930 發(fā)表于 2018-11-24 07:44 | 顯示全部樓層
定時器有專用寄程器的,如你的主程序隨便運行,只要定時中斷一到就會叫停主程序而執(zhí)行行定時中斷,這個中斷可以是點個小燈。如你主程序不停取反閃爍一個燈,定時一到就長亮。你看這不就是你主程序一直運行取反,無論定時到的那一會燈是什么狀態(tài),他都會常亮。這樣理行能行嗎?
回復

使用道具 舉報

ID:143584 發(fā)表于 2018-11-24 08:07 | 顯示全部樓層
背球客 發(fā)表于 2018-11-23 21:36
定時器延時會使程序進入中斷,中斷進行中,主程序并不會運行,所以沒問題

你的意思是程序是在中斷中進行的,可主程序中往往有很多的狀態(tài)要掃描的,你說主程序在這個時候是不運行的,哪不是主程序的掃描停止了嗎,哪和軟件延時還有什么區(qū)別,都是停在delay不往下進行,都會錯過一些狀態(tài)的,我的疑惑就在這兒.
回復

使用道具 舉報

ID:396960 發(fā)表于 2018-11-24 09:21 | 顯示全部樓層
1軟件延時:
其他執(zhí)行  --------           --------
延時執(zhí)行             --------          --------
    看到軟件延時像是一般其他執(zhí)行那樣,會占用時間的

2定時器延時:
其他執(zhí)行 ------- - - - -   --------  - - - -  --------
延時執(zhí)行         - - - - -            - - - - -
   看到,在定時器計數(shù)時,單片機是在做著其他工作,知道定時器加1一次,才回到定時器延時執(zhí)行。

大概就這么個理解,要深入理解,變成自己的知識,還是多寫代碼多看書。
回復

使用道具 舉報

ID:155507 發(fā)表于 2018-11-24 09:21 | 顯示全部樓層
用軟件延時,CPU 循環(huán)執(zhí)行一小段延時程序。
浪費 CPU 的精力。

用定時器定時,CPU 就可以干別的。
回復

使用道具 舉報

ID:155507 發(fā)表于 2018-11-24 09:26 | 顯示全部樓層
1、軟件循環(huán)延時:采用循環(huán)語句,如for,while等,進行長時間的空操作,或者空語句。
優(yōu)點:程序理解簡易,入手快,新手必備武器!
缺點:時間精度不高,且占用單片機大量時間資源,引發(fā)其它子函數(shù)的不流暢(卡滯、遲鈍),導致系統(tǒng)實時反應能力下降。
2、定時延時:采用定時器定時,如T0,T1;
優(yōu)點:時間精度高,提高系統(tǒng)程序執(zhí)行的高效性,不影響子函數(shù)的正常運行。
缺點:需占用1個定時器資源(可以復用),需良好程序構架支持,入手難。
個人建議:一旦學會定時器,就不應該再使用“循環(huán)延時”函數(shù),采用定時器才是正道。如果對延時精度要求不高,建議使用結構體組成多個延時體。
回復

使用道具 舉報

ID:424073 發(fā)表于 2018-11-24 09:31 | 顯示全部樓層
用軟件定時,CPU 循環(huán)執(zhí)行一小段延時程序。 浪費 CPU 的精力。 用定時器定時,CPU 就可以干別的。
回復

使用道具 舉報

ID:358930 發(fā)表于 2018-11-24 10:05 來自手機 | 顯示全部樓層
lwhmgp 發(fā)表于 2018-11-24 08:07
你的意思是程序是在中斷中進行的,可主程序中往往有很多的狀態(tài)要掃描的,你說主程序在這個時候是不運行的, ...

那是對的,但中斷所以才分優(yōu)先級別,中斷還可以被另一個中斷高級別叫停,回歸,但延時就只能等待,
回復

使用道具 舉報

ID:358930 發(fā)表于 2018-11-24 10:10 來自手機 | 顯示全部樓層
lwhmgp 發(fā)表于 2018-11-24 08:07
你的意思是程序是在中斷中進行的,可主程序中往往有很多的狀態(tài)要掃描的,你說主程序在這個時候是不運行的, ...

所以我們才會引入N多中斷優(yōu)先級,防止延時或者大量不應答器件,死在那里,使得主程序停止,中斷有時等于你認為的延
回復

使用道具 舉報

ID:432321 發(fā)表于 2018-11-24 13:51 | 顯示全部樓層
軟件延時說白了就是浪費CPU時間而且還有很大的機械抖動,而定時器就不一樣他是單片機的內部定時就好像你要2MS的延時,定時器就像CPU雇傭的工人2MS
回復

使用道具 舉報

ID:432353 發(fā)表于 2018-11-24 14:15 | 顯示全部樓層
軟件延遲一般時間不精準,定時器就比較準
回復

使用道具 舉報

ID:97097 發(fā)表于 2018-12-11 17:08 | 顯示全部樓層
精度不一樣
回復

使用道具 舉報

ID:444256 發(fā)表于 2018-12-11 17:22 | 顯示全部樓層
軟件延時會占用cpu,定時器延時的話就好比你在工作的時候還有個小助手來幫你,不用經常打斷你的工作
回復

使用道具 舉報

ID:367460 發(fā)表于 2018-12-11 19:00 | 顯示全部樓層
延時函數(shù)時CPU會一直純延時,什么都不干,  而定時器不一樣,它在背后跑它自己的,到時間了會進入中斷,執(zhí)行中斷函數(shù)里的程序,不占用CPU,主程序和定時器互不影響
回復

使用道具 舉報

ID:441377 發(fā)表于 2018-12-12 15:06 | 顯示全部樓層
可以這樣理解:定時器延時是讓程序跑進定時器里面運行,單片機依舊可以干別的事情,軟件延時就是讓單片機依舊不停在干活,只不過干的活是無意義純粹消磨時間的期間單片機干不了別的。
回復

使用道具 舉報

ID:421426 發(fā)表于 2018-12-13 09:58 來自手機 | 顯示全部樓層
只是暫時跳過吧    當中斷執(zhí)行完以后還會繼續(xù)執(zhí)行沒有完成的程序   等到下次中斷時間到了在進去中斷就這么循環(huán)下去
回復

使用道具 舉報

ID:229821 發(fā)表于 2019-3-28 09:03 | 顯示全部樓層
我可以這樣理解嗎? 延時是單片機等待,什么都做不了,主程序也不會繼續(xù)執(zhí)行。定時器雖然也讓主程序不繼續(xù)執(zhí)行。但是有多個定時器的話,那多個定時器都還在執(zhí)行???
回復

使用道具 舉報

ID:423528 發(fā)表于 2019-3-28 11:10 | 顯示全部樓層
定時器延時是利用定時計數(shù),視為外設,計數(shù)是一直在進行的,當計數(shù)到溢出更新值時產生中斷信號,MCU接收到這個信號后,在中斷函數(shù)中可以處理你要延時之后再執(zhí)行的代碼,在未進入定時中斷時間內,MCU同時可以執(zhí)行其他代碼;而普通的延時函數(shù),函數(shù)里面的代碼是需要MCU一句一句地執(zhí)行,要占用時間。
回復

使用道具 舉報

ID:158375 發(fā)表于 2019-3-28 11:17 | 顯示全部樓層
舉個例子:單片機要點亮1 Minute的LED,軟件延時的意思是,從點亮LED開始,單片機什么都不干,等待1 Minute,到時關閉LED;
定時器延時意思就是,從點亮LED開始,設置好定時器延時時間,單片機該干什么就干什么,等到延時器延時時間到了,來個中斷,單片機放下當前工作,保存現(xiàn)場參數(shù),響應中斷并關閉LED,單片機回復現(xiàn)場參數(shù),接著干原來的工作;
回復

使用道具 舉報

ID:467275 發(fā)表于 2019-3-28 12:55 | 顯示全部樓層
用軟件定時,CPU 循環(huán)執(zhí)行一小段延時程序。 浪費 CPU 的精力。浪費資源。
回復

使用道具 舉報

ID:499790 發(fā)表于 2019-3-28 15:42 | 顯示全部樓層
定時器延時準確,依靠晶振。重點是不耽誤單片機運行。軟件延時消耗的是cpu指令時間。CPU處于暫停(只能執(zhí)行延時)狀態(tài)
回復

使用道具 舉報

ID:599165 發(fā)表于 2019-8-13 23:46 | 顯示全部樓層
pingshuenhao 發(fā)表于 2019-3-28 15:42
定時器延時準確,依靠晶振。重點是不耽誤單片機運行。軟件延時消耗的是cpu指令時間。CPU處于暫停(只能執(zhí)行 ...

說的好呀
回復

使用道具 舉報

ID:426861 發(fā)表于 2019-8-14 10:01 | 顯示全部樓層
軟件延時只是傻瓜式的空等,此時延時的優(yōu)先級高于一切中斷,這樣做是有風險的
回復

使用道具 舉報

ID:425699 發(fā)表于 2019-8-14 10:33 | 顯示全部樓層
延時不精確,主要是相當于用單片機執(zhí)行空語句, 而定時器則是精確定時,每隔幾ms或us執(zhí)行一次程序
回復

使用道具 舉報

ID:418329 發(fā)表于 2019-8-14 11:35 | 顯示全部樓層
定時器延時是單機內部硬件延時,不占用軟件時間。
回復

使用道具 舉報

ID:510570 發(fā)表于 2019-8-14 16:02 | 顯示全部樓層
你這個問題,可以留著,等你多學習一點,自己就明白了!
回復

使用道具 舉報

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

本版積分規(guī)則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 国产激情一区二区三区 | 久草福利 | 久久精品中文 | 在线视频第一页 | 婷婷色国产偷v国产偷v小说 | 欧美精品第一区 | 在线不卡av | 久久中文字幕一区 | 日韩午夜一区二区三区 | 久久精品在线免费视频 | 日本一区二区影视 | 国产视频三级 | 国产性生活一级片 | 欧产日产国产精品视频 | 中文字幕一区二区三区精彩视频 | 亚洲精品视频在线 | 久久久99精品免费观看 | 日韩精品一区二区久久 | 亚洲成人999 | 亚洲首页 | 7799精品视频天天看 | 91精品国产乱码久久久久久 | 91精品国产91久久久久久最新 | 日日摸日日碰夜夜爽2015电影 | 91亚洲精选 | 精品国产黄a∨片高清在线 成人区精品一区二区婷婷 日本一区二区视频 | 久精品久久 | 不卡一区| 亚洲精品不卡 | 七七婷婷婷婷精品国产 | 一级爱爱片 | 91免费看片 | aaa级片 | 综合久久综合久久 | 国产午夜精品一区二区三区四区 | 欧美日韩国产高清 | 欧美一区二区免费在线 | 亚洲69p| 狠狠操狠狠操 | 2019天天干夜夜操 | 亚洲综合在线播放 |