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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 13558|回復: 9
打印 上一主題 下一主題
收起左側(cè)

單片機中斷函數(shù)是如何運行的,和主函數(shù)有沖突嗎?

[復制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:232206 發(fā)表于 2017-9-12 23:35 來自觸屏版 | 只看該作者 |只看大圖 回帖獎勵 |倒序瀏覽 |閱讀模式
中斷函數(shù)是如何運行的,和主函數(shù)有沖突嗎?
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏1 分享淘帖 頂 踩
回復

使用道具 舉報

沙發(fā)
ID:164602 發(fā)表于 2017-9-13 08:34 | 只看該作者
中斷是為使單片機具有對外部或內(nèi)部隨機發(fā)生的事件實時處理而設(shè)置的,中斷功能的存在,很大程度上提高了單片機處理外部或內(nèi)部事件的能力。它也是單片機最重要的功能之一,是我們學習單片機必須要掌握的。很多初學者被困在中斷中,學了很久仍然不知道中斷究竟是個什么東西,大家千萬不要認為它有多難,其實只要掌握正確的學習方法,沒有哪個知識點是學不會的。
為了能讓大家更容易理解中斷概念,我們先來舉一個生活事例:你打開火,燒上一壺水。然后去洗衣服,在洗衣服的過程中,突然聽到水壺發(fā)出水開的報警聲,這時,你停止洗衣服動作,立即去關(guān)掉火,然后將開水灌入暖水瓶中,灌完開水后,你又回去繼續(xù)洗衣服。這個過程中實際上就發(fā)生了一次中斷。
對于單片機來講,中斷是指CPU在處理某一事件A時,發(fā)生了另一事件B,請求CPU迅速去處理(中斷發(fā)生);CPU暫時停止當前的工作(中斷響應),轉(zhuǎn)去處理事件B(中斷服務);待CPU將事件I.,處理完畢后,再回到原來事件A被中斷的地方繼續(xù)處理事件A(中斷返回),這一過程稱為中斷。
再回來看前面講的生活事例,與單片機中斷結(jié)合分析,你的主任務是洗衣服,水開報警這是一個中斷請求,這一時刻相當于斷點處,你響應中斷去關(guān)火,然后將開水灌入暖水瓶中,這一動作實際上就是處理中斷程序,灌完開水后再回去繼續(xù)洗衣服,相當于處理完中斷程序后再返回主程序繼續(xù)執(zhí)行主程序。這里需要注意的是,水開是隨時都有可能的,但是無論什么時候開,只要一開你將立即去處理它,處理完后再回來繼續(xù)接著洗剛才那件衣服。單片機在執(zhí)行程序時,中斷也隨時有可能發(fā)生,但無論何時發(fā)生,只要一旦發(fā)生,單片機將立即暫停當前程序,趕去處理中斷程序,處理完中斷程序后再返回剛才暫停處接著執(zhí)行原來的程序。單片機在執(zhí)行程序時其程序流程圖。
                              
引起CPU中斷的根源,稱為中斷源,中斷源向CPU提出中斷請求,CPU暫時中斷原來的事務A,轉(zhuǎn)去處理事件B,對事件B處理完畢后,再回到原來被中斷的地方(即斷點),稱為中斷返回。實現(xiàn)上述中斷功能的部件稱為中斷系統(tǒng)(中斷機構(gòu))。
中斷的開啟與關(guān)閉、設(shè)置啟用哪一個中斷等都是由單片機內(nèi)部的一些特殊功能寄存器來決定的,在以前的學習中我們僅對單片機內(nèi)部的特殊功能寄存器IO口寄存器設(shè)置過,從下節(jié)起我們將會設(shè)置單片機內(nèi)部更多的特殊功能寄存器。

當中央處理機CPU正在處理某件事的時候外界發(fā)生了緊急事件請求,要求CPU暫停當前的工作,轉(zhuǎn)而去處理這個緊急事件,處理完以后,再回到原來被中斷的地方,繼續(xù)原來的工作,這樣的過程稱為中斷。實現(xiàn)這種功能的部件稱為中斷系統(tǒng),請示CPU中斷的請求源稱為中斷源。微型機的中斷系統(tǒng)一般允許多個中斷源,當兒個中斷源同時向CPU請求中斷,要求為它服務的時候,這就存在CPU優(yōu)先響應哪一個中斷源請求的問題。通常根據(jù)中斷源的輕重緩急排隊,優(yōu)先處理最緊急事件的中斷請求源,即規(guī)定每一個中斷源有一個優(yōu)先級別。CPU總是先響應優(yōu)先級別最高的中斷請求。

中斷理解.jpg (26.8 KB, 下載次數(shù): 52)

中斷理解.jpg
回復

使用道具 舉報

板凳
ID:89515 發(fā)表于 2017-9-13 09:05 | 只看該作者
至于怎么運行,樓上已經(jīng)解釋清楚
回復

使用道具 舉報

地板
ID:193818 發(fā)表于 2017-9-13 09:05 | 只看該作者
中斷就是你一件事沒有做完中間來了一件立即要處理的事,你先處理完這件事,處理完了然后返回來處理之前的事,而且是從你中斷的地方開始。其實就是壓棧出棧。不可能影響你的主函數(shù),除非你的代碼有問題
回復

使用道具 舉報

5#
ID:89515 發(fā)表于 2017-9-13 10:15 | 只看該作者
mengzhixinheng 發(fā)表于 2017-9-13 09:05
至于怎么運行,樓上已經(jīng)解釋清楚

影響是有的,這要看你怎么去杜絕!中斷了主程序的執(zhí)行,不就是在浪費主程序執(zhí)行時間嘛。只是如果中斷函數(shù)執(zhí)行時間短,中斷級數(shù)不深,這個影響被忽略罷了。如果你有一個時序要求很高的通信程序,這時候你中斷試試麻煩大了。如果中斷函數(shù)臃腫,你的程序效率會降低很多。
回復

使用道具 舉報

6#
ID:72333 發(fā)表于 2017-9-13 13:55 | 只看該作者
中斷函數(shù)是被單片機系統(tǒng)硬件自動執(zhí)行的,與主函數(shù)沒關(guān)系,中斷函數(shù)類似于高級語言的回調(diào)函數(shù)
回復

使用道具 舉報

7#
ID:215712 發(fā)表于 2017-9-13 21:04 | 只看該作者
沒有沖突,有外部中斷,定時器中斷,運行不同
回復

使用道具 舉報

8#
ID:232971 發(fā)表于 2017-9-13 22:05 | 只看該作者
中斷函數(shù)不要太長 不然會影響主函數(shù)的一些循環(huán) 但一般的沖突不大
回復

使用道具 舉報

9#
ID:917140 發(fā)表于 2021-5-21 03:32 | 只看該作者
HC6800-ES-V2.0 發(fā)表于 2017-9-13 08:34
中斷是為使單片機具有對外部或內(nèi)部隨機發(fā)生的事件實時處理而設(shè)置的,中斷功能的存在,很大程度上提高了單片 ...

解析的非常透徹,對初學者大有益處
回復

使用道具 舉報

10#
ID:517951 發(fā)表于 2021-5-21 09:15 | 只看該作者
通俗一點: 你正在寫作業(yè)的時候, 你的同學來找你去打球, 你可能需要中斷你的作業(yè), 把作業(yè)現(xiàn)場保存好, 然后和你的同學打了半小時后回來, 在保存好的作業(yè)現(xiàn)場繼續(xù)把作業(yè)完成.  

和主函數(shù)的沖突就是會占用主函數(shù)的執(zhí)行時間周期, 中斷處理函數(shù)的事務不能太長,要盡可能精悍.
回復

使用道具 舉報

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

本版積分規(guī)則

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

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

快速回復 返回頂部 返回列表