娇小w搡bbbb搡bbb,《第一次の人妻》,中国成熟妇女毛茸茸,边啃奶头边躁狠狠躁视频免费观看

歷史上的今天

今天是:2025年06月08日(星期日)

2021年06月08日 | 51單片機中斷優先級及中斷嵌套

發布者:a407895356 來源: eefocus關鍵字:51單片機  中斷優先級  中斷嵌套 手機看文章 掃描二維碼
隨時隨地手機看文章

在說到中斷之前,我先來定義一下優先級,明白了什么是優先級,后面的闡述就容易明白了。實際上很多人都是混淆了優先級的含義,所以才覺得糊里糊涂。


中斷的優先級有兩個:查詢優先級和執行優先級。


什么是查詢優級呢?我們從datasheet或書上看到的默認(IP寄存器不做設置,上電復位后為00H)的優先級:


外部中斷0 > 定時/計數器0 > 外部中斷1 > 定時/計數器1 > 串行中斷


或 int0,timer0,int1,timer1,serial port 或 INT0、T0、INT1、T1、UART


或 PX0>PT0>PX1>PT1>PS>......


其實都是查詢優級。首先查詢優先級是不可以更改和設置的。這是一個中斷優先權排隊的問題。是指多個中斷源同時產生中斷信號時,中斷仲裁器選擇對哪個中斷源優先處理的順序。而這與是否發生中斷服務程序的嵌套毫不相干。當CPU查詢各個中斷標志位的時候,會依照上述5個查詢優先級順序依次查詢,當數個中斷同時請求的時候,會優先查詢到高優查詢先級的中斷標志位,但并不代表高查詢優先級的中斷可以打斷已經并且正在執行的低查詢優先級的中斷服務。


例如:當計數器0中斷和外部中斷1(按查詢優先級,計數器0中斷>外部中斷1)同時到達時,會進入計時器0的中斷服務函數;但是在外部中斷1的中斷服務函數正在服務的情況下,這時候任何中斷都是打斷不了它的,包括邏輯優先級比它高的外部中斷0計數器0中斷。


而中斷的執行優先級就是你對IP寄存器的設置了。在2個優先級的情況下,某位為1,則相應的中斷源為高優先級;為0,則為低優先級。


關于中斷的優先級有三條原則:


1、CPU同時接收到幾個中斷時,首先響應優先級最高的中斷請求;


2、正在進行的中斷過程不能被新的同級或低行優優先級的中斷請求所中斷;


3、正在進行的低行優優先級中斷服務,能被高行優優先級中斷請求中斷;


若:同一執行優先級中的中斷申請不止一個時,則有一個中斷優先權排隊問題。同一執行優先級的中斷優先權排隊,由中斷系統硬件確定的自然優先級形成,優先權自高到低的順序即:


外部中斷0>定時/計數0>外部中斷1>定時/計數1>串行接口


例如:設置IP = 0x10,即設置串口中斷為最高優先級,則串口中斷可以打斷任何其他的中斷服務函數實現嵌套,且只有串口中斷能打斷其他中斷的服務函數。若串口中斷沒有觸發,則其他幾個中斷之間還是保持邏輯優先級,相互之間無法嵌套。


關于中斷嵌套。可以這樣說,當一個中斷正在執行的時候,如果事先設置了中斷優先級寄存器IP,那么當一個更高優先級的中斷到來的時候會發生中斷嵌套,如果沒有設置則不會發生任何嵌套;如果有同一個優先級的中斷觸發,它并不是在“不斷的申請”,而是將它相應的中斷標志位置即IE寄存器的某位置位,當CPU執行完當前中斷之后,按照查詢優先級重新去查詢各個中斷標志位,進入相應中斷。


要記住,沒有設置IP時,單片機會按照查詢優先級(或都說邏輯優先級)來排隊進入服務。如果要想讓某個中斷優先響應, 則要設置IP,更改執行優先級(或者說物理優先級)。要注意的是,當設置了IP后,當低執行優先級中斷在運行時,如果有高執行優先級的中斷產生,則會嵌套調用進入高執行優先級的中斷。如果你是用C語言寫的程序,并在中斷服務時 using 了寄存組,要注意,兩個不同執行優先級的中斷服務程序不要 using 同一組寄存器。


看兩個問題,如下:


1 在各個中斷都是低優先級的時候,如果定時器0的溢出進入中斷。在這個中斷處理的過程中,外部中斷0也被觸發了,那么是不是要發生中斷嵌套?


2 如果定時器0發生中斷的時候,進入中斷處理程序,這個時候外部中斷1條件觸發條件滿足了。因為定時器0自然優先級比外部中斷1高,那么定時器0的中斷處理程序繼續執行。假設定時器中斷處理程序執行的過程中,外部中斷1的觸發。條件消失了,那么等定時器0的中斷處理完后,程序還是會進入外部中斷1處理程序嗎?


答案1:在IP事先設置了外部中斷0的優先級的情況下,CUP會中止定時器0的中斷服務,進入外部中斷0服務程序,執行完以后再回到定時器0中斷服務程序。否則不會。


答案2:肯定會進入中斷的;外部中斷1的觸發條件滿足后會置位外部1的中斷標志,即使后來外部中斷1的觸發條件消失了,也不會清除已置位的中斷標志,所以等定時器0的中斷處理完后,程序判斷外部中斷的中斷標志為1后依然會進入外部中斷1處理程序的,只有在外部中斷1處理程序中執行reti指令才會硬件清除外部中斷1的中斷標志(這也正是為什么中斷返回使用reti指令而不可以用ret替換的原因)...

關鍵字:51單片機  中斷優先級  中斷嵌套 引用地址:51單片機中斷優先級及中斷嵌套

上一篇:80C51的復位技術大盤點
下一篇:單片機式語音播報伏特表

推薦閱讀

前言:開始學USART+DMA的時候看到帖子《STM32 UART DMA實現未知數據長度接收》,覺得方法妙極了。此下出自此帖子——(整體的思路是這樣的,一開始設置好DMA接收,可以把緩沖區長度設置為幀最大長度,我們可以把RX連接到定時器的管腳輸入端,并且一開始設置輸入并且使能引腳下降沿中斷,當幀的第一個字節發送時,因為起始位為低電平,空閑時UART為高電平...
據外媒報道,弗勞恩霍夫研究人員開發了一種新的照明技術,不僅超越了法律和汽車工業對照明性能和功能的要求,同時比目前的系統更有效、更緊湊、而且安裝位置更靈活。新開發的車燈能讓設計師更自由地設計非傳統風格的汽車,同時也使駕駛員和汽車制造商從中受益。(圖片來源:弗勞恩霍夫官網)弗勞恩霍夫國際光學研究所(IOF)的科學家們將展示一個分段遠光...
6月6日是中國5G進入商用領域的一周年,OPPO發布了一張長圖回顧了過去一年里,該品牌在5G領域的發展和貢獻。其中包括新的5G應用、更多的5G專利技術等,同時還有諸如5G手機等大家耳熟能詳的產品,不過最讓人驚訝的大概是OPPO宣布將會進軍家電行業。  在OPPO公布的5G場景布局中,包括OPPO Enco W51、OPPO Watch、OPPO手環、OPPO 5G CPE T1、...
AI和IoT的結合被稱為“人工智能物聯網”(AIoT),AIoT能使互聯設備具備機器學習能力,從而執行復雜的智能運算。據Markets and Markets的數據顯示,AIoT市場規模在2019年為51億美元,預計到2024年將增長至162億美元,達到了26%的復合年均增長率(CAGR)。在加速發展差異化AIoT產品的最新舉措中,英飛凌科技股份公司(FSE: IFX / OTCQX: IFNNY)近日...

史海拾趣

小廣播
設計資源 培訓 開發板 精華推薦

最新單片機文章
何立民專欄 單片機及嵌入式寶典

北京航空航天大學教授,20余年來致力于單片機與嵌入式系統推廣工作。

 
EEWorld訂閱號

 
EEWorld服務號

 
汽車開發圈

 
機器人開發圈

電子工程世界版權所有 京ICP證060456號 京ICP備10001474號-1 電信業務審批[2006]字第258號函 京公網安備 11010802033920號 Copyright ? 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
主站蜘蛛池模板: 手机| 厦门市| 玉环县| 长海县| 阳原县| 松滋市| 鲜城| 郧西县| 道孚县| 龙州县| 洛扎县| 永兴县| 齐河县| 徐水县| 同德县| 馆陶县| 黔东| 平乐县| 莱芜市| 渝中区| 镇江市| 保康县| 枣强县| 诸城市| 呼玛县| 万盛区| 峨眉山市| 永宁县| 商水县| 南投市| 临汾市| 阳泉市| 那曲县| 凤庆县| 玛多县| 麦盖提县| 泽库县| 永德县| 昌江| 孟津县| 闽侯县|