單片機(jī)的C語言應(yīng)用設(shè)計(jì)(第四版)馬忠梅答案_第1頁
單片機(jī)的C語言應(yīng)用設(shè)計(jì)(第四版)馬忠梅答案_第2頁
單片機(jī)的C語言應(yīng)用設(shè)計(jì)(第四版)馬忠梅答案_第3頁
單片機(jī)的C語言應(yīng)用設(shè)計(jì)(第四版)馬忠梅答案_第4頁
單片機(jī)的C語言應(yīng)用設(shè)計(jì)(第四版)馬忠梅答案_第5頁
已閱讀5頁,還剩21頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

習(xí)題參考答案(P.204)1.什么是中斷、中斷源和中斷優(yōu)先級(jí)?(見P173,174,175)2.8051中斷有多少優(yōu)先級(jí)答:(見p176)2個(gè)習(xí)題參考答案(P.204)習(xí)題3.

8051中斷的中斷響應(yīng)條件是什么?答:1、中斷寄存器IE中的EA和相應(yīng)的中斷使能位激活;2、CPU沒有在處理同級(jí)或者更高級(jí)的中斷;3、現(xiàn)行執(zhí)行周期是所執(zhí)行指令的最后一個(gè)周期;4、當(dāng)前指令不是RETI或者是訪問IE或IP的指令。4.8051的中斷響應(yīng)過程是怎樣的?答:CPU響應(yīng)中斷后,由硬件自動(dòng)執(zhí)行如下的功能操作:

(1)根據(jù)中斷請求源的優(yōu)先級(jí)高低,對相應(yīng)的優(yōu)先級(jí)狀態(tài)觸發(fā)器置1。

(2)保護(hù)斷點(diǎn),即把程序計(jì)數(shù)器PC的內(nèi)容壓入堆棧保存。

(3)清內(nèi)部硬件可清除的中斷請求標(biāo)志位(IE0、IE1、TF0、TF1)。

(4)把被響應(yīng)的中斷服務(wù)程序入口地址送入PC,從而轉(zhuǎn)入相應(yīng)的中斷服務(wù)程序執(zhí)行。各中斷服務(wù)程序的入口地址見表。BTW:5個(gè)中斷源及入口地址表BTW:5個(gè)中斷源及入口地址表

編號(hào)中斷源入口地址0外部中斷00003H1定時(shí)器/計(jì)數(shù)器0000BH2外部中斷10013H3定時(shí)器/計(jì)數(shù)器1001BH4串行口中斷0023H習(xí)題5.

若8051的外部中斷0為邊沿觸發(fā)方式,簡述IE0標(biāo)志的檢測和置位過程。答:

8051的CPU在每個(gè)機(jī)器周期采樣引腳INT0上的電平,當(dāng)前一個(gè)周期采樣為高,而這個(gè)周期采樣為低,即置位中斷標(biāo)志IE0。同時(shí)8051的CPU在每個(gè)機(jī)器周期還采樣中斷標(biāo)志IE0,如果中斷標(biāo)志IE0被置位,中斷被激活,且沒有中斷阻止條件,則CPU自動(dòng)轉(zhuǎn)向中斷0的入口地址0x0003進(jìn)入中斷服務(wù)程序。習(xí)題6.

8051的中斷系統(tǒng)如何實(shí)現(xiàn)兩級(jí)中斷嵌套?答:

可以利用寄存器IP通過設(shè)置不同中斷的優(yōu)先級(jí),或者利用中斷的自然優(yōu)先級(jí)實(shí)現(xiàn)兩級(jí)中斷嵌套。當(dāng)單片機(jī)處理一個(gè)中斷的時(shí)候,可以再去響應(yīng)高優(yōu)先級(jí)的中斷,或者自然優(yōu)先級(jí)較高的中斷。但不能去響應(yīng)同級(jí)或者更低的中斷。(P176)習(xí)題9.

8051中斷程序如何進(jìn)行現(xiàn)場保護(hù)?何為上下文切換?答:

中斷通過把保存有現(xiàn)場數(shù)據(jù)的寄存器壓入堆棧進(jìn)行現(xiàn)場保護(hù)。

當(dāng)一個(gè)特定任務(wù)正在執(zhí)行時(shí),可能有更緊急的事需要引起CPU的注意。在一個(gè)具有優(yōu)先級(jí)的系統(tǒng)中,CPU不是等待第一個(gè)任務(wù)完成,而是假定前一個(gè)任務(wù)已經(jīng)完成,立即處理新的任務(wù)。若程序流程立刻轉(zhuǎn)向新任務(wù),則新任務(wù)使用的各個(gè)寄存器將會(huì)破壞第一個(gè)任務(wù)使用的中間信息。但第一個(gè)任務(wù)恢復(fù)運(yùn)行時(shí),寄存器的值將不再可靠而導(dǎo)致錯(cuò)誤的發(fā)生。解決問題的方法是每次發(fā)生任務(wù)的切換時(shí)執(zhí)行一些指令進(jìn)行現(xiàn)場保護(hù)和現(xiàn)場恢復(fù),這就是上下文切換。p17910.8051定時(shí)器方式和計(jì)數(shù)器方式的區(qū)別是什么?

基本的8051有2個(gè)可編程的16位定時(shí)器/計(jì)數(shù)器(各工作方式只是用到哪些位?)。

計(jì)數(shù)器內(nèi)部晶振驅(qū)動(dòng)-------定時(shí)器;

計(jì)數(shù)8051的輸入引腳的脈沖信號(hào)----計(jì)數(shù)器。定時(shí)器實(shí)際上也是工作在計(jì)數(shù)方式下的。解.1.50Hz的方波即周期為20ms的方波,要求定時(shí)間隔為10ms,每次時(shí)間到時(shí),P1.6腳取反。定時(shí)器計(jì)數(shù)頻率為fosc/12=500kHz其周期即單片機(jī)的機(jī)器周期為12/fosc=2us計(jì)數(shù)周期10ms需要計(jì)數(shù)10ms/2us=5000次計(jì)數(shù)器向上計(jì)數(shù)需要的初值為65536-5000習(xí)題14.設(shè)fosc=6MHz,利用定時(shí)器0的方式1在P1.6口產(chǎn)生一串50Hz的方波。定時(shí)器溢出時(shí)采用中斷方式處理。(1.設(shè)計(jì)分析;2.流程;3.注釋)主程序TMODTMOD=0x01DTH0,TL0裝初值DEA,ET0,TR0置1TMODP1_6=!P1_6TMOD等待中斷DTH0,TL0裝初值T0中斷主程序流程中斷服務(wù)程序流程TMOD返回#include

<reg51.h>sbit

P1_6=P1^6;void

timer0()interrupt

1

using

1{TH0=65536-5000/256;

TL0=65536-5000%256;P1_6=!P1_6; //取反}void

main(){TMOD=0x01; //T0方式1TH0=65536-5000/256;

TL0=65536-5000%256;EA=1; //開總中斷

ET0=1; //使能T0中斷

TR0=1; //啟動(dòng)T0

while(1); //等待}15.用8751制作一個(gè)模擬航標(biāo)燈,燈接在p1.7口上,INT0接光敏元件。使它具有如下功能:白天航標(biāo)燈熄滅;夜間間歇發(fā)光,亮2S,滅2S,周而復(fù)始。將信號(hào)作門控信號(hào),啟動(dòng)定時(shí)器定時(shí)。按以上要求編寫控制主程序和中斷服務(wù)程序。解一:設(shè)INT0口高電平時(shí)表示白天,低電平時(shí)表示黑夜,查詢方式。采用定時(shí)器T0,工作方式1,外接晶振6MHz。定時(shí)100ms,20次中斷就是2s。產(chǎn)生100ms中斷需要100000/2=50000個(gè)計(jì)數(shù)。當(dāng)2s到了,就改變P1.7狀態(tài),控制LED燈。主程序和中斷服務(wù)程序流程圖分別如下:T0裝初值overflow_count++返回#include

<reg51.h>sbitLED=P1^7;/*P1.7電平控制燈亮燈滅,高電平燈亮*/sbitdark=P3^2;/*通過P3.2腳INT0判斷白天黑夜,INT0低電平表黑夜*/staticunsignedlongoverflow_count=0;void

timer0()interrupt

1

using

0{TH0=(65536-50000)/256;

TL0=(65536-50000)%256;overflow_count++;}void

main(){

TMOD=0x01; //T0方式1

TH0=(65536-50000)/256;//T0裝初值

TL0=(65536-50000)%256;EA=1;ET0=1;TR0=1; //使用T0中斷do{

while(!dark)//LED晚上閃爍 { if(overflow_count==20)//100ms*20=2s { overflow_count=0;

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論