五月天青色头像情侣网名,国产亚洲av片在线观看18女人,黑人巨茎大战俄罗斯美女,扒下她的小内裤打屁股

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

51單片機入門基礎知識(三)之中斷系統(tǒng)

2022-07-22 20:58 作者:落木青云  | 我要投稿

什么是中斷

前面的文章中我舉上課的例子簡單描述了中斷,那么單片機系統(tǒng)里中斷是什么呢?

中斷,是指當計算機執(zhí)行正常程序時,系統(tǒng)中出現(xiàn)某些急需處理的異常情況和特殊請求,CPU暫時中止正在運行的程序,轉(zhuǎn)去對隨機發(fā)生的更為緊迫的事件進行處理,處理完畢后,CPU自動返回原來的程序繼續(xù)執(zhí)行。

實現(xiàn)中斷功能的硬件和軟件系統(tǒng)稱為中斷系統(tǒng)。能向CPU發(fā)出中斷請求的事件稱為中斷源。

若有多個中斷源同時請求中斷時,或者CPU正在處理某外部事件時,又有另一外部事件申請中斷,CPU通常會根據(jù)中斷源的緊急程度,將其進行排列,規(guī)定每個中斷源都有一個中斷優(yōu)先級。中斷優(yōu)先級可由硬件排隊或軟件排隊來設定,CPU按其優(yōu)先順序處理中斷源的中斷請求。優(yōu)先級高的事件可以中斷CPU正在處理的低級的中斷服務程序,待完成了高級中斷服務程序之后,再繼續(xù)執(zhí)行被中斷了的低級中斷服務程序,這就是中斷的嵌套。

中斷嵌套系統(tǒng)

中斷源與中斷優(yōu)先級

C51有如下5個中斷源:

? INT0(P3.2)外部中斷0。當IT0(TCON.0)=0時,低電平有效;

當IT0(TCON.0)=1時,下降沿有效。

? INT1(P3.3)外部中斷1。當IT1(TCON.2)=0時,低電平有效;

當IT1(TCON.2)=1時,下降沿有效。

? TF0定時/計數(shù)器T0溢出中斷。

? TF1定時/計數(shù)器T1溢出中斷。

? RX,TX串行中斷。

C52又增加了一個中斷源,即定時/計數(shù)器T2溢出中斷。

C51中斷

中斷優(yōu)先級是在列表越前面的優(yōu)先級又高,表中列出了默認優(yōu)先級,數(shù)字越小的優(yōu)先級越高。當然也可以通過設置改變這個順序。

當然現(xiàn)在新上市的51單片機可能包含更多的中斷源,但是基本的這幾個肯定都有的,其他額外添加的也是大同小異,都能根據(jù)芯片手冊看明白。比如STC89系列單片機就有8個中斷源,如圖:

中斷優(yōu)先級

中斷控制寄存器

51單片機的中斷相關控制寄存器包括了中斷控制寄存器(Interrupt Enable register,IE)和中斷優(yōu)先級控制寄存器(Interrupt Priority register,IP),前者用于對 MCS-51單片機的中斷工作狀態(tài)進行控制,后者用于對MCS-51單片機的中斷優(yōu)先級進行控制。

允許中斷寄存器IE的各位定義如下:

允許中斷寄存器

EA是總中斷允許位。當EA=0時,禁止所有中斷;當EA=1時,每個中斷源是允許還是禁止由各自的允許位確定。

ET2是定時器2中斷允許位。當ET2=0時,禁止定時器2中斷。

ES是串行口中斷允許位。當ES=0時,禁止串行口中斷。

ET1是定時器1中斷允許位。當ET1=0時,禁止定時器1中斷。

EX1是外部中斷1允許位。當EX1=0時,禁止外部中斷1。

ET0是定時器0中斷允許位。當ET0=0時,禁止定時器0中斷。

EX0是外部中斷0允許位。當EX0=0時,禁止外部中斷0。

中斷優(yōu)先級寄存器IP的各位定義如下:

中斷優(yōu)先級寄存器

PT2是定時器2中斷優(yōu)先級設定位。

PS是串行口中斷優(yōu)先級設定位。

PT1是定時器1中斷優(yōu)先級設定位。

PX1是外部中斷1優(yōu)先級設定位。

PT0是定時器0中斷優(yōu)先級設定位。

PX0是外部中斷0優(yōu)先級設定位。

IP寄存器中各位均具有以下特點,即當為0時,為低中斷優(yōu)先級;當為1時,為高中斷優(yōu)先級。系統(tǒng)復位后,IP寄存器中各位均為0,即此時全部設定為低中斷優(yōu)先級。在中斷執(zhí)行過程中,低優(yōu)先級中斷可被高優(yōu)先級中斷所中斷,反之不能。另外,同級的中斷不能互相中斷。當幾個同級的中斷源同時向CPU申請中斷時,CPU按硬件次序排定優(yōu)先權,依次為外部中斷0(INT0)、定時/計數(shù)器T0溢出中斷、外部中斷1(INT1)、定時/計數(shù)器T1溢出中斷、串行口中斷、定時/計數(shù)器T2溢出中斷。

總結(jié)

中斷是我們開發(fā)項目時不可避免的一部分,就像生活中時刻都有可能發(fā)生意外一樣,單片機工作時也可能隨機遇到“意外”,因為單片機開發(fā)出來的產(chǎn)品都是服務于我們生活的,所以在程序設計時我們需要使用中斷系統(tǒng)來完成產(chǎn)品的功能。后面我們在特定案例中再來講解各中斷的使用方法。

51單片機入門基礎知識(三)之中斷系統(tǒng)的評論 (共 條)

分享到微博請遵守國家法律
泰兴市| 元阳县| 长泰县| 岗巴县| 木里| 庐江县| 盈江县| 丽江市| 光泽县| 南陵县| 阿鲁科尔沁旗| 红桥区| 留坝县| 会泽县| 淮北市| 西充县| 河北区| 合水县| 红原县| 龙门县| 三亚市| 临湘市| 乌拉特后旗| 双桥区| 河津市| 天津市| 渝北区| 海晏县| 咸宁市| 北票市| 石屏县| 兴化市| 尖扎县| 奎屯市| 阿拉善左旗| 建瓯市| 马公市| 英吉沙县| 双桥区| 白山市| 景洪市|