第五章 MCS 51的中斷系統

2021-10-11 02:25:13 字數 3161 閱讀 3210

p.s:沒有總結「【第四章】mcs-51微控制器程式設計」,這章很重要,但主要是需要把ppt上的所有例題給看明白,知識點都包含在例題裡了。

突然想記錄一下複習順序:知識點——做往年題——拐回來做知識點題——複習實驗

2. 微控制器的中斷處理過程

中斷源位址

外部中斷0(int0)

0003h

定時器0(t0)

000bh

外中斷1(int1)

0013h

定時器1(t1)

001bh

序列口0023h

這個圖很重要!

位名稱tf1

tr1tf0

tr0ie1

it1ie0

it0(1)各位的作用:

it0、it1:控制位,軟體置1或清0

it0/it1=1時,表示加到引腳int0/int1的外中斷訊號為下降沿觸發;

it0/it1=0時,表示加到引腳int0/int1的外中斷訊號為低電平觸發。

ie0、ie1:狀態位,硬體自動置1或清0

當外中斷到來時,硬體自動置1;cpu相應該中斷轉向中斷服務子程式時,硬體自動清0。

tf0、tf1:狀態位,硬體自動置1或清0,也可由軟體清0

定時器/計數器溢位中斷標誌位,為1表示有溢位產生。

tr0、tr1:控制位,軟體置1或清0

為0表示停止定時器/計數器工作;

為1表示開啟定時器/計數器工作。

scon

d7d6

d5d4

d3d2

d1d0

位名稱ti

ri(1)各位作用:

ti:標誌位,硬體自動置1,但必須由指令手動清0

序列口傳送中斷請求標誌位

ri:標誌位,硬體自動置1,但必須由指令手動清0

序列口接收中斷請求標誌位

d0位名稱

eaes

et1ex1

et0ex0

(1)各位作用:

全部都是控制位,控制中斷的開閉,由軟體手動置1或清0來控制中斷的開閉。

ex0、ex1:

外中斷0/外中斷1允許

et0、et1:

定時器/計數器0、定時器/計數器1中斷允許

es:序列口中斷允許

ea:cpu中斷允許

ipd7

d6d5

d4d3

d2d1

d0位名稱

pspt1

px1pt0

px0(1)各位作用:

全部都是控制位,控制中斷的優先順序,由軟體手動置1或清0來控制中斷的開閉。

注意:有2個優先順序

從d0到d4分別是:外中斷0優先順序、定時器/計數器0優先順序、外中斷1優先順序、定時器/計數器1優先順序、序列口優先順序。

(2)預設優先順序:

外中斷0>定時器0>外中斷1>定時器1>序列口

(3)回顧第三章的reti

第三章講了ret和reti的區別:

指令執行過程

ret取出棧頂單元內容放入pc高八位,sp-1,取出棧頂單元內容放入pc低8位,sp-1

reti

除了執行ret相同功能外,還清除中斷響應時ip暫存器中被置1的px0、pt0、px1、pt1、ps

硬體根據中斷源的型別自動生成一條長呼叫指令lcall addr16。

注:addr16為程式儲存器中相應的中斷入口位址

cpu執行lcall addr16

注:(1) 將pc的內容壓入堆疊,以保護斷點 ;

(2) 將中斷入口位址裝入pc,使程式轉向響應中斷請求的中斷入口位址。

cpu正在處理同級的或更高優先順序的中斷

查詢到中斷請求的機器週期不是當前正在執行指令的最後乙個機器週期

解釋:只有當前指令執行完畢後,才能響應中斷請求,以確保當前指令完整的執行。

正在執行的指令是reti或是訪問ie或ip的指令

mcs-51中斷系統規定,在執行完上述指令後,需要再去執行完一條指令,才能響應新的中斷請求。

結論:3—8個機器週期

解釋:

最短3個機器週期:

當查詢到中斷請求的機器週期是當前正在執行的指令(不是reti)的最後乙個機器週期時,執行完該指令還需自動執行一條lcall addr16,需要兩個機器週期,1+2=3

最長8個機器週期:

當查詢到中斷請求的機器週期時,正處於reti指令的第乙個機器週期,此時需要先將reti指令執行完(+2),然後再去執行一條mul/div指令(+4),然後再執行lcall addr16(+2),2+4+2=8

1、定時器0和定時器1中斷——tf0、tf1

cpu在響應中斷後用硬體自動清除有關的中斷請求標誌tf0 或tf1。

2、邊沿觸發的外部中斷——ie0、ie1

在硬體cpu在響應中斷後用硬體自動清除有關的中斷請求標誌ie0或ie1。

3、電平觸發的外部中斷

在硬體上cpu對int0、int1沒有控制,因此必須另外採取措施—加外部硬體控制和軟體程式設計。

4、序列口中斷——ti、ri

cpu在響應中斷後沒有用硬體自動清除中斷請求標誌ri和ti,必須在中斷服務程式中用軟體清除之,以撤除中斷請求。

MCS 51 微控制器的中斷系統

mcs 51 微控制器的中斷系統 mcs 51中斷系統 5個中斷源 兩個外部中斷,兩個定時器,乙個串列埠 2個優先順序 中斷 當cpu正在處理某件事情時,微控制器外部或內部發生的某一緊急事件請求cpu立即去處理,於是,cpu暫時中止當前的工作,轉去處理這個緊急事件,待處理完畢後,再回到原來被中止的地...

第五章 5 1節練習

練習5.1 什麼是空語句?什麼時候會用到空語句?解答 引用 空語句就是含有乙個單獨分號的語句。引用 如果在程式的某個地方,語法上需要一條語句但是邏輯上不需要,此時應該使用空語句。練習5.2 什麼是塊?什麼時候會用到塊?解答 引用 復合語句是指用花括號括起來的語句和宣告的序列,復合語句也被稱作塊。引用...

第五章儲存體系5 1

按儲存介質分類 半導體儲存器 磁儲存器 紙帶儲存器和光儲存器。按訪問方式分類 可以分為隨機儲存器 唯讀儲存器 相聯儲存器 順序儲存器和直接儲存器。隨機儲存器 ram 可以讀取也可以寫入,但是在斷電後不能繼續儲存。唯讀儲存器 rom 一種只能讀出不能寫入的儲存器,即預先一次性寫入的儲存器,在斷電後也能...