一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

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

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

3天內不再提示

單片機的默認中斷優(yōu)先級

CHANBAEK ? 來源:Zi Jin Code ? 作者: 錕醬不是醬 ? 2023-11-01 11:30 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

上一篇教程我們簡單認識和學習了中斷怎么使用,認識了單片機里面的幾種中斷源,學習了怎么配置中斷的設置

這里簡單的復習一下幾種中斷源

中斷符號中斷名稱
IE0外部中斷0(INT0)
ET0Timer0中斷
IE1外部中斷1(INT1)
ET1Timer1中斷
ESUART串口中斷
ET2Timer2中斷

陽光明媚的秋日,你坐在琴桌前輕撫古琴,這時候門外傳來敲門聲,你正要起身,身旁茶桌上的水壺里的水燒開了……

你起身,從爐上拿起燒水壺放在一旁,再來到門前打開了門……

提起水壺和開門是兩個事件,當兩個事件發(fā)生的時候總要有順序的,先提起水壺再開門或者先開門后提起水壺所造成的結果是不同的。往往為了安全,我們會先提起水壺再去開門,這就是我們處理兩個事件的順序

在單片機中,倘若同一個時刻Timer0觸發(fā)了中斷,Timer1也觸發(fā)了中斷,這時候外部中斷又觸發(fā)了。單片機會先執(zhí)行哪個中斷操作呢?

是不是隨意執(zhí)行一個操作呢?

顯然不是的,為了保證程序的有序執(zhí)行,單片機根據“中斷優(yōu)先級”判斷中斷是否需要優(yōu)先執(zhí)行

優(yōu)先級越高的中斷,越優(yōu)先執(zhí)行

單片機的默認中斷優(yōu)先級

單片機里面,已經對中斷的優(yōu)先級進行設置,這是C51的所有中斷優(yōu)先級

中斷優(yōu)先級(數字越大越優(yōu)先)中斷符號中斷名稱
6IE0外部中斷0(INT0)
5ET0Timer0中斷
4IE1外部中斷1(INT1)
3ET1Timer1中斷
2ESUART串口中斷
1ET2Timer2中斷

中斷的嵌套

(1)低優(yōu)先級的中斷和高優(yōu)先級的中斷同時觸發(fā),單片機優(yōu)先執(zhí)行高優(yōu)先級的中斷

圖片

由于中斷A的優(yōu)先級大于中斷B的優(yōu)先級,所以單片機先處理完中斷A的任務,再跳轉處理中斷B的任務,最后跳轉回原來的位置,繼續(xù)執(zhí)行程序

(2)低優(yōu)先級中斷執(zhí)行過程中高優(yōu)先級中斷觸發(fā)中斷,單片機跳轉執(zhí)行高優(yōu)先級中斷,再返回執(zhí)行低優(yōu)先級中斷,執(zhí)行結束后返回程序

圖片

中斷A的優(yōu)先級大于中斷B的優(yōu)先級,中斷B觸發(fā),單片機跳轉處理中斷B的任務,執(zhí)行到一半的時候,中斷A觸發(fā),由于中斷A的優(yōu)先級更高,所以單片機先去處理中斷A的任務,處理完再跳轉回來處理中斷B的任務

(3)高優(yōu)先級的中斷處理的過程中低優(yōu)先級的中斷觸發(fā),單片機優(yōu)先處理完高優(yōu)先級的中斷的任務,再執(zhí)行低優(yōu)先級的中斷的任務

圖片

中斷A的優(yōu)先級大于中斷B的優(yōu)先級,中斷A觸發(fā),單片機先去執(zhí)行中斷A,執(zhí)行的過程中中斷B觸發(fā),由于中斷B的優(yōu)先級小于中斷A的優(yōu)先級,所以單片機在執(zhí)行完中斷A后才會執(zhí)行中斷B的任務

上面中斷的執(zhí)行過程就叫中斷的嵌套

到此我們簡單的復習一下

中斷優(yōu)先級(數字越大越優(yōu)先)中斷符號中斷名稱
6IE0外部中斷0(INT0)
5ET0Timer0中斷
4IE1外部中斷1(INT1)
3ET1Timer1中斷
2ESUART串口中斷
1ET2Timer2中斷

下面用這個圖示實踐以下中斷的嵌套

圖片

Timer0先觸發(fā),Timer0運行的過程中Timer1觸發(fā),由于Timer1的優(yōu)先級不及Timer0,所以單片機執(zhí)行完Timer0才處理Timer1,在Timer1的處理過程中遇上了外部中斷INT0的觸發(fā),單片機先執(zhí)行INT0的任務,再返回執(zhí)行Timer1的任務,最后所有的任務都完成了以后,退回主程序

設置中斷優(yōu)先級

我們再看看單片機的默認優(yōu)先級

中斷優(yōu)先級(數字越大越優(yōu)先)中斷符號中斷名稱
6IE0外部中斷0(INT0)
5ET0Timer0中斷
4IE1外部中斷1(INT1)
3ET1Timer1中斷
2ESUART串口中斷
1ET2Timer2中斷

有的時候,如果使用默認的優(yōu)先級,可能難以滿足我們對程序的需求,事實上,我們可以手動設置單片機內中斷的優(yōu)先級。

手動設置單片機的優(yōu)先級涉及到一個寄存器

IP寄存器,0xB8,可位尋址

符號說明
7--
6--
5PT2Timer2優(yōu)先級設置
4PSUART串口優(yōu)先級設置
3PT1Timer1優(yōu)先級設置
2PX1外部中斷INT1優(yōu)先級設置
1PT0Timer0優(yōu)先級設置
0PX0外部中斷INT0優(yōu)先級設置

當我們給其中的一位寫上1的時候就說明我們把這一位的中斷優(yōu)先級提前了

舉個簡單的例子,如果我們要做一個簡單的秒表+時鐘電子鐘,秒表使用Timer0,時鐘使用Timer1,為了讓機器使用秒表的時候能讓時鐘正常走時,所以我們把Timer1的優(yōu)先級提前,如下

PT1 = 1;

優(yōu)先級的設置我們會在后面的項目中用到的,后面用到的時候我也會跟大家細細說明的哦

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

    關注

    6067

    文章

    44992

    瀏覽量

    650576
  • 中斷
    +關注

    關注

    5

    文章

    905

    瀏覽量

    42810
  • 串口
    +關注

    關注

    15

    文章

    1588

    瀏覽量

    79955
  • 中斷優(yōu)先級

    關注

    0

    文章

    22

    瀏覽量

    9585
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    MCS-96系列單片機中斷優(yōu)先級的控制方法

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

    單片機中斷優(yōu)先級應用案例

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

    關于51單片機中斷嵌套

    各位大神,如果我用STC90C516RD的單片機,默認中斷優(yōu)先級,單獨跑兩個定時器中斷,都OK,兩個定時器一起跑就有問題了,定時器0
    發(fā)表于 04-23 12:31

    單片機中斷優(yōu)先級的軟件擴展方法

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

    單片機中斷優(yōu)先級實驗

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

    STM32單片機優(yōu)先級的定義

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

    如何設置51單片機中斷優(yōu)先級

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

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

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

    解析單片機里的中斷優(yōu)先級

    搶占優(yōu)先級和非搶占優(yōu)先級的協同,可以使單片機中斷系統有條不紊的工作,既不會無休止的嵌套,又可以保證必要時緊急任務得到優(yōu)先處理。
    的頭像 發(fā)表于 12-28 17:03 ?9362次閱讀
    解析<b class='flag-5'>單片機</b>里的<b class='flag-5'>中斷</b><b class='flag-5'>優(yōu)先級</b>

    51單片機中斷優(yōu)先級中斷嵌套的詳細資料概述

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

    為什么51單片機默認中斷優(yōu)先級都是低級及中斷嵌套

    51單片機(80C51系列)有5個中斷源,2個優(yōu)先級,可以實現二中斷服務嵌套?,F在很多擴展的51單片機
    發(fā)表于 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'>優(yōu)先級</b>都是低級及<b class='flag-5'>中斷</b>嵌套

    51單片機中斷優(yōu)先級中斷嵌套的詳細資料說明

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

    單片機中斷優(yōu)先級設置

    STC12C5A60S2單片機復位后IP、IP2、IPH、IP2H均為00H,各個中斷源都是低優(yōu)先級=》不能被同級中斷中斷
    發(fā)表于 11-17 09:36 ?6次下載
    <b class='flag-5'>單片機</b>之<b class='flag-5'>中斷</b><b class='flag-5'>優(yōu)先級</b>設置

    STM8S105硬件中斷映射表和軟件中斷優(yōu)先級

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

    51單片機中斷優(yōu)先級都有啥?如何設置?

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