女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

解析單片機里的中斷優先級

GReq_mcu168 ? 來源:cg ? 2018-12-28 17:03 ? 次閱讀

中斷的產生背景,實際生活當中還有更復雜的,比如我正在看電視,這個時候來電話了,我要進入接電話的“中斷”程序當中去,就在接電話的同時,聽到了水開的聲音,水開的“中斷”也發生了,我們就必須要放下手上的電話,先把煤氣關掉,然后再回來聽電話,最后聽完了電話再看電視,這里就產生了一個優先級的問題。

還有一種情況,我們在看電視的時候,這個時候聽到水開的聲音,水開的“中斷”發生了,我們要進入關煤氣的“中斷”程序當中,而在關煤氣的同時,電話聲音響了,而這個時候,我們的處理方式是先把煤氣關閉,再去接聽電話,最后再看電視。

從這兩個過程中,我們可以得到一個結論,就是最最緊急的事情,一旦發生后,我們不管當時處在哪個“程序”當中,我們必須先去處理最最緊急的事情,處理完畢后再去解決其它事情。

在我們的單片機程序當中有時候也是這樣的,有一般緊急的中斷,有特別緊急的中斷,這取決于具體的系統設計,這就涉及到中斷優先級和中斷嵌套的概念,今天先簡單介紹一下相關寄存器,不做例程說明。

中斷優先級有兩種,一種是搶占優先級,一種是固有優先級,先介紹搶占優先級。來看表1和表2。

表1:IP——中斷優先級寄存器的位分配(地址0xB8、可位尋址)

pIYBAFwl51SAINY8AAAJW9_XSzQ368.png

表2:IP——中斷優先級寄存器的位描述

pIYBAFwl51WAFEjvAAAdQzGVwmk028.png

IP 這個寄存器的每一位,表示對應中斷的搶占優先級,每一位的復位值都是 0,當我們把某一位設置為 1 的時候,這一位的優先級就比其它位的優先級高了。

比如我們設置了 PT0位為 1 后,當單片機在主循環或者任何其它中斷程序中執行時,一旦定時器 T0 發生中斷,作為更高的優先級,程序馬上就會跑到 T0 的中斷程序中來執行。

反過來,當單片機正在 T0中斷程序中執行時,如果有其它中斷發生了,還是會繼續執行 T0 中斷程序,直到把 T0 中的中斷程序執行完畢以后,才會去執行其它中斷程序。

當進入低優先級中斷中執行時,如又發生了高優先級的中斷,則立刻進入高優先級中斷執行,處理完高優先級級中斷后,再返回處理低優先級中斷,這個過程就叫做中斷嵌套,也稱為搶占。

所以搶占優先級的概念就是,優先級高的中斷可以打斷優先級低的中斷的執行,從而形成嵌套。當然反過來,優先級低的中斷是不能打斷優先級高的中斷的。

表3:中斷查詢序列

pIYBAFwl51aAY2WXAAAdV36Xrow916.png

那么既然有搶占優先級,自然就也有非搶占優先級了,也稱為固有優先級。在表3中的最后一列給出的就是固有優先級,請注意,在中斷優先級的編號中,一般都是數字越小優先級越高。

從表3中可以看到一共有 1~6 共 6 級的優先級,這里的優先級與搶占優先級的一個不同點就是,它不具有搶占的特性,也就是說即使在低優先級中斷執行過程中又發生了高優先級的中斷,那么這個高優先級的中斷也只能等到低優先級中斷執行完后才能得到響應。既然不能搶占,那么這個優先級有什么用呢?

答案是多個中斷同時存在時的仲裁。比如說有多個中斷同時發生了,當然實際上發生這種情況的概率很低,但另外一種情況就常見的多了,那就是出于某種原因我們暫時關閉了總中斷,即 EA=0,執行完一段代碼后又重新使能了總中斷,即 EA=1,那么在這段時間里就很可能有多個中斷都發生了,但因為總中斷是關閉的,所以它們當時都得不到響應,而當總中斷再次使能后,它們就會在同時請求響應了,很明顯,這時也必需有個先后順序才行,這就是非搶占優先級的作用了——如表3中,誰優先級最高先響應誰,然后按編號排隊,依次得到響應。

搶占優先級和非搶占優先級的協同,可以使單片機中斷系統有條不紊的工作,既不會無休止的嵌套,又可以保證必要時緊急任務得到優先處理。在后續的學習過程中,中斷系統會與我們如影隨形,處處都有它的身影,隨著學習的深入,相信你對它的理解也會更加的深入。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 單片機
    +關注

    關注

    6062

    文章

    44915

    瀏覽量

    646698
  • 中斷
    +關注

    關注

    5

    文章

    904

    瀏覽量

    42510

原文標題:一文讀懂單片機里面的“中斷”優先級

文章出處:【微信號:mcu168,微信公眾號:硬件攻城獅】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦
    熱點推薦

    MCS-96系列單片機中斷優先級的控制方法

    MCS—96系列單片機中斷系統頗具特色,其中斷優先級的控制極具靈活性,用戶可采用軟、硬件結合的方法隨心所欲地安排各類中斷源的
    發表于 05-03 16:36 ?2703次閱讀

    單片機中斷優先級應用案例

    單片機同時接收到幾個中斷請求時,單片機中斷請求的響應順序是如何確定的?實際上,單片機是通過中斷
    發表于 10-31 14:42 ?2563次閱讀
    <b class='flag-5'>單片機</b><b class='flag-5'>中斷</b><b class='flag-5'>優先級</b>應用案例

    單片機中斷優先級問題

    單片機很有興趣,有學過單片機,是51系列的。對中斷優先級不太懂,期望哪位大蝦幫忙下,小弟不勝感激!
    發表于 11-18 15:42

    單片機中斷優先級的軟件擴展方法

    為了解決MCS-51系列單片機只能由IP寄存器設定兩優先級的問題,文中給出了利用軟件對中斷優先級進行擴展的方法,同時給出了高于兩個
    發表于 04-30 13:43 ?29次下載

    單片機中斷優先級實驗

    單片機外部中斷實驗和中斷優先級實驗所需的C語言程序和電路圖適于初學者使用
    發表于 11-16 18:32 ?0次下載

    STM32單片機優先級的定義

    先占優先級也就是搶占優先級,概念等同于51單片機中的中斷。假設有兩中斷先后觸發,已經在執行的中斷
    發表于 12-07 15:09 ?9706次閱讀
    STM32<b class='flag-5'>單片機</b><b class='flag-5'>優先級</b>的定義

    如何設置51單片機中斷優先級

    PS:串行口中斷優先級控制位。PS=1設定串行口為高優先級中斷;PS=0為低優先級中斷
    發表于 12-17 16:28 ?3.4w次閱讀

    如何采用STM32單片機中斷向量控制器NVIC來分配優先級的數量

    先占優先級的概念等同于51單片機中的中斷。假設有兩中斷先后觸發,已經在執行的中斷先占優先級如果沒
    發表于 12-20 16:17 ?3503次閱讀

    51單片機中斷優先級中斷嵌套的詳細資料概述

    基本型80C51系列單片機有5個中斷源,2個優先級,每個中斷源可通過軟件設置為高優先級或低優先級
    發表于 09-03 17:28 ?5次下載
    51<b class='flag-5'>單片機</b>的<b class='flag-5'>中斷</b><b class='flag-5'>優先級</b>和<b class='flag-5'>中斷</b>嵌套的詳細資料概述

    為什么51單片機的默認中斷優先級都是低級及中斷嵌套

    51單片機(80C51系列)有5個中斷源,2個優先級,可以實現二中斷服務嵌套。現在很多擴展的51單片機
    發表于 07-23 17:37 ?1次下載
    為什么51<b class='flag-5'>單片機</b>的默認<b class='flag-5'>中斷</b><b class='flag-5'>優先級</b>都是低級及<b class='flag-5'>中斷</b>嵌套

    51單片機中斷優先級中斷嵌套的詳細資料說明

    51單片機(80C51系列)有5個中斷源,2個優先級,可以實現二中斷服務嵌套。現在很多擴展的51單片機
    發表于 07-09 17:41 ?3次下載
    51<b class='flag-5'>單片機</b>的<b class='flag-5'>中斷</b><b class='flag-5'>優先級</b>及<b class='flag-5'>中斷</b>嵌套的詳細資料說明

    單片機中斷優先級設置

    單片機芯 片: STC12C5A60S2 晶振是11.0592MHZ中斷優先級的基本規則1.低優先級中斷可被高
    發表于 11-17 09:36 ?6次下載
    <b class='flag-5'>單片機</b>之<b class='flag-5'>中斷</b><b class='flag-5'>優先級</b>設置

    STM8S105硬件中斷映射表和軟件中斷優先級

    硬件中斷優先級中0最高,依次優先級降低。只有當軟件優先級相同時,單片機才進行硬件優先級的判斷,且
    發表于 01-14 15:28 ?1次下載
    STM8S105硬件<b class='flag-5'>中斷</b>映射表和軟件<b class='flag-5'>中斷</b><b class='flag-5'>優先級</b>位

    51單片機中斷優先級都有啥?如何設置?

    51單片機包含五個中斷源,兩中斷優先級優先級可編程設置,通過IP進行設置。
    發表于 02-09 12:32 ?2次下載
    51<b class='flag-5'>單片機</b><b class='flag-5'>中斷</b><b class='flag-5'>優先級</b>都有啥?如何設置?

    單片機的“中斷優先級

    在我們的單片機程序當中有時候也是這樣的,有一般緊急的中斷,有特別緊急的中斷,這取決于具體的系統設計,這就涉及到中斷優先級
    的頭像 發表于 04-08 09:57 ?5489次閱讀