89c51單片機(jī)李朝青版課后習(xí)題答案五_第1頁(yè)
89c51單片機(jī)李朝青版課后習(xí)題答案五_第2頁(yè)
89c51單片機(jī)李朝青版課后習(xí)題答案五_第3頁(yè)
89c51單片機(jī)李朝青版課后習(xí)題答案五_第4頁(yè)
89c51單片機(jī)李朝青版課后習(xí)題答案五_第5頁(yè)
已閱讀5頁(yè),還剩1頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、單片機(jī)原理及接口技術(shù)課后習(xí)題答案 李朝青第五章1、什么是中斷和中斷系統(tǒng)?其主要功能是什么?答:當(dāng)cpu正在處理某件事情的時(shí)候,外部發(fā)生的某一件事件請(qǐng)求cpu迅速去處理,于是,cpu暫時(shí)中止當(dāng)前的工作,轉(zhuǎn)去處理所發(fā)生的事件,中斷服務(wù)處理完該事件以后,再回到原來(lái)被終止的地方,繼續(xù)原來(lái)的工作。這種過(guò)程稱為中斷,實(shí)現(xiàn)這種功能的部件稱為中斷系統(tǒng)。功能:(1) 使計(jì)算機(jī)具有實(shí)時(shí)處理能力,能對(duì)外界異步發(fā)生的事件作出及時(shí)的處理(2) 完全消除了cpu在查詢方式中的等待現(xiàn)象,大大提高了cpu的工作效率(3) 實(shí)現(xiàn)實(shí)時(shí)控制2、試編寫(xiě)一段對(duì)中斷系統(tǒng)初始化的程序,使之允許int0,int1,to,串行口中斷,且使t0

2、中斷為高優(yōu)先級(jí)中斷。解:mov ie,#097h mov ip,#02h3、在單片機(jī)中,中斷能實(shí)現(xiàn)哪些功能?答:有三種功能:分時(shí)操作,實(shí)時(shí)處理,故障處理4、89c51共有哪些中斷源?對(duì)其中端請(qǐng)求如何進(jìn)行控制?答:(1)89c51有如下中斷源:外部中斷0請(qǐng)求,低電平有效:外部中斷1請(qǐng)求,低電平有效t0:定時(shí)器、計(jì)數(shù)器0溢出中斷請(qǐng)求t1:定時(shí)器、計(jì)數(shù)器1溢出中斷請(qǐng)求tx/rx:串行接口中斷請(qǐng)求(2)通過(guò)對(duì)特殊功能寄存器tcon、scon、ie、ip的各位進(jìn)行置位或復(fù)位等操作,可實(shí)現(xiàn)各種中斷控制功能5、什么是中斷優(yōu)先級(jí)?中斷優(yōu)先處理的原則是什么?答:中斷優(yōu)先級(jí)是cpu相應(yīng)中斷的先后順序。原則:(1)

3、 先響應(yīng)優(yōu)先級(jí)高的中斷請(qǐng)求,再響應(yīng)優(yōu)先級(jí)低的(2) 如果一個(gè)中斷請(qǐng)求已經(jīng)被響應(yīng),同級(jí)的其它中斷請(qǐng)求將被禁止(3) 如果同級(jí)的多個(gè)請(qǐng)求同時(shí)出現(xiàn),則cpu通過(guò)內(nèi)部硬件查詢電路,按查詢順序確定應(yīng)該響應(yīng)哪個(gè)中斷請(qǐng)求查詢順序:外部中斷0定時(shí)器0中斷外部中斷1定時(shí)器1中斷串行接口中斷6、說(shuō)明外部中斷請(qǐng)求的查詢和響應(yīng)過(guò)程。答:當(dāng)cpu執(zhí)行主程序第k條指令,外設(shè)向cpu發(fā)出中斷請(qǐng)求,cpu接到中斷請(qǐng)求信號(hào)并在本條指令執(zhí)行完后,中斷主程序的執(zhí)行并保存斷點(diǎn)地址,然后轉(zhuǎn)去響應(yīng)中斷。cpu在每個(gè)s5p2期間順序采樣每個(gè)中斷源,cpu在下一個(gè)機(jī)器周期s6期間按優(yōu)先級(jí)順序查詢中斷標(biāo)志,如果查詢到某個(gè)中斷標(biāo)志為1,將在接下

4、來(lái)的機(jī)器周期s1期間按優(yōu)先級(jí)進(jìn)行中斷處理,中斷系統(tǒng)通過(guò)硬件自動(dòng)將相應(yīng)的中斷矢量地址裝入pc,以便進(jìn)入相應(yīng)的中斷服務(wù)程序。中斷服務(wù)完畢后,cpu返回到主程序第k+1條指令繼續(xù)執(zhí)行。7、89c51在什么條件下可響應(yīng)中斷?答:(1) 有中斷源發(fā)出中斷請(qǐng)求(2) 中斷中允許位ea=1.即cpu開(kāi)中斷(3) 申請(qǐng)中斷的中斷源的中斷允許位為1,即中斷沒(méi)有被屏蔽(4) 無(wú)同級(jí)或更高級(jí)中斷正在服務(wù)(5) 當(dāng)前指令周期已經(jīng)結(jié)束(6) 若現(xiàn)行指令為reti或訪問(wèn)ie或ip指令時(shí),該指令以及緊接著的另一條指令已執(zhí)行完畢8、簡(jiǎn)述89c51單片機(jī)的中斷響應(yīng)過(guò)程。答:cpu在每個(gè)機(jī)器周期s5p2期間順序采樣每個(gè)中斷源,c

5、pu在下一個(gè)機(jī)器周期s6期間按優(yōu)先級(jí)順序查詢中斷標(biāo)志,如查詢到某個(gè)中斷標(biāo)志為1,將在接下來(lái)的機(jī)器周期s1期間按優(yōu)先級(jí)進(jìn)行中斷處理,中斷系統(tǒng)通過(guò)硬件自動(dòng)將相應(yīng)的中斷矢量地址裝入pc,以便進(jìn)入相應(yīng)的中斷服務(wù)程序。一旦響應(yīng)中斷,89c51首先置位相應(yīng)的中斷“優(yōu)先級(jí)生效”觸發(fā)器,然后由硬件執(zhí)行一條長(zhǎng)調(diào)用指令,把當(dāng)前的pc值壓入堆棧,以保護(hù)斷點(diǎn),再將相應(yīng)的中斷服務(wù)的入口地址送入pc,于是cpu接著從中斷服務(wù)程序的入口處開(kāi)始執(zhí)行。對(duì)于有些中斷源,cpu在響應(yīng)中斷后會(huì)自動(dòng)清除中斷標(biāo)志。9、在89c51內(nèi)存中,應(yīng)如何安排程序區(qū)?答:主程序一般從0030h開(kāi)始,主程序后一般是子程序及中斷服務(wù)程序。在這個(gè)大家還要

6、清除各個(gè)中斷的中斷矢量地址。10、試述中斷的作用及中斷的全過(guò)程。答:作用:對(duì)外部異步發(fā)生的事件作出及時(shí)的處理 過(guò)程:中斷請(qǐng)求,中斷響應(yīng),中斷處理,中斷返回11、當(dāng)正在執(zhí)行某一個(gè)中斷源的中斷服務(wù)程序時(shí),如果有新的中斷請(qǐng)求出現(xiàn),試問(wèn)在什么情況下可響應(yīng)新的中斷請(qǐng)求?在什么情況下不能響應(yīng)新的中斷請(qǐng)求?答:(1)符合以下6個(gè)條件可響應(yīng)新的中斷請(qǐng)求:a) 有中斷源發(fā)出中斷請(qǐng)求b) 中斷允許位ea=1,即cpu開(kāi)中斷c) 申請(qǐng)中斷的中斷源的中斷允許位為1,即中斷沒(méi)有被屏蔽d) 無(wú)同級(jí)或更高級(jí)中斷正在被服務(wù)e) 當(dāng)前的指令周期已結(jié)束f) 若現(xiàn)行指令為reti或訪問(wèn)ie或ip指令時(shí),該指令以及緊接著的另一條指令

7、已被執(zhí)行完12、89c51單片機(jī)外部中斷源有幾種觸發(fā)中斷請(qǐng)求的方法?如何實(shí)現(xiàn)中斷請(qǐng)求?答:有兩種方式:電平觸發(fā)和邊沿觸發(fā)電平觸發(fā)方式:cpu在每個(gè)機(jī)器周期的s5p2期間采樣外部中斷引腳的輸入電平。若為低電平,使ie1(ie0)置“1”,申請(qǐng)中斷;若為高電平,則ie1(ie0)清零。邊沿觸發(fā)方式:cpu在每個(gè)機(jī)器周期s5p2期間采樣外部中斷請(qǐng)求引腳的輸入電平。如果在相繼的兩個(gè)機(jī)器周期采樣過(guò)程中,一個(gè)機(jī)器周期采樣到外部中斷請(qǐng)求為高電平,接著下一個(gè)機(jī)器周期采樣到外部中斷請(qǐng)求為低電平,則使ie1(ie0)置“1”申請(qǐng)中斷;否則,ie1(ie0)置0。13、89c51單片機(jī)有五個(gè)中斷源,但只能設(shè)置兩個(gè)中

8、斷優(yōu)先級(jí),因此,在中斷優(yōu)先級(jí)安排上受到一定的限制。試問(wèn)以下幾種中斷優(yōu)先順序的安排(級(jí)別由高到低)是否可能:若可能,則應(yīng)如何設(shè)置中斷源的中斷級(jí)別:否則,請(qǐng)簡(jiǎn)述不可能的理由。 定時(shí)器0,定時(shí)器1,外中斷0,外中斷1,串行口中斷。 可以,mov ip,#0ah 串行口中斷,外中斷0,定時(shí)器0,外中斷1,定時(shí)器1。 可以,mov ip,#10h 外中斷0,定時(shí)器1,外中斷1,定時(shí)器0,串行口中斷。 不可以,只能設(shè)置一級(jí)高級(jí)優(yōu)先級(jí),如果將int0,t1設(shè)置為高級(jí),而t0級(jí)別高于int1. 外中斷0,外中斷1,串行口中斷,定時(shí)器0,定時(shí)器1。 可以,mov ip,#15h 串行口中斷,定時(shí)器0,外中斷0,

9、外中斷1,定時(shí)器1。不可以 外中斷0,外中斷1,定時(shí)器0,串行口中斷,定時(shí)器1。不可以 外中斷0,定時(shí)器1,定時(shí)器0,外中斷1,串行口中斷。可以,mov ip,#09h14、89c51各中斷源的中斷標(biāo)志是如何產(chǎn)生的?又是如何清0的?cpu響應(yīng)中斷時(shí),中斷入口地址各是多少?答:各中斷標(biāo)志的產(chǎn)生和清“0”如下:(1) 外部中斷類外部中斷是由外部原因引起的,可以通過(guò)兩個(gè)固定引腳,即外部中斷0和外部中斷1輸入信號(hào)。外部中斷0請(qǐng)求信號(hào),由p3.2腳輸入。通過(guò)it0來(lái)決定中斷請(qǐng)求信號(hào)是低電平有效還是下跳變有效。一旦輸入信號(hào)有效,則向cpu申請(qǐng)中斷,并且使ie0=1。硬件復(fù)位。外部中斷1請(qǐng)求信號(hào),功能與用法

10、類似外部中斷0(2) 定時(shí)中斷類定時(shí)中斷是為滿足定時(shí)或計(jì)數(shù)溢出處理需要而設(shè)置的。當(dāng)定時(shí)器/計(jì)數(shù)器中的計(jì)數(shù)結(jié)構(gòu)發(fā)生計(jì)數(shù)溢出的,即表明定時(shí)時(shí)間到或計(jì)數(shù)值已滿,這時(shí)就以計(jì)數(shù)溢出信號(hào)作為中斷請(qǐng)求,去置位一個(gè)溢出標(biāo)志位。這種中斷請(qǐng)求是在單片機(jī)芯片內(nèi)部發(fā)生的,無(wú)需在芯片上設(shè)置引入端,但在計(jì)數(shù)方式時(shí),中斷源可以由外部引入。tf0:定時(shí)器t0溢出中斷請(qǐng)求。當(dāng)定時(shí)器t0產(chǎn)生溢出時(shí),定時(shí)器t0請(qǐng)求標(biāo)志tf0=1,請(qǐng)求中斷處理。使用中斷時(shí)由硬件復(fù)位,在查詢方式下可由軟件復(fù)位。tf1:定時(shí)器t1溢出中斷請(qǐng)求。功能與用法類似定時(shí)器t0(3) 串行口中斷類串行口中斷是為串行數(shù)據(jù)的傳送需要而設(shè)置的。串行中斷請(qǐng)求也是在單片機(jī)

11、芯片內(nèi)部發(fā)生的,但當(dāng)串行口作為接收端時(shí),必須有一完整的串行幀數(shù)據(jù)從ri端引入芯片,才可能引發(fā)中斷。ri或ti:串行口中斷請(qǐng)求。當(dāng)接收或發(fā)送一串幀數(shù)據(jù)時(shí),使內(nèi)部串行口中斷請(qǐng)求標(biāo)志ri或ti=1,并請(qǐng)求中斷。響應(yīng)后必須軟件復(fù)位。 cpu響應(yīng)中斷時(shí),中斷入口地址如下: 中斷源 入口地址外部中斷0 0003h定時(shí)器t0中斷000bh外部中斷1 0013h定時(shí)器t1中斷001bh串行口中斷 0023h15、中斷響應(yīng)時(shí)間是否為確定不變的?為什么?答:中斷響應(yīng)時(shí)間不是確定不變的。由于cpu不是在任何情況下對(duì)中斷請(qǐng)求都予以響應(yīng)的;此外,不同的情況對(duì)中斷響應(yīng)的時(shí)間也是不同的。下面以外部中斷為例,說(shuō)明中斷響應(yīng)的時(shí)

12、間。在每個(gè)機(jī)器周期的s5p2期間,端的電平被所存到tcon的ie0位,cpu在下一個(gè)機(jī)器周期才會(huì)查詢這些值。這時(shí)滿足中斷響應(yīng)條件,下一條要執(zhí)行的指令將是一條硬件長(zhǎng)調(diào)用指令“l(fā)call”,使程序轉(zhuǎn)入中斷矢量入口。調(diào)用本身要用2個(gè)機(jī)器周期,這樣,從外部中斷請(qǐng)求有效到開(kāi)始執(zhí)行中斷服務(wù)程序的第一條指令,至少需要3個(gè)機(jī)器周期,這是最短的響應(yīng)時(shí)間。如果遇到中斷受阻的情況,這中斷響應(yīng)時(shí)間會(huì)更長(zhǎng)一些。例如,當(dāng)一個(gè)同級(jí)或更高級(jí)的中斷服務(wù)程序正在進(jìn)行,則附加的等待時(shí)間取決于正在進(jìn)行的中斷服務(wù)程序:如果正在執(zhí)行的一條指令還沒(méi)有進(jìn)行到最后一個(gè)機(jī)器周期,附加的等待時(shí)間為13個(gè)機(jī)器周期;如果正在執(zhí)行的是reti指令或者訪

13、問(wèn)ie或ip的指令,則附加的等待時(shí)間在5個(gè)機(jī)器周期內(nèi)。若系統(tǒng)中只有一個(gè)中斷源,則響應(yīng)時(shí)間為38個(gè)機(jī)器周期。16、中斷響應(yīng)過(guò)程中,為什么通常要保護(hù)現(xiàn)場(chǎng)?如何保護(hù)?答:因?yàn)橐话阒鞒绦蚝椭袛喾?wù)程序都可能會(huì)用到累加器,psw寄存器及其他一些寄存器。cpu在進(jìn)入中斷服務(wù)程序后,用到上述寄存器時(shí),就會(huì)破壞它原來(lái)存在寄存器中的內(nèi)容;一旦中斷返回,將會(huì)造成主程序的混亂。因而在進(jìn)入中斷服務(wù)程序后,一般要先保護(hù)現(xiàn)場(chǎng),然后再執(zhí)行中斷處理程序,在返回主程序以前再恢復(fù)現(xiàn)場(chǎng)。保護(hù)方法一般是把累加器、psw寄存器及其他一些與主程序有關(guān)的寄存器壓入堆棧。在保護(hù)現(xiàn)場(chǎng)和恢復(fù)現(xiàn)場(chǎng)時(shí),為了不使現(xiàn)場(chǎng)受到破壞或者造成混亂,一般規(guī)定此時(shí)

14、cpu不響應(yīng)新的中斷請(qǐng)求。這就要求在編寫(xiě)中斷服務(wù)程序時(shí),注意在保護(hù)現(xiàn)場(chǎng)之前要關(guān)中斷,在恢復(fù)現(xiàn)場(chǎng)之后開(kāi)中斷。如果在中斷處理時(shí)允許有更高級(jí)的中斷打斷它,則在保護(hù)現(xiàn)場(chǎng)之后再開(kāi)中斷,恢復(fù)現(xiàn)場(chǎng)之前關(guān)中斷。17、清敘述中斷響應(yīng)的cpu操作過(guò)程,為什么說(shuō)中斷操作是一個(gè)cpu的微查詢過(guò)程?答:在中斷響應(yīng)中,cpu要完成以下自主操作過(guò)程:a) 置位相應(yīng)的優(yōu)先級(jí)狀態(tài)觸發(fā)器,以標(biāo)明所響應(yīng)中斷的優(yōu)先級(jí)別b) 中斷源標(biāo)志清零(ti、ri除外)c) 中斷斷點(diǎn)地址裝入堆棧保護(hù)(不保護(hù)psw)d) 中斷入口地址裝入pc,以便使程序轉(zhuǎn)到中斷入口地址處在計(jì)算機(jī)內(nèi)部,中斷表現(xiàn)為cpu的微查詢操作。89c51單片機(jī)中,cpu在每個(gè)機(jī)器周期的s6狀態(tài),查詢中斷源,并按優(yōu)先級(jí)管理規(guī)則處理同時(shí)請(qǐng)求的中斷源,且在下一個(gè)機(jī)器周期的s1狀態(tài)中,響應(yīng)最高級(jí)中斷請(qǐng)求。但是以下情況除外:a) cpu正在處理相同或更高優(yōu)先級(jí)中斷b) 多機(jī)器周期指令中,還未執(zhí)行到最后一個(gè)機(jī)器周期c) 正在執(zhí)行中斷系統(tǒng)的sfr操作,如reti指令及訪問(wèn)ie、ip等操作時(shí),要延后一條指令18、在中斷請(qǐng)求有效并開(kāi)中斷狀況下,能否保證立即響應(yīng)中斷?有什么條件?答:在中斷請(qǐng)求有效并開(kāi)

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論