高教版單片機(jī)原理及應(yīng)用1-6章 課后參考答案
《高教版單片機(jī)原理及應(yīng)用1-6章 課后參考答案》由會員分享,可在線閱讀,更多相關(guān)《高教版單片機(jī)原理及應(yīng)用1-6章 課后參考答案(17頁珍藏版)》請在裝配圖網(wǎ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ī)根
2、據(jù)其基本操作處理的位數(shù)可分為哪幾種類型? 答:單片機(jī)根據(jù)其基本操作處理的位數(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)。 87
3、51是在8031的基礎(chǔ)上,增加了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)部程序存儲
4、器的類型不同 (D)內(nèi)部的寄存器的數(shù)目不同 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ī)主要運(yùn)用領(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); 程
5、序存儲器(ROM/EPROM,8031沒有此部件),4個8位并行I/O口(P0口、P1口、P2口、P3口);1個全雙工的串行口; 2個16位定時器/計數(shù)器;中斷系統(tǒng);21個特殊功能寄存器(SFR)。 各部件功能:CPU(微處理器)包括了運(yùn)算器和控制器兩大部分,還增加了面向控制的處理功能,不僅可處理字節(jié)數(shù)據(jù),還可以進(jìn)行位變量的處理;數(shù)據(jù)存儲器(RAM)片內(nèi)為128B(52系列的為256B),片外最多可外擴(kuò)64KB。數(shù)據(jù)存儲器來存儲單片機(jī)運(yùn)行期間的工作變量、運(yùn)算的中間結(jié)果、數(shù)據(jù)暫存和緩沖、標(biāo)志位等;程序存儲器(ROM/EPROM)用來存儲程序;中斷系統(tǒng)具有5個中斷源,2級中斷優(yōu)先權(quán);定時器/
6、計數(shù)器用作精確的定時,或?qū)ν獠渴录M(jìn)行計數(shù);串行口可用來進(jìn)行串行通信,擴(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)部程序存儲器。
7、對于8031來說,因其無內(nèi)部程序存儲器,所以該引腳必須接地,這樣只能選擇外部程序存儲器。 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)的中斷源。 答: 中斷源 入口地址 外部中斷0 0003H 定時器0(T0)
8、000BH 外部中斷1 0013H 定時器1(T1) 001BH 串行口 0023H 2.6 內(nèi)部RAM中,位地址為30H的位,該位所在字節(jié)的字節(jié)地址為(26H)。 2.7 若A中的內(nèi)容為63H,那么,P標(biāo)志位的值為(0)。 2.8 判斷下列說法是否正確: (A)8031的CPU是由RAM和EPROM所組成。 (錯) (B)區(qū)分片外程序存儲器和片外數(shù)據(jù)存儲器的最可靠的方法是看其位于地址范圍的低端還是高端。 (錯) (C)在MCS-51中,為使準(zhǔn)雙向的I/O口工作在輸入方式,
9、必須保證它被事先預(yù)置為1。 (對) (D)PC可以看成是程序存儲器的地址指針。 (對) 2.9 8031單片機(jī)復(fù)位后,R4所對應(yīng)的存儲單元的地址為(04H),因上電時PSW=(00H)。這時當(dāng)前的工作寄存器區(qū)是(0)組工作寄存器區(qū)。 2.10 什么是機(jī)器周期?1個機(jī)器周期的時序是如何來劃分的?如果采用12MHZ晶振,1個機(jī)器周期為多長時間? 答:CPU完成一個基本操作所需要的時間稱為機(jī)器周期。時序劃分:一個機(jī)器周期包括12個時鐘周期,分為6個狀態(tài);S1-S6。每個狀態(tài)又分為2拍;P1和P2。因此,1個機(jī)器周期中的12個時鐘周期表示為:S1P1、S1P2、S2
10、P1、S2P2、…、S6P2。如果采用12MHZ晶振,1個機(jī)器周期為1μs。 2.11判斷以下有關(guān)PC和DPTR的結(jié)論是否正確? (A)DPTR是可以訪問的,而PC不能訪問。 (對) (B)它們都是16位的寄存器。 (對) (C)它們都具有加1的功能。 (對) (D)DPTR可以分為2個8位寄存器使用,但PC不能。 (對) 12、內(nèi)部RAM中,哪些單元可作為工作寄存器區(qū),哪些單元可以進(jìn)行位尋址?寫出它們的字節(jié)地址。 答:地址為00H-1FH的32
11、個單元是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的32個單元是4組通用工作寄存器區(qū),每個區(qū)包括8個8位工作寄存器,編號為R0-R7??梢酝ㄟ^改變PSW中的RS1、RS0來切換當(dāng)前的工作寄存器區(qū),這種功能給軟件設(shè)計帶來極大的方便,特別是在中斷嵌
12、套時,為實現(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ū),只能供位尋址使用,而不能供字節(jié)尋址使用。 (錯) (C)8031共有21個特殊功能寄存器,它們的位都是可用軟件設(shè)置的,因此,是可以進(jìn)行位尋址的。
13、 (錯) 2.16 PC的值是:(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.0 串行輸入口 P
14、3.1 串行輸出口 P3.2 外部中斷0 P3.3 外部中斷1 P3.4 定時器0外部計數(shù)輸入 P3.5 定時器1外部計數(shù)輸入 P3.6 外部數(shù)據(jù)存儲器寫選通 P3.7 外部數(shù)據(jù)存儲器讀選通 2.19 MCS-51單片機(jī)程序存儲器的尋址范圍是由程序計數(shù)器PC的位
15、數(shù)所決定的,因為MCS-51的PC是16位的,因此其尋址的范圍為(64)KB。 2.20 當(dāng)MCS----51單片機(jī)運(yùn)行出錯或程序陷入死循環(huán)時,如何來擺脫困境? 答:可通過復(fù)位來解決。 2.21 判斷下列說法是否正確? (A)PC是1個不可尋址的特殊功能寄存器 (錯) (B)單片機(jī)的主頻越高,其運(yùn)算速度越快 (對) (C)在MCS----51單片機(jī)中,1個機(jī)器周期等于1微秒 (錯) (D)特殊功能寄存器SP內(nèi)裝的是棧頂首地址單元的內(nèi)容 (錯) 2.22 如果手中僅有一臺示波器,可通過觀察哪個引腳的狀態(tài),來大致判斷MC
16、S----51單片機(jī)正在工作? 答:ALE 引腳。 第三章 MCS-51的指令系統(tǒng) 3.1 判斷以下指令的正誤: (1) MOV 28H,@R2 (2) DEC DPTR (3) INC DPTR (4) CLR R0 (5) CPL R5 (6) MOV R0,R1 (7) PUSH DPTR (8) MOV F0,C (9)MOV F0,Acc.3 (10)MOVX A,@R1 (11) MOV C,30H (12)RLC R0 答:(3)、(8)、(10)、(11)對,其余錯。 3.2 判斷
17、下列說法是否正確。 (A)立即尋址方式是被操作的數(shù)據(jù)本身在指令中,而不是它的地址在指令中。(√) (B)指令周期是執(zhí)行一條指令的時間。 (√) (C)指令中直接給出的操作數(shù)稱為直接尋址。 (×) 3.3在基址加變址尋址方式中,以(A)作變址寄存器,以(DPTR)或(PC)作基址寄存器 3.4 MCS-51共有哪幾種尋址方式?各有什么特點? 答: 共有7種尋址方式。 (1)寄存器尋址方式 操作數(shù)在寄存器中,因此指定了寄存器就能得到操作數(shù)。 (2)直接尋址
18、方式 指令中操作數(shù)直接以單元地址的形式給出,該單元地址中的內(nèi)容就是操作數(shù)。 (3)寄存器間接尋址方式 寄存器中存放的是操作數(shù)的地址,即先從寄存器中找到操作數(shù)的地址,再按該地址找到操作數(shù)。 (4)立即尋址方式 操作數(shù)在指令中直接給出,但需在操作數(shù)前面加前綴標(biāo)志“#”。 (5)基址寄存器加變址寄存器間接尋址方式 以DPTR或PC作基址寄存器,以累加器A作為變址寄存器,并以兩者內(nèi)容相加形成的16位地址作為操作數(shù)的地址,以達(dá)到訪問數(shù)據(jù)表格的目的。 (6)位尋址方式 位尋址指令中可以直接使用位地址。 (7)相對尋址方式 在相對尋址的轉(zhuǎn)移指令中,給出了地址
19、偏移量,以“rel”表示,即把PC的當(dāng)前值加上偏移量就構(gòu)成了程序轉(zhuǎn)移的目的地址。 3.5 MCS-51指令按功能可以分為哪幾類? 答:MCS-51指令系統(tǒng)按功能分為:數(shù)據(jù)傳送類(28條);算術(shù)操作類(24條);邏輯運(yùn)算類(25條);控制轉(zhuǎn)移類(17條);位操作類(17條)。 3.6 訪問SFR,可使用哪些尋址方式? 答:一般采用直接尋址,對于SFR中字節(jié)地址能被8整除的SFR可以使用位尋址,對于SFR中的A、B、DPTR寄存器可以采用寄存器尋址。 3.7 指令格式是由(操作碼)和(操作數(shù))所組成,也可能僅由(操作碼)組成。 3.8 假定累加器A中的內(nèi)容為30H,執(zhí)行指令: 100
20、0H:MOVC A,@A+PC 后,把程序存儲器(1031H)單元的內(nèi)容送入累加器中 3.9 在MCS----51中,PC和DPTR都用于提供地址,但PC是為訪問(程序)存儲器提供地址,而DPTR是為訪問(數(shù)據(jù))存儲器提供地址。 3.10 在寄存器間接尋址方式中,其“間接”體現(xiàn)在指令中寄存器的內(nèi)容不是操作數(shù),而是操作數(shù)的(地址)。 3.11 該程序段的功能是什么? PUSH A PUSH B POP A POP B 答:功能是A、B內(nèi)容互換 3.12 已知程序執(zhí)行前有A=02H,SP=52H,(51H)=FFH,(52H)=FFH。下列程序執(zhí)行后:
21、 POP DPH POP DPL MOV DPTR,#4000H RL A MOV B,A MOVC A,@A+DPTR PUSH A MOV A,B INC A MOVC A,@A+DPTR PUSH A RET ORG 4000H DB 10H,80H,30H,50H,
22、30H,50H A=50H SP=50H (51H)=30H (52H)=50H PC=5030H 3.13 寫出完成如下要求的指令,但是不能改變未涉及位的內(nèi)容。 (A)把Acc.3,Acc.4,Acc.5和Acc.6清0。 解:ANL A,#87H (B)把累加器A的中間4位清0。 解:ANL A,#C3H (C)使Acc.2和Acc.3置1。 解:ORL A,#0CH 3.14 假定A=83H,(R0)=17H,(17H)=34H,執(zhí)行以下指令: ANL A,#17H ORL 17H,A XRL A,@R0 CPL A 后,A的內(nèi)
23、容為(0CBH) 3.15 假設(shè)A=55H,R3=0AAH,在執(zhí)行指令后ANL A,R3后, A=(00H), R3=(0AAH) 3.16 如果DPTR=507BH,SP=32H,(30H)=50H,(31H)=5FH,(32H)=3CH,則執(zhí)行下列指令后: POP DPH POP DPL POP SP 則:DPH=(3CH) DPL=(5FH) SP=(4FH) 3.17 假定SP=60H,A=30H,B=70H,執(zhí)行下列指令: PUSH A PUSH B 后,SP的內(nèi)容為(62H),61H單元的內(nèi)容為(30H),6
24、2H單元的內(nèi)容為(70H)。 3.18借助本書中的指令表:表3-3~表3-7對如下的指令代碼(16進(jìn)制)進(jìn)行手工反匯編。 FF C0 E0 E5 F0 F0 解:查表可知 FF MOV R7,A C0 E0 PUSH 0E0H E5 F0 MOV A,0F0H F0 MOVX @DPTR, A 第四章 MCS-51匯編語言程序設(shè)計 4.1 用于程序設(shè)計的語言分為哪幾種?它們各有什么特點? 答:用于程序設(shè)計的語言基本上分為三種:機(jī)器語言、匯編語言和高級語言。 (1)機(jī)器語言:在單片
25、機(jī)中,用二進(jìn)制代碼表示的指令、數(shù)字和符號簡稱為機(jī)器語言,直接用機(jī)器語言編寫的程序稱為機(jī)器語言程序。用機(jī)器語言編寫的程序,不易看懂,不便于記憶,且容易出錯。(2)匯編語言具有如下特點:A、匯編語言是面向機(jī)器的語言,程序設(shè)計人員必須對MCS----51單片機(jī)的硬件有相當(dāng)深入的了解。B、助記符指令和機(jī)器指令一一對應(yīng),所以用匯編語言編寫的程序效率高,占用的存儲空間小,運(yùn)行速度快,因此用匯編語言能編寫出最優(yōu)化的程序。C、匯編語言程序能直接管理和控制硬件設(shè)備(功能部件),它能處理中斷,也能直接訪問存儲器及I/O接口電路。(3)高級語言:高級語言不受具體機(jī)器的限制,都是參照一些數(shù)學(xué)語言而設(shè)計的,使用了許多數(shù)
26、學(xué)公式和數(shù)學(xué)計算上的習(xí)慣用語,非常擅長于科學(xué)計算。計算機(jī)不能直接識別和執(zhí)行高級語言,需要將其“翻譯”成機(jī)器語言才能識別和執(zhí)行。 4.3 解釋下列術(shù)語:“手工匯編”、“機(jī)器匯編”、“交叉匯編”以及“反匯編”。 答、手工匯編:通常把人工查表翻譯指令的方法稱為“手工匯編”。機(jī)器匯編:機(jī)器匯編實際上是通過執(zhí)行匯編程序來對源程序進(jìn)行匯編的。交叉匯編:由于使用微型計算機(jī)完成了匯編,而匯編后得到的機(jī)器代碼卻是在另一臺計算機(jī)(這里是單片機(jī))上運(yùn)行,稱這種機(jī)器匯編為“交叉匯編”。反匯編:有時,在分析現(xiàn)成產(chǎn)品的ROM/EPROM中的程序時,要將二進(jìn)制數(shù)的機(jī)器代碼語言程序翻譯成匯編語言源程序,該過程稱為反匯編。
27、 4.4 下列程序段經(jīng)匯編后,從1000H開始的各有關(guān)存儲單元的內(nèi)容將是什么? ORG 1000H TAB1 EQU 1234H TAB2 EQU 3000H DB “MAIN” DW TAB1,TAB2,70H 答:(1000H)=‘M’(1001H)=‘A’(1002H)=‘I’(1003H)=‘N’(1004H)=34H (1005H)=12H (1006H)=00H (1007H)=30H (1008H)=70H (1009H)=00H 4.5 設(shè)計子程序時注意哪些問題?
28、 答:在編寫子程序時應(yīng)注意以下問題: (1)子程序的第一條指令的地址稱為子程序的入口地址。該指令前必須有標(biāo)號。 (2)主程序調(diào)用子程序,是通過主程序或調(diào)用程序中的調(diào)用指令來實現(xiàn)的。 (3)注意設(shè)置堆棧指針和現(xiàn)場保護(hù),因調(diào)用子程序時,要把斷點壓入堆棧,子程序返回執(zhí)行RET指令時再把斷點彈出堆棧送入PC指針,因此子程序結(jié)構(gòu)中必須用堆棧。 (4)子程序返回主程序時,最后一條指令必須是RET指令,它的功能是在執(zhí)行調(diào)用指令時,把自動壓入堆棧中的斷點地址彈出送入PC指針中,從而實現(xiàn)子程序返回主程序斷點處繼續(xù)執(zhí)行主程序。 (5)子程序可以嵌套,即主程序可以調(diào)用子程序,子程序又可以調(diào)用另外的子程序
29、,通常情況下可允許嵌套8層。 (6)在子程序調(diào)用時,還要注意參數(shù)傳遞的問題。 4.6 試編寫1個程序,將內(nèi)部RAM中45H單元的高4位清0,低4位置1。 解: MOV A,45H ANL A,#0FH ORL A,#0FH 4.7 已知程序執(zhí)行前有A=02H,SP=42H,(41H)=FFH,(42H)=FFH。下述程序執(zhí)行后, POP DPH POP DPL MOV DPTR,#3000H RL A MOV B,A
30、 MOVC A,@A+DPTR PUSH A MOV A,B INC A MOVC A,@A+DPTR PUSH A ORG 3000H DB 10H,80H,30H,80H,50H,80H A=80H SP=40H (41H)=50H (42H)=80H PC=8050H。 4.8 計算下面子程序中指令的偏移量和程序執(zhí)行的時間(晶振頻率為12MHZ)。 7B0F MOV
31、 R3,#15 ;1個機(jī)器周期 7CFF DL1: MOV R4,#255 ;1個機(jī)器周期 8B90 DL2: MOV P1,R3 ;2個機(jī)器周期 DC DJNZ R4,DL2 ;2個機(jī)器周期 DB DJNZ R3,DL ;2個機(jī)器周期 22 RET ;2個機(jī)器周期 解:程序執(zhí)行的時間為15.346μs。 4.9 假定A=8
32、3H,(R0)=17H,(17H)=34H,執(zhí)行以下指令: ANL A,#17H ORL 17H,A XRL A,@R0 CPL A 后,A的內(nèi)容為(0CBH) 4.10 試編寫程序,查找在內(nèi)部RAM的30H~50H單元中是否有0AAH這一數(shù)據(jù)。若有,則將51H單元置為“01H”;若未找到,則將51H單元置為“00H”。 ORG 0000H MOV R0,#30H MOV R2,#21H LOOP: MOV A,@R0 CJNE A,#0AAH,NOT
33、 MOV 51H,#01H SJMP DEND NOT: INC R0 DJNZ R2,LOOP MOV 51H,#00H DEND: SJMP DEND 4.11 試編寫程序,查找在內(nèi)部RAM的20H~40H單元中出現(xiàn)“00H”這一數(shù)據(jù)的次數(shù)。并將查找到的結(jié)果存入41H單元。 ORG 0000H MOV R0,#20H MOV R2,#21H MOV 41H,#00H LOOP: MOV
34、A,@R0 CJNE A,#00H,NOTE INC 41H NOTE: INC R0 DJNZ R2,LOOP END 4.12 若SP=60H,標(biāo)號LABEL所在的地址為3456H。LCALL指令的地址為2000H,執(zhí)行如下指令: 2000H LCALL LABEL后,堆棧指針SP和堆棧內(nèi)容發(fā)生了什么變化?PC的值等于什么?如果將指令LCALL直接換成ACLAA是否可以?如果換成ACALL指令,可調(diào)用的地址范圍是什么? 答:堆棧指針SP的內(nèi)容為62H,堆棧內(nèi)容(61H)=03H
35、,(62H)=20H;PC值為3456H,不能將LCALL換為ACALL,因為LCALL可調(diào)用64KB范圍內(nèi)的子程序,而ACALL所調(diào)用的子程序地址必須與ACALL指令下一條指令的第一個字節(jié)在同一個2KB區(qū)內(nèi)(即16位地址中的高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
36、,中斷請求標(biāo)志為IE0。(2)外部中斷請求1,中斷請求標(biāo)志為IE1。(3)定時器/計數(shù)器T0溢出中斷請求,中斷請求標(biāo)志為TF0。(4)定時器/計數(shù)器T1溢出中斷請求,中斷請求標(biāo)志為TF1。(5)串行口中斷請求,中斷請求標(biāo)志為TI或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系
37、統(tǒng)的IP寄存器中。 (D)各中斷源發(fā)出的中斷請求信號,都會標(biāo)記在MCS-51系統(tǒng)的TCON和SCON寄存器中。 5.6 MCS-51單片機(jī)響應(yīng)外部中斷的典型時間是多少?在哪些情況下,CPU將推遲對外部中斷請求的響應(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ī)運(yùn)行情況中,能立即進(jìn)行響應(yīng)的是(D) (A)當(dāng)前正在進(jìn)行高優(yōu)先
38、級中斷處理 (B)當(dāng)前正在執(zhí)行RETI指令 (C)當(dāng)前指令是DIV指令,且正處于取指令的機(jī)器周期 (D)當(dāng)前指令是MOV A,R3 5.8 8031單片機(jī)響應(yīng)中斷后,產(chǎn)生長調(diào)用指令LCALL,執(zhí)行指令的過程包括:首先把(PC)的內(nèi)容壓入堆棧,以進(jìn)行斷點保護(hù),然后把長調(diào)用指令的16位地址送(PC),使程序執(zhí)行轉(zhuǎn)向(響應(yīng)中斷請求的中斷入口的地址)中的中斷地址區(qū)。 5.9 編寫出外部中斷1為跳沿觸發(fā)的中斷初始化程序。 ORG 0000H AJMP MAIN ORG 0013H AJMP
39、PINT1 ORG 0100H MAIN: SETB IT1 SETB EX1 SETB EA HERE: AJMP HERE PINT1: RETI END 5.10 在MCS-51中,需要外加電路實現(xiàn)中斷撤除的是(D) (A)定時中斷 (B)脈沖方式的外部中斷 (C)外部串行中斷 (D)電平方式的外部中斷 5.11 MCS-51有哪幾種擴(kuò)展外部中斷源的方法? 答:擴(kuò)展外部中斷源的方法有:定時器/計數(shù)器作為外部中斷源的使用方法;中斷和查詢結(jié)合的方法。 5.12 下列說法
40、正確的是(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)某一中斷源變?yōu)榈碗娖綍r,便要求CPU進(jìn)行處理,它們的優(yōu)先處理次序由高到低依次為3、2、1,中斷處理程序的
41、入口地址分別為1000H,1100H,1200H。試編寫主程序及中斷服務(wù)程序(轉(zhuǎn)至相應(yīng)的中斷處理程序的入口即可)。 ORG 0000H AJMP MAIN ORG 0003H LJMP PINT0 ORG 0100H MAIN: SETB IT0 SETB EX0 SETB EA HERE: SJMP HERE PINT0: PUSH PSW PUSH A JNB P1
42、.3,IR3 JNB P1.2,IR2 JNB P1.1,IR1 PINTIR: POP A POP PSW RETI IR3: LJMP IR3INT IR2: LJMP IR2INT IR1: LJMP IR1INT ORG 1000H IR3INT: LJMP PINTIR ORG 1100H IR2INT: LJMP PINTIR ORG 1200H IR1INT: LJM
43、P PINTIR END 第六章 MCS-51的定時器/計數(shù)器 6.1 如果采用的晶振的頻率為3MHZ,定時器/計數(shù)器工作在方式0、1、2下,其最大的定時時間各為多少? 答:方式0 213*4us=32.768 方式1 216*4us=262.144 方式2 28*4us=1.024 6.2 定時器/計數(shù)器用作定時器時,其計數(shù)脈沖由誰提供?定時時間與哪些因素有關(guān)? 答:定時器/計數(shù)器被選定為定時器工作模式時,計數(shù)輸入信號是內(nèi)部時鐘脈沖,每個機(jī)器周期產(chǎn)生1個脈沖使計數(shù)器增1,因此,定時器/計數(shù)器的輸入脈沖的周期與機(jī)器周期一樣,為時鐘振蕩頻率的1/12。 6
44、.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),要求編寫出程序。 ORG 0000H AJMP MAIN ORG 000BH LJMP PT0J
45、 ORG 0100H MAIN: MOV TMOD,#05H;00000101 MOV TH0,#0FFH;X=65436 MOV TL0,#9CH CLR F0 SETB TR0 SETB ET0 SETB EA HERE: AJMP HERE PT0J: JB F0,PT0D MOV TMOD,#01H;00000001 MOV TH0,#0FEH;X=65
46、036 MOV TL0,#0CH SETB F0 RETI PT0D: CLR F0 MOV TMOD,#05H MOV TH0,#0FFH MOV TL0,#9CH RETI END 6.5 定時器/計數(shù)器的工作方式2有什么特點?適用于哪些應(yīng)用場合? 答:工作方式2為自動恢復(fù)初值的(初值自動裝入)8位定時器/計數(shù)器,TLX作為常數(shù)緩沖器,當(dāng)TLX計數(shù)溢出時,在置1溢出標(biāo)志TFX的同時,還自動的將THX中的初值送至
47、TLX,使TLX從初值開始重新計數(shù)(X=0,1)。 6.6 編寫程序,要求使用T0,采用方式2定時,在P1。0輸出周期為400微秒,占空比為1:10的矩形脈沖。(6MHz) ORG 0000H AJMP MAIN ORG 000BH AJMP PT0 ORG 0100H MAIN: MOV R2,#00H MOV TMOD,#02H MOV TH0,#0ECH;X=236 MOV TL0,#0ECH
48、 SETB P1.0 SETB TR0 SETB ET0 SETB EA HERE: SJMP HERE PT0: CJNE R2,#09H,PT01 SETB P1.0 MOV R2,#00H RETI PT01: CLR P1.0 INC R2 RETI END 6.7 一個定時器的定時時間有限,如何實現(xiàn)兩個定時器的串行定時,來實現(xiàn)較長時間的定時?
49、 答:第一個定時溢出啟動第二個定時計數(shù),實行串行定時 6.8 當(dāng)定時器T0用于方式3時,應(yīng)該如何控制定時器T1的啟動和關(guān)閉? 答:控制信號C/T和M1 M0。 6.9 定時器/計數(shù)器測量某正脈沖的寬度,采用何種方式可得到最大量程?若時鐘頻率為6MHZ,求允許測量的最大脈沖寬度是多少? 答:上升沿從0開始計數(shù),計滿回到下降沿。最大脈沖寬度Tw=131.072us 6.10編寫一段程序,功能要求為:當(dāng)P1.0引腳的電平正跳變時,對P1.1的輸入脈沖進(jìn)行計數(shù);當(dāng)P1.2引腳的電平負(fù)跳變時,停止計數(shù),并將計數(shù)值寫入R0、R1(高位存R1,低位存R0)。 ORG 0
50、000H LJMP MAIN MAIN: ORG 0100H MOV R0,#00H MOV R1,#00H MOV TL0,#00H MOV TH0,#00H LOOP1: JB P1.0,LOOP1 LOOP2: JNB P1.0,LOOP2 SETB TR0 LOOP3: JNB P1.2,LOOP3 LOOP4: JB P1.2,LOOP4 CLR TR0
51、 MOV R1,TH0 MOV R0,TL0 END 6.11 THX與TLX(X=0,1)是普通寄存器還是計數(shù)器?其內(nèi)容可以隨時用指令更改嗎?更改后的新值是立即刷新還是等當(dāng)前計數(shù)器計滿之后才能更新? 答:THX與TLX(X=0,1)是計數(shù)器,能用指令更改;能立即刷新。 6.12 判斷下列說法是否正確? (1)特殊功能寄存器SCON,與定時器/計數(shù)器的控制無關(guān)。 (√) (2)特殊功能寄存器TCON,與定時器/計數(shù)器的控制無關(guān) (×) (3)特殊功能寄存器IE,與定時器/計數(shù)器的控制無關(guān) (×) (4)特殊功能寄存器TMOD,與定時器/計數(shù)器的控制無關(guān) (×)
- 溫馨提示:
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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 6.煤礦安全生產(chǎn)科普知識競賽題含答案
- 2.煤礦爆破工技能鑒定試題含答案
- 3.爆破工培訓(xùn)考試試題含答案
- 2.煤礦安全監(jiān)察人員模擬考試題庫試卷含答案
- 3.金屬非金屬礦山安全管理人員(地下礦山)安全生產(chǎn)模擬考試題庫試卷含答案
- 4.煤礦特種作業(yè)人員井下電鉗工模擬考試題庫試卷含答案
- 1 煤礦安全生產(chǎn)及管理知識測試題庫及答案
- 2 各種煤礦安全考試試題含答案
- 1 煤礦安全檢查考試題
- 1 井下放炮員練習(xí)題含答案
- 2煤礦安全監(jiān)測工種技術(shù)比武題庫含解析
- 1 礦山應(yīng)急救援安全知識競賽試題
- 1 礦井泵工考試練習(xí)題含答案
- 2煤礦爆破工考試復(fù)習(xí)題含答案
- 1 各種煤礦安全考試試題含答案