單片機(jī)原理及應(yīng)用課后答案_第1頁
單片機(jī)原理及應(yīng)用課后答案_第2頁
單片機(jī)原理及應(yīng)用課后答案_第3頁
已閱讀5頁,還剩12頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、第一章單片機(jī)概述1.2除了單片機(jī)這一名稱之外,單片機(jī)還可稱為(微控制器)和(嵌入式控制器)。1.3單片機(jī)與普通計算機(jī)的不同之處在于其將(微處理器)、(存儲器)和(各種輸入輸出接口)三部分集成于一塊芯片上。4、單片機(jī)的發(fā)展大致分為哪幾個階段?答:單片機(jī)的發(fā)展歷史可分為四個階段:第一階段( 1974年-1976年):單片機(jī)初級階段。第二階段( 1976年-1978年):低性能單片機(jī)階段。第三階段( 1978年-現(xiàn)在):高性能單片機(jī)階段。第四階段( 1982年-現(xiàn)在): 8 位單片機(jī)鞏固發(fā)展及16 位單片機(jī)、 32位單片機(jī)推出階段1.5單片機(jī)根據(jù)其基本操作處理的位數(shù)可分為哪幾種類型?答:單片機(jī)根據(jù)其

2、基本操作處理的位數(shù)可分為:1 位單片機(jī)、 4 位單片機(jī)、 8 位單片機(jī)、 16位單片機(jī)和32 位單片機(jī)。1.6 MCS-51 系列單片機(jī)的基本芯片分別為哪幾種?它們的差別是什么?答:基本芯片為8031、8051、8751。8031 內(nèi)部包括1 個 8 位 cpu、128BRAM , 21 個特殊功能寄存器(SFR)、 4 個 8 位并行I/O 口、 1 個全雙工串行口,2 個 16 位定時器 /計數(shù)器,但片內(nèi)無程序存儲器,需外擴(kuò)EPROM芯片。8051 是在 8031 的基礎(chǔ)上,片內(nèi)又集成有4KBROM ,作為程序存儲器,是1 個程序不超過 4KB 的小系統(tǒng)。8751 是在 8031 的基礎(chǔ)上

3、,增加了4KB 的 EPROM,它構(gòu)成了1 個程序小于4KB 的小系統(tǒng)。用戶可以將程序固化在EPROM 中,可以反復(fù)修改程序。1.7 MCS-51 系列單片機(jī)與80C51 系列單片機(jī)的異同點是什么?答:共同點為它們的指令系統(tǒng)相互兼容。不同點在于MCS-51 是基本型,而80C51 采用 CMOS工藝,功耗很低,有兩種掉電工作方式,一種是CPU 停止工作,其它部分仍繼續(xù)工作;另一種是,除片內(nèi)RAM繼續(xù)保持?jǐn)?shù)據(jù)外,其它部分都停止工作。1.8 8051 與 8751 的區(qū)別是( C)(A )內(nèi)部數(shù)據(jù)存儲單元數(shù)目的不同(B)內(nèi)部數(shù)據(jù)存儲器的類型不同(C)內(nèi)部程序存儲器的類型不同(D)內(nèi)部的寄存器的數(shù)目

4、不同1.9在家用電器中使用單片機(jī)應(yīng)屬于微型計算機(jī)的(B)(A )輔助設(shè)計應(yīng)用( B)測量、控制應(yīng)用(C)數(shù)值計算應(yīng)用( D )數(shù)據(jù)處理應(yīng)用1.10說明單片機(jī)主要應(yīng)用在哪些領(lǐng)域?答:單片機(jī)主要運用領(lǐng)域為:工業(yè)自動化;智能儀器儀表;消費類電子產(chǎn)品;通信方面;武器裝備;終端及外部設(shè)備控制;多機(jī)分布式系統(tǒng)。第二章MCS-51單片機(jī)的硬件結(jié)構(gòu)2.1 MCS-51 單片機(jī)的片內(nèi)都集成了哪些功能部件?各個功能部件的最主要的功能是什么?答:功能部件如下:微處理器(CPU);數(shù)據(jù)存儲器( RAM );程序存儲器(ROM/EPROM ,8031 沒有此部件), 4 個 8 位并行I/O 口( P0 口、 P1 口

5、、 P2 口、 P3 口); 1 個全雙工的串行口;2 個 16 位定時器 /計數(shù)器;中斷系統(tǒng);21 個特殊功能寄存器(SFR)。各部件功能: CPU(微處理器)包括了運算器和控制器兩大部分,還增加了面向控制的處理功能,不僅可處理字節(jié)數(shù)據(jù),還可以進(jìn)行位變量的處理;數(shù)據(jù)存儲器(RAM )片內(nèi)為128B(52 系列的為256B),片外最多可外擴(kuò)64KB 。數(shù)據(jù)存儲器來存儲單片機(jī)運行期間的工作變量、運算的中間結(jié)果、數(shù)據(jù)暫存和緩沖、標(biāo)志位等;程序存儲器(ROM/EPROM )用來存儲程序;中斷系統(tǒng)具有5 個中斷源, 2 級中斷優(yōu)先權(quán);定時器/計數(shù)器用作精確的定時,或?qū)ν獠渴录M(jìn)行計數(shù);串行口可用來進(jìn)行

6、串行通信,擴(kuò)展并行I/O 口,還可以與多個單片機(jī)相連構(gòu)成多機(jī)系統(tǒng),從而使單片機(jī)的功能更強(qiáng)且應(yīng)用更廣;特殊功能寄存器用于CPU 對片內(nèi)各功能部件進(jìn)行管理、控制、監(jiān)視。2.2說明 MCS-51 單片機(jī)的引腳EA 的作用,該引腳接高電平和接低電平時各有何種功能?答:當(dāng)該引腳為高電平時,單片機(jī)訪問片內(nèi)程序存儲器,但在PC(程序計數(shù)器)值超過0FFFH(對于8051、8751)時,即超出片內(nèi)程序存儲器的4KB 地址范圍時,將自動轉(zhuǎn)向執(zhí)行外部程序存儲器內(nèi)的程序。當(dāng)該引腳為低電平時,單片機(jī)則只訪問外部程序存儲器,不論是否有內(nèi)部程序存儲器。對于 8031 來說,因其無內(nèi)部程序存儲器,所以該引腳必須接地,這樣只

7、能選擇外部程序存儲器。2.3 MCS-51 的時鐘振蕩周期和機(jī)器周期之間有何關(guān)系?答:每12 個時鐘周期為1 個機(jī)器周期。2.4 在 MCS-51單片機(jī)中,如果采用6 MHZ晶振, 1 個機(jī)器周期為( 2 微秒)。2.5 程序存儲器的空間里,有5 個單元是特殊的,這5 個單元對應(yīng)MCS-51 單片機(jī)5 個中斷源的中斷入口地址,請寫出這些單元的地址以及對應(yīng)的中斷源。答:中斷源入口地址外部中斷 00003H定時器0(T0)000BH外部中斷 10013H定時器1(T1)001BH串行口0023H2.6內(nèi)部 RAM中,位地址為30H 的位,該位所在字節(jié)的字節(jié)地址為(26H)。2.7若 A 中的內(nèi)容為

8、63H,那么, P 標(biāo)志位的值為( 0)。2.8判斷下列說法是否正確:( A )8031 的 CPU 是由 RAM 和 EPROM 所組成。(錯)( B)區(qū)分片外程序存儲器和片外數(shù)據(jù)存儲器的最可靠的方法是看其位于地址范圍的低端還是高端。(錯)(C)在MCS-51 中,為使準(zhǔn)雙向的I/O 口工作在輸入方式,必須保證它被事先預(yù)置為1。(對)(D)PC 可以看成是程序存儲器的地址指針。(對)2.98031 單片機(jī)復(fù)位后, R4 所對應(yīng)的存儲單元的地址為(04H),因上電時PSW=(00H)。這時當(dāng)前的工作寄存器區(qū)是(0)組工作寄存器區(qū)。2.10什么是機(jī)器周期? 1 個機(jī)器周期的時序是如何來劃分的?如

9、果采用12MHZ晶振, 1 個機(jī)器周期為多長時間?答: CPU 完成一個基本操作所需要的時間稱為機(jī)器周期。時序劃分:一個機(jī)器周期包括12個時鐘周期,分為6 個狀態(tài); S1-S6。每個狀態(tài)又分為 2拍; P1 和 P2。因此, 1 個機(jī)器周期中的 12 個時鐘周期表示為: S1P1、S1P2、 S2P1、S2P2、S6P2。如果采用 12MHZ晶振,1 個機(jī)器周期為 1s。2.11 判斷以下有關(guān)PC 和 DPTR 的結(jié)論是否正確?(A )DPTR 是可以訪問的,而 PC 不能訪問。(錯)(B)它們都是 16位的寄存器。(對)(C)它們都具有加1 的功能。(對)(D)DPTR 可以分為2 個 8

10、位寄存器使用,但PC 不能。(對)12、內(nèi)部RAM中,哪些單元可作為工作寄存器區(qū),哪些單元可以進(jìn)行位尋址?寫出它們的字節(jié)地址。答:地址為00H-1FH 的 32 個單元是 4 組通用工作寄存器區(qū),每個區(qū)包括8個 8 位工作寄存器,編號為R0-R7。字節(jié)地址為 20H-2FH 的 16 個單元可進(jìn)行 128 位的位尋址,這些單元構(gòu)成了 1 位處理機(jī)的存儲器空間。位地址范圍是00H-7FH。2.13使用 8031單片機(jī)時,需將 EA 引腳接(低)電平,因為其片內(nèi)無(程序)存儲器。2.14片內(nèi) RAM低 128 個單元劃分為哪 3個主要部分?各部分的主要功能是什么?答:字節(jié)地址為00H-1FH 的

11、32 個單元是4 組通用工作寄存器區(qū),每個區(qū)包括8個8位工作寄存器,編號為R0-R7。可以通過改變 PSW 中的 RS1、RS0 來切換當(dāng)前的工作寄存器區(qū),這種功能給軟件設(shè)計帶來極大的方便,特別是在中斷嵌套時,為實現(xiàn)工作寄存器現(xiàn)場內(nèi)容保護(hù)提供了方便;字節(jié)地址為20H-2FH 的 16 個單元可進(jìn)行工128 位的位尋址,這些單元構(gòu)成了 1 位處理機(jī)的存儲器空間;字節(jié)地址為 30H-7FH 的單元為用戶 RAM 區(qū),只能進(jìn)行字節(jié)尋址。用于作為數(shù)據(jù)緩沖區(qū)以及堆棧區(qū)。2.15判斷下列說法是否正確(A )程序計數(shù)器PC不能為用戶編程時直接使用,因為它沒有地址。(對)(B)內(nèi)部RAM的位尋址區(qū),只能供位尋

12、址使用,而不能供字節(jié)尋址使用。(錯)(C) 8031 共有 21 個特殊功能寄存器,它們的位都是可用軟件設(shè)置的,因此,是可以進(jìn)行位尋址的。(錯)2.16PC的值是:(C)( A )當(dāng)前正在執(zhí)行指令的前一條指令的地址( B)當(dāng)前正在執(zhí)行指令的地址(C)當(dāng)前正在執(zhí)行指令的下一條指令的地址(D)控制器中指令寄存器的地址2.17通過堆棧操作實現(xiàn)子程序調(diào)用,首先就要把(PC)的內(nèi)容入棧,以進(jìn)行斷點保護(hù)。調(diào)用返回時,再進(jìn)行出棧保護(hù),把保護(hù)的斷點送回到(PC)。2.18寫出P3口各引腳的第二功能。答:口引腳第二功能定義P3.0P3.1串行輸入口串行輸出口P3.2外部中斷0P3.3外部中斷1P3.4定時器 0

13、外部計數(shù)輸入P3.5定時器 1外部計數(shù)輸入P3.6外部數(shù)據(jù)存儲器寫選通P3.7外部數(shù)據(jù)存儲器讀選通2.19MCS-51 單片機(jī)程序存儲器的尋址范圍是由程序計數(shù)器PC 的位數(shù)所決定的,因為MCS-51 的 PC 是 16 位的,因此其尋址的范圍為(64)KB 。2.20當(dāng) MCS-51 單片機(jī)運行出錯或程序陷入死循環(huán)時,如何來擺脫困境?答:可通過復(fù)位來解決。2.21判斷下列說法是否正確?(A )PC 是 1 個不可尋址的特殊功能寄存器(對)(B)單片機(jī)的主頻越高,其運算速度越快(對)(C)在 MCS-51 單片機(jī)中, 1 個機(jī)器周期等于1 微秒(錯)(D)特殊功能寄存器SP 內(nèi)裝的是棧頂首地址單

14、元的內(nèi)容(錯)2.22如果手中僅有一臺示波器,可通過觀察哪個引腳的狀態(tài),來大致判斷MCS-51單片機(jī)正在工作?答: ALE引腳。第三章MCS-51的指令系統(tǒng)3.1判斷以下指令的正誤:( 1)MOV28H,R2(2) DECDPTR(3) INCDPTR(4)CLRR0(5)CPLR5(6)MOVR0,R1(7) PUSHDPTR(8)(9)MOVMOVF0,CF0,Acc.3(10)MOVXA,R1(11) MOV C,30H(12)RLCR0答:( 3)、( 8)、( 10)、( 11)對,其余錯。3.2判斷下列說法是否正確。(A )立即尋址方式是被操作的數(shù)據(jù)本身在指令中,而不是它的地址在指

15、令中。()(B)指令周期是執(zhí)行一條指令的時間。( )(C)指令中直接給出的操作數(shù)稱為直接尋址。( ×)3.3 在基址加變址尋址方式中,以(A)作變址寄存器,以(DPTR)或( PC)作基址寄存器3.4 MCS-51 共有哪幾種尋址方式?各有什么特點?答:共有7 種尋址方式。(1)寄存器尋址方式操作數(shù)在寄存器中,因此指定了寄存器就能得到操作數(shù)。(2)直接尋址方式指令中操作數(shù)直接以單元地址的形式給出,該單元地址中的內(nèi)容就是操作數(shù)。(3)寄存器間接尋址方式寄存器中存放的是操作數(shù)的地址,即先從寄存器中找到操作數(shù)的地址,再按該地址找到操作數(shù)。(4)立即尋址方式操作數(shù)在指令中直接給出,但需在操作

16、數(shù)前面加前綴標(biāo)志"#" 。(5)基址寄存器加變址寄存器間接尋址方式以DPTR或PC作基址寄存器,以累加器A 作為變址寄存器,并以兩者內(nèi)容相加形成的16 位地址作為操作數(shù)的地址,以達(dá)到訪問數(shù)據(jù)表格的目的。( 6)位尋址方式位尋址指令中可以直接使用位地址。(7)相對尋址方式在相對尋址的轉(zhuǎn)移指令中,給出了地址偏移量,以"rel" 表示,即把 PC 的當(dāng)前值加上偏移量就構(gòu)成了程序轉(zhuǎn)移的目的地址。3.5 MCS-51 指令按功能可以分為哪幾類?答: MCS-51 指令系統(tǒng)按功能分為:數(shù)據(jù)傳送類(28 條);算術(shù)操作類(24 條);邏輯運算類( 25 條);控制轉(zhuǎn)移

17、類(17 條);位操作類( 17 條)。3.6訪問 SFR,可使用哪些尋址方式?答:一般采用直接尋址,對于SFR 中字節(jié)地址能被8 整除的 SFR 可以使用位尋址,對于SFR中的 A 、 B、DPTR 寄存器可以采用寄存器尋址。3.7指令格式是由(操作碼)和(操作數(shù))所組成,也可能僅由(操作碼)組成。3.8假定累加器A中的內(nèi)容為30H,執(zhí)行指令:1000H: MOVCA ,A+PC后,把程序存儲器(1031H)單元的內(nèi)容送入累加器中3.9在 MCS-51中, PC 和 DPTR 都用于提供地址,但PC 是為訪問(程序)存儲器提供地址,而DPTR 是為訪問(數(shù)據(jù))存儲器提供地址。3.10在寄存器

18、間接尋址方式中,其"間接 " 體現(xiàn)在指令中寄存器的內(nèi)容不是操作數(shù),而是操作數(shù)的(地址)。3.11該程序段的功能是什么?PUSHAPUSHBPOPAPOPB答:功能是A 、B 內(nèi)容互換3.12已知程序執(zhí)行前有A=02H ,SP=52H,( 51H)=FFH,( 52H) =FFH。下列程序執(zhí)行后:POPPOPMOVRLMOVMOVCPUSHMOVINCDPHDPLDPTR,#4000HAB,AA,A+DPTRAA,BAMOVCPUSHA,A+DPTRARETORGDB4000H10H,80H,30H,50H,30H,50HA=50HSP=50H(51H) =30H(52H)=

19、50HPC=5030H3.13寫出完成如下要求的指令,但是不能改變未涉及位的內(nèi)容。( A )把 Acc.3, Acc.4,Acc.5 和 Acc.6 清 0。解: ANLA ,#87H(B)把累加器A 的中間4 位清0。解: ANLA ,#C3H(C)使Acc.2和Acc.3置1。解: ORLA ,#0CH3.14假定A=83H ,( R0)=17H,( 17H)=34H,執(zhí)行以下指令:ANLA ,#17HORL17H,AXRLCPLA ,R0A后, A 的內(nèi)容為( 0CBH )3.15假設(shè) A=55H ,R3=0AAH ,在執(zhí)行指令后 ANLA,R3 后, A= (00H),R3=( 0AA

20、H )3.16如果 DPTR=507BH ,SP=32H,( 30H)=50H ,( 31H)=5FH,( 32H)=3CH ,則執(zhí)行下列指令后:POPDPHPOPDPLPOPSP則: DPH= ( 3CH)DPL= ( 5FH )SP=(4FH )3.17假定 SP=60H ,A=30H , B=70H ,執(zhí)行下列指令:PUSHAPUSHB后, SP 的內(nèi)容為( 62H), 61H 單元的內(nèi)容為(30H), 62H單元的內(nèi)容為( 70H )。3.18借助本書中的指令表:表3-3 表 3-7對如下的指令代碼(16 進(jìn)制)進(jìn)行手工反匯編。FFC0E0E5F0F0解:查表可知FFMOVR7,AC0

21、E0PUSH0E0HE5F0MOVA , 0F0HF0MOVXDPTR, A第四章MCS-51匯編語言程序設(shè)計4.1用于程序設(shè)計的語言分為哪幾種?它們各有什么特點?答:用于程序設(shè)計的語言基本上分為三種:機(jī)器語言、匯編語言和高級語言。( 1)機(jī)器語言:在單片機(jī)中,用二進(jìn)制代碼表示的指令、數(shù)字和符號簡稱為機(jī)器語言,直接用機(jī)器語言編寫的程序稱為機(jī)器語言程序。用機(jī)器語言編寫的程序,不易看懂,不便于記憶,且容易出錯。( 2)匯編語言具有如下特點: A 、匯編語言是面向機(jī)器的語言,程序設(shè)計人員必須對 MCS-51 單片機(jī)的硬件有相當(dāng)深入的了解。 B 、助記符指令和機(jī)器指令一一對應(yīng),所以用匯編語言編寫的程序

22、效率高,占用的存儲空間小,運行速度快,因此用匯編語言能編寫出最優(yōu)化的程序。 C、匯編語言程序能直接管理和控制硬件設(shè)備(功能部件),它能處理中斷,也能直接訪問存儲器及 I/O 接口電路。( 3)高級語言:高級語言不受具體機(jī)器的限制,都是參照一些數(shù)學(xué)語言而設(shè)計的,使用了許多數(shù)學(xué)公式和數(shù)學(xué)計算上的習(xí)慣用語,非常擅長于科學(xué)計算。計算機(jī)不能直接識別和執(zhí)行高級語言,需要將其"翻譯 " 成機(jī)器語言才能識別和執(zhí)行。4.3解釋下列術(shù)語:" 手工匯編 "、 "機(jī)器匯編 " 、" 交叉匯編 " 以及 " 反匯編 "

23、。答、手工匯編:通常把人工查表翻譯指令的方法稱為"手工匯編 " 。機(jī)器匯編:機(jī)器匯編實際上是通過執(zhí)行匯編程序來對源程序進(jìn)行匯編的。交叉匯編:由于使用微型計算機(jī)完成了匯編,而匯編后得到的機(jī)器代碼卻是在另一臺計算機(jī)(這里是單片機(jī))上運行,稱這種機(jī)器匯編為 " 交叉匯編 "。反匯編:有時,在分析現(xiàn)成產(chǎn)品的ROM/EPROM中的程序時,要將二進(jìn)制數(shù)的機(jī)器代碼語言程序翻譯成匯編語言源程序,該過程稱為反匯編。4.4下列程序段經(jīng)匯編后,從1000H開始的各有關(guān)存儲單元的內(nèi)容將是什么?ORGTAB1TAB2DB1000HEQUEQU"MAIN"123

24、4H3000HDWTAB1 , TAB2 ,70H答:( 1000H)='M' (1001H)='A' (1002H)='I' (1003H)='N' (1004H)=34H( 1005H) =12H ( 1006H)=00H (1007H)=30H (1008H)=70H (1009H)=00H4.5設(shè)計子程序時注意哪些問題?答:在編寫子程序時應(yīng)注意以下問題:( 1)子程序的第一條指令的地址稱為子程序的入口地址。該指令前必須有標(biāo)號。( 2)主程序調(diào)用子程序,是通過主程序或調(diào)用程序中的調(diào)用指令來實現(xiàn)的。( 3)注意設(shè)置堆棧指針和現(xiàn)

25、場保護(hù),因調(diào)用子程序時,要把斷點壓入堆棧,子程序返回執(zhí)行 RET 指令時再把斷點彈出堆棧送入PC 指針,因此子程序結(jié)構(gòu)中必須用堆棧。( 4)子程序返回主程序時,最后一條指令必須是RET 指令,它的功能是在執(zhí)行調(diào)用指令時,把自動壓入堆棧中的斷點地址彈出送入 PC 指針中,從而實現(xiàn)子程序返回主程序斷點處繼續(xù)執(zhí)行主程序。( 5)子程序可以嵌套,即主程序可以調(diào)用子程序,子程序又可以調(diào)用另外的子程序,通常情況下可允許嵌套 8 層。( 6)在子程序調(diào)用時,還要注意參數(shù)傳遞的問題。4.6試編寫1 個程序,將內(nèi)部RAM中45H單元的高4 位清0,低4 位置1。解:MOVA,45HANLA ,#0FHORLA

26、,#0FH4.7已知程序執(zhí)行前有A=02H ,SP=42H,( 41H)=FFH ,( 42H)=FFH 。下述程序執(zhí)行后,POPPOPMOVRLMOVMOVCDPHDPLDPTR,#3000HAB,AA,A+DPTRPUSHMOVAA,BINCAMOVCPUSHORGDBA,A+DPTRA3000H10H,80H,30H,80H,50H,80HA=80HSP=40H( 41H) =50H( 42H) =80HPC=8050H 。4.8計算下面子程序中指令的偏移量和程序執(zhí)行的時間(晶振頻率為12MHZ )。7B0FMOVR3,#15;1 個機(jī)器周期7CFFDL1:MOVR4,#255;1 個機(jī)

27、器周期8B90DL2:MOVP1,R3;2 個機(jī)器周期DCDJNZR4,DL2;2 個機(jī)器周期DBDJNZR3,DL;2 個機(jī)器周期22RET;2 個機(jī)器周期解:程序執(zhí)行的時間為15.346s。4.9假定 A=83H ,( R0) =17H,( 17H )=34H ,執(zhí)行以下指令:ANLA , #17HORL17H,AXRLA, R0CPLA后, A 的內(nèi)容為( 0CBH )4.10試編寫程序,查找在內(nèi)部RAM 的 30H50H單元中是否有0AAH 這一數(shù)據(jù)。若有,則將 51H 單元置為 "01H" ;若未找到,則將 51H單元置為 "00H" 。ORG

28、0000HMOVR0,#30HMOVR2,#21HLOOP:MOVA,R0CJNEA,#0AAH,NOTMOV51H,#01HSJMPDENDNOT:INCR0DJNZR2,LOOPMOV51H,#00HDEND:SJMPDEND4.11試編寫程序,查找在內(nèi)部RAM 的 20H40H單元中出現(xiàn) "00H" 這一數(shù)據(jù)的次數(shù)。并將查找到的結(jié)果存入41H 單元。ORG0000HMOVR0,#20HMOVR2,#21HMOV41H,#00HLOOP:MOVA,R0CJNEA,#00H,NOTEINC41HNOTE:INCR0DJNZR2,LOOPEND4.12若 SP=60H,標(biāo)號

29、 LABEL所在的地址為3456H。LCALL 指令的地址為2000H,執(zhí)行如下指令:2000HLCALLLABEL后,堆棧指針 SP 和堆棧內(nèi)容發(fā)生了什么變化? PC的值等于什么?如果將指令LCALL直接換成 ACLAA 是否可以?如果換成 ACALL 指令,可調(diào)用的地址范圍是什么?答:堆棧指針SP 的內(nèi)容為62H,堆棧內(nèi)容( 61H)=03H,( 62H) =20H;PC值為3456H,不能將 LCALL 換為 ACALL ,因為 LCALL 可調(diào)用 64KB 范圍內(nèi)的子程序,而ACALL所調(diào)用的子程序地址必須與 ACALL指令下一條指令的第一個字節(jié)在同一個2KB 區(qū)內(nèi) (即 16位地址中

30、的高5 位地址相同。如果換為ACALL ,可調(diào)用的地址范圍為2002H-27FFH。第五章MCS-51的中斷系統(tǒng)5.1什么是中斷系統(tǒng)?答:能夠?qū)崿F(xiàn)中斷處理功能的部件稱為中斷系統(tǒng)。5.3什么是中斷源? MCS-51 有哪些中斷源?各有什么特點?答:產(chǎn)生中斷的請求源稱為中斷源。 MCS-51 中斷系統(tǒng)共有5 個中斷請求源:( 1)外部中斷請求0,中斷請求標(biāo)志為 IE0。( 2)外部中斷請求 1,中斷請求標(biāo)志為IE1 。( 3)定時器 /計數(shù)器T0 溢出中斷請求,中斷請求標(biāo)志為TF0。( 4)定時器 /計數(shù)器 T1溢出中斷請求,中斷請求標(biāo)志為 TF1。( 5)串行口中斷請求,中斷請求標(biāo)志為TI 或

31、RI。特點: 2 個外部中斷源, 3 個內(nèi)部中斷源。5.4 外部中斷1 所對應(yīng)的中斷入口地址為(0013H)。5.5 下列說法錯誤的是:(A ,B ,C)(A )各中斷源發(fā)出的中斷請求信號,都會標(biāo)記在MCS-51 系統(tǒng)的IE 寄存器中。(B )各中斷源發(fā)出的中斷請求信號,都會標(biāo)記在MCS-51 系統(tǒng)的TMOD寄存器中。(C)各中斷源發(fā)出的中斷請求信號,都會標(biāo)記在MCS-51 系統(tǒng)的IP 寄存器中。(D )各中斷源發(fā)出的中斷請求信號,都會標(biāo)記在MCS-51 系統(tǒng)的TCON 和 SCON 寄存器中。5.6MCS-51 單片機(jī)響應(yīng)外部中斷的典型時間是多少?在哪些情況下,CPU 將推遲對外部中斷請求的

32、響應(yīng)?答:典型時間是3-8 個機(jī)器周期。在下列三種情況下,CPU 將推遲對外部中斷請求的響應(yīng):( 1)CPU 正在處理同級的或更高級優(yōu)先級的中斷( 2)所查詢的機(jī)器周期不是當(dāng)前所正在執(zhí)行指令的最后一個機(jī)器周期( 3)正在執(zhí)行的指令是 RETI 或是訪問 IE 或 IP 的指令。5.7中斷查詢確認(rèn)后,在下列各種8031 單片機(jī)運行情況中,能立即進(jìn)行響應(yīng)的是(D )( A )當(dāng)前正在進(jìn)行高優(yōu)先級中斷處理( B)當(dāng)前正在執(zhí)行 RETI 指令(C)當(dāng)前指令是DIV指令,且正處于取指令的機(jī)器周期(D)當(dāng)前指令是MOVA ,R35.88031 單片機(jī)響應(yīng)中斷后,產(chǎn)生長調(diào)用指令LCALL ,執(zhí)行指令的過程包

33、括:首先把(PC)的內(nèi)容壓入堆棧,以進(jìn)行斷點保護(hù),然后把長調(diào)用指令的16位地址送( PC),使程序執(zhí)行轉(zhuǎn)向(響應(yīng)中斷請求的中斷入口的地址)中的中斷地址區(qū)。5.9編寫出外部中斷1 為跳沿觸發(fā)的中斷初始化程序。ORG0000HAJMPMAINORG0013HAJMPPINT1ORG0100HMAIN:SETBIT1SETBEX1SETBEAHERE:AJMPHEREPINT1:RETIEND5.10在 MCS-51 中,需要外加電路實現(xiàn)中斷撤除的是(D)( A )定時中斷( B)脈沖方式的外部中斷( C)外部串行中斷( D)電平方式的外部中斷5.11 MCS-51 有哪幾種擴(kuò)展外部中斷源的方法?答

34、:擴(kuò)展外部中斷源的方法有:定時器/計數(shù)器作為外部中斷源的使用方法;中斷和查詢結(jié)合的方法。5.12下列說法正確的是(C D)( A )同一級別的中斷請求按時間的先后順序順序響應(yīng)。( B)同一時間同一級別的多中斷請求,將形成阻塞,系統(tǒng)無法響應(yīng)。(C)低優(yōu)先級中斷請求不能中斷高優(yōu)先級中斷請求,但是高優(yōu)先級中斷請求能中斷低優(yōu)先級中斷請求(D)同級中斷不能嵌套。5.13中斷服務(wù)子程序返回指令RETI和普通子程序返回指令RET 有什么區(qū)別?答:兩者的區(qū)別在于, RETI 清除了中斷響應(yīng)時,被置1 的 MCS-51 內(nèi)部中斷優(yōu)先級寄存器的優(yōu)先級狀態(tài)。5.14某系統(tǒng)有3 個外部中斷源1、2、 3,當(dāng)某一中斷源

35、變?yōu)榈碗娖綍r,便要求CPU 進(jìn)行處理,它們的優(yōu)先處理次序由高到低依次為3、 2、1,中斷處理程序的入口地址分別為1000H,1100H, 1200H。試編寫主程序及中斷服務(wù)程序(轉(zhuǎn)至相應(yīng)的中斷處理程序的入口即可)。ORG0000HAJMPMAINORG0003HLJMPPINT0ORG0100HMAIN:SETBIT0SETBEX0SETBEAHERE:SJMPHEREPINT0:PUSHPSWPUSHAJNBP1.3,IR3JNBP1.2,IR2JNBP1.1,IR1PINTIR: POPAPOPPSWRETIIR3:LJMPIR3INTIR2:LJMPIR2INTIR1:LJMPIR1IN

36、TORG1000HIR3INT: LJMPPINTIRORG1100HIR2INT: LJMPPINTIRORG1200HIR1INT: LJMPPINTIREND第六章MCS-51 的定時器 /計數(shù)器6.1 如果采用的晶振的頻率為3MHZ ,定時器 /計數(shù)器工作在方式0、1、2 下,其最大的定時時間各為多少?13*4us=32.768答:方式 0216方式 12*4us=262.144方式 282 *4us=1.0246.2定時器 /計數(shù)器用作定時器時,其計數(shù)脈沖由誰提供?定時時間與哪些因素有關(guān)?答:定時器 /計數(shù)器被選定為定時器工作模式時,計數(shù)輸入信號是內(nèi)部時鐘脈沖,每個機(jī)器周期產(chǎn)生1 個

37、脈沖使計數(shù)器增1,因此,定時器 /計數(shù)器的輸入脈沖的周期與機(jī)器周期一樣,為時鐘振蕩頻率的1/2。6.3定時器 /計數(shù)器作計數(shù)器使用時,對外界計數(shù)頻率有何限制?答:定時器 /計數(shù)器用作計數(shù)器時,計數(shù)脈沖來自相應(yīng)的外部輸入引腳T0 或 T1 。對外界計數(shù)頻率要求為其最高頻率為系統(tǒng)振蕩頻率的1/24。6.4 采用定時器 /計數(shù)器 T0 對外部脈沖進(jìn)行計數(shù),每計數(shù)100 個脈沖后, T0 轉(zhuǎn)為定時工作方式。定時 1ms 后,又轉(zhuǎn)為計數(shù)方式,如此循環(huán)不止。假定MCS-51 單片機(jī)的晶體震蕩器的頻率為 6MHZ ,請使用方式 1 實現(xiàn),要求編寫出程序。ORG0000HAJMPMAINORG000BHLJMPPT0JORG0100HMAIN:MOVTMOD,#05H;00000001MOVTH0,#0FFH;X=65436MOVTL0,#9CHCLRF0SETBTR0SETBET0SETBEAHERE:AJMPHEREPT0J:JBF0,PT0DMOVTMOD,#01H;00000001MOVTH0,#0FEH;X=65036MOVTL0,#0CHSETBF0RET

溫馨提示

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

評論

0/150

提交評論