單片機期末復習題.doc_第1頁
單片機期末復習題.doc_第2頁
單片機期末復習題.doc_第3頁
單片機期末復習題.doc_第4頁
單片機期末復習題.doc_第5頁
免費預覽已結束,剩余5頁可下載查看

下載本文檔

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

文檔簡介

單片機原理及應用一、判斷題1在MCS51單片機內(nèi)部結構中,TMOD為模式控制寄存器,主要用來控制定時器的啟動與停止。F2在MCS51單片機內(nèi)部結構中,TCON為控制寄存器,主要用來控制定時器的啟動與停止。T3MCS51單片機的兩個定時器的均有兩種工作方式,即定時和計數(shù)工作方式。T48051單片機5個中斷源相應地在芯片上都有中斷請求輸入引腳。F5可使用SETB TRi啟動定時器工作。T6中斷初始化時,對中斷控制器的狀態(tài)設置,只可使用位操作指令,而不能使用字節(jié)操作指令。F7MCS51單片機的中斷允許寄存器的IE的作用是用來對各中斷源進行開放或屏蔽的控制。T8編寫中斷服務程序時,應在中斷入口矢量地址處放一條無條件轉移指令,以防止中斷服務程序容納不下。T9對串行口中斷,CPU響應中斷后,必須在中斷服務程序中用軟件清除相應的中斷標志位,以撤消中斷請求。T10串行口數(shù)據(jù)緩沖器SBUF是可以直接尋址的專用寄存器。T11如設外部中斷0中斷,應置中斷允許寄存器IE的EA位和EX0位為1。T12當8031的定時器T0計滿數(shù)變?yōu)?后,溢出標志位(TCON的TF0)也變?yōu)?。F13工作寄存器區(qū)不允許做普通的RAM單元來使用。F14工作寄存器組是通過置位PSW中的RS0和RS1來切換的。T15特殊功能寄存器可以當作普通的RAM單元來使用。F168051單片機復位后,PC指針初始化為0000H,使單片機從該地址單元開始執(zhí)行程序。T1751單片機響應中斷后,所有中斷請求標志位都由硬件自動清零。F18在51系列單片機中,中斷服務程序從矢量地址開始執(zhí)行,一直到返回指令RETI為止。T19在執(zhí)行子程序調(diào)用或執(zhí)行中斷服務程序時都將產(chǎn)生壓棧的動作。T20定時/計數(shù)器在工作時需要消耗CPU的時間。F21在51系列單片機的指令中,既有帶借位的減法指令,又有不帶借位的減法指令。F22串行通信的優(yōu)點是只需一對傳送線,成本低,適于遠距離通信,缺點是傳送速度較低。T23在異步通信的幀格式中,數(shù)據(jù)位是低位在前高位在后的排列方式。T24異步通信中,波特率是指每秒傳送二進制代碼的位數(shù),單位是b/s。T25在8051的串行通信中,串行口的發(fā)送和接收都是對特殊功能寄存器SBUF進行讀/寫而實現(xiàn)的。T26在單片機8051中,發(fā)送SBUF和接收SBUF在物理上是獨立的,但地址是相同的。T27要進行多機通信,MCS-51串行接口的工作方式應為方式1。F28.中斷服務程序的最后一條指令是RET。F29.P2口既可以作為I/O使用,又可以作地址/數(shù)據(jù)復用口使用。F30.在中斷響應階段CPU一定要做如下兩件工作:保護斷點和給出中斷服務程序入口地址。T31.MOVA,30H的源操作數(shù)為立即尋址方式。F32.AJMP跳轉空間最大可達到64KB。F33.定時器與計數(shù)器的工作原理均是對輸入脈沖進行計數(shù)。T34.由于MCS-51的串行口的數(shù)據(jù)發(fā)送和接收緩沖器都是SBUF,所以其串行口不能同時發(fā)送和接收數(shù)據(jù),即不是全雙工的串行口。F35.TMOD中GATE=1時,表示由兩個信號控制定時器的啟停。T36.當MCS-51上電復位時,堆棧指針SP=00H。F37.MCS-51的特殊功能寄存器分布在60H80H地址范圍內(nèi)。F38.執(zhí)行返回指令時,返回的斷點是調(diào)用指令的首地址。F39.MOV A,R0 這是寄存器尋址方式。T40.8051單片機的P0口既可以做數(shù)據(jù)口線又可以做地址口線 。 T41.8051單片機的P2口只能用作通用I/O 口。F42.程序存儲器和數(shù)據(jù)存儲器的作用不同,程序存儲器一般用來存放數(shù)據(jù)表格和程序,而數(shù)據(jù)存儲器一般用來存放數(shù)據(jù)。F43.要進行多機通信,MCS-51串行接口的工作方式應為方式2或方式3。T44.MCS-51外擴I/O口與外擴RAM是統(tǒng)一編址的。T-二、選擇題1.8031單片機的定時器T0用作計數(shù)方式時是_C_ 。 A由內(nèi)部時鐘頻率定時,一個時鐘周期加1 B由內(nèi)部時鐘頻率定時,一個機器周期加1C由外部計數(shù)脈沖計數(shù),下降沿加1 D由外部計數(shù)脈沖計數(shù),一個機器周期加12.8031單片機的定時器T0用作定時方式時是_D_ 。 A由內(nèi)部時鐘頻率定時,一個時鐘周期加1 B由外部計數(shù)脈沖計數(shù),一個機器周期加1 C外部定時脈沖由T0(P3.4)輸入定時 D由內(nèi)部時鐘頻率計數(shù),一個機器周期加13.用8031的定時器T1作定時方式,用模式1,則初始化編程為_C_ 。AMOV TOMD,#01H BMOV TOMD,#50H CMOV TOMD,#10H DMOV TCON,#02H 4.啟動定時器1開始定時的指令是_D_ 。ACLR TR0 BCLR TR1 CSETB TR0 DSETB TR15.使8031的定時器T0停止計數(shù)的指令是_A_ 。ACLR TR0 BCLR TR1 CSETB TR0 DSETB TR16.下列指令判斷若定時器T0計滿數(shù)就轉LP的是_D_ 。AJB T0,LP BJNB TF0,LP CJNB TR0,LP DJB TF0,LP 7.下列指令判斷若定時器T0未計滿數(shù)就原地等待的是_B_ 。AJB T0,$ BJNB TF0,$ CJNB TR0,$ DJB TF0,$ 8.用8031的定時器T0定時,用模式2,則應_D_ 。A啟動T0前向TH0置入計數(shù)初值,TL0置0,以后每次重新計數(shù)前要重新置入計數(shù)初值。 B啟動T0前向TH0、TL0置入計數(shù)初值,以后每次重新計數(shù)前要重新置入計數(shù)初值。C啟動T0前向TH0、TL0置入計數(shù)初值,以后不再置入。D啟動T0前向TH0、TL0置入相同的計數(shù)初值,以后不再置入。9.8031單片機晶振頻率fosc=12MHz,則一個機器周期為_B_ S。A12 B1 C2 D6 10.MCS51單片機定時器溢出標志是_D_ 。ATR1和TR0 BIE1和IE0 CIT1和IT0 DTF1和TF011.用定時器T1方式2計數(shù),要求每計滿100次,向CPU發(fā)出中斷請求,TH1、TL1的初始值是_A_ 。A9CH B20H C64H DA0H12.MCS51單片機外部中斷1和外部中斷0的觸發(fā)方式選擇位是_C_ 。ATR1和TR0 BIE1和IE0 CIT1和IT0 DTF1和TF013.MCS51單片機定時器T1的溢出標志TF1,計滿數(shù)產(chǎn)生溢出時不用中斷方式而用查詢方式,則應_B_ 。A由硬件清零 B由軟件清零 C由軟件置于 D可不處理14.MCS51單片機定時器T0的溢出標志TF0,若計滿數(shù)產(chǎn)生溢出時,其值為是_C_ 。A00H BFFH C1 D計數(shù)值15.MCS51單片機定時器T0的溢出標志TF0,若計滿數(shù)在CPU響應中斷后_A_ 。A由硬件清零 B由軟件清零 CA和B都可以 D隨機狀態(tài) 16.8031響應中斷后,中斷的一般處理過程是_A_ 。A關中斷,保護現(xiàn)場,開中斷,中斷服務,關中斷,恢復現(xiàn)場,開中斷,中斷返回B關中斷,保護現(xiàn)場,保護斷點,開中斷,中斷服務,恢復現(xiàn)場,中斷返回C關中斷,保護現(xiàn)場,保護中斷,中斷服務,恢復斷點,開中斷,中斷返回D關中斷,保護斷點,保護現(xiàn)場,中斷服務,關中斷,恢復現(xiàn)場,開中斷,中斷返回17.MCS51單片機串行口發(fā)送/接收中斷源的工作過程是:當串行口接收或發(fā)送完一幀數(shù)據(jù)時,將SCON中的_A_ ,向CPU申請中斷。ARI或TI置1 BRI或TI置0 CRI置1或TI置0 DRI置0或TI置118.MCS51單片機響應中斷的過程是_D_ 。A對應中斷矢量地址裝入PC B關中斷,程序轉到中斷服務程序C斷點壓棧,PC指向中斷服務程序地址D斷點PC自動壓棧,對應中斷矢量地址裝入PC,程序轉到該矢量地址,再轉至中斷服務程序首地址19執(zhí)行中斷處理程序最后一句指令RETI后,_D_ 。A程序返回到ACALL的下一句 B程序返回到LCALL的下一句C程序返回到主程序開始處 D程序返回到響應中斷時一句的下一句20.MCS51的串行口工作方式中適合多機通信的是_ B _ 。A方式0 B方式3 C方式1 21.MCS51單片機響應中斷矢量地址是_ C _ 。A中斷服務程序的首句地址 B中斷服務程序的出口地址C中斷服務程序的入口地址 D主程序等待中斷指令的地址22.MCS51單片機外部有40個引腳,其中,地址鎖存允許控制信號引腳是_A_。A. ALEB. C. D. RST23.MCS51單片機串行口接收數(shù)據(jù)的次序是下述_B_的順序 。(1)接收完一幀數(shù)據(jù)后,硬件自動將SCON的R1置1 (2)用軟件將RI清零(3)接收到的數(shù)據(jù)由SBUF讀出(4)置SCON的REN為1,外部數(shù)據(jù)由RXD輸入A(1)(2)(3)(4) B(4)(1)(2)(3) C(4)(3)(1)(2) D(3)(4)(1)(2)24.MCS51單片機串行口發(fā)送數(shù)據(jù)的次序是下述_A_的順序 。(1)待發(fā)送數(shù)據(jù)送SBUF(2)硬件自動將SCON的TI置1(3)經(jīng)TXD串行發(fā)送一幀數(shù)據(jù)完畢(4)用軟件將TI清0A(1)(3)(2)(4) B(1)(2)(3)(4) C(4)(3)(1)(2) D(3)(4)(1)(2)25.一主程序中有一句LP:SJMP LP,功能指令為等待中斷,當發(fā)生中斷且中斷返回后,_D_ 。A返回到主程序開始處 B返回到該句的下一條指令處C返回到該句的上一條指令處 D返回到該句26.8031單片機的_D_口的引腳,還具有外中斷、串行通信等第二功能。A. P0 B. P1 C. P2 D. P327.單片機應用程序一般存放在_B_。 A. RAM B. ROM C. 寄存器 D. CPU28.INTEL8051CPU是_C_位的單片機。 A. 16 B. 4 C. 8 D. 準1629.當需要從MCS-51單片機程序存儲器取數(shù)據(jù)時,采用的指令為_B_。A. MOV A, R1 B. MOVC A,A + DPTRC. MOVX A, R0 D. MOVX A, DPTR30.8031單片機中既可位尋址又可字節(jié)尋址的單元是_A_ 。 A. 20H B. 30H C. 00H D. 70H31.MCS-51單片機復位操作的主要功能是把PC初始化為_C_。 A.0100H B.2080H C.0000H D.8000H32.若單片機的振蕩頻率為6MHz,設定時器工作在方式1需要定時1ms,則定時器初值應為_C_ 。 A.500 B.1000 C.216-500 D.216-100033.當外部中斷請求的信號方式為脈沖方式時,要求中斷請求信號的高電平狀態(tài)和低電平狀態(tài)都應至少維持_A_。 A.1個機器周期 B.2個機器周期 C.4個機器周期 D.10個晶振周期34.8031單片機中,將累加器A中的數(shù)送入外RAM的40H單元,可執(zhí)行的指令_D_。A.MOV R1 ,40H B. MOV R1 ,#40H C. MOVX 40H , A D. MOV R1, #40HMOVX R1 , A MOVX R1 , A MOVX R1 , A35.在中斷服務程序中至少應有一條_D_。A. 傳送指令 B. 轉移指令 C. 加法指令 D. 中斷返回指令36要用傳送指令訪問MCS-51片外RAM,它的指令操作碼助記符是_B _。A. MOV B. MOVX C. MOVC D. 以上都行37.執(zhí)行LACLL 4000H指令時, MCS-51所完成的操作是_D_ 。A. 保護PC B. 4000HPC C. 保護現(xiàn)場 D. PC+3入棧, 4000HPC38.若某存儲器芯片地址線為12根,那么它的存儲容量為_C_ 。A. 1KB B. 2KB C.4KB D.8KB39.PC中存放的是_A_ 。A. 下一條指令的地址 B. 當前正在執(zhí)行的指令 C. 當前正在執(zhí)行指令的地址 D. 下一條要執(zhí)行的指令40.關于MCS-51的堆棧操作,正確的說法是_C_ 。A. 先入棧,再修改棧指針 B. 先修改棧指針,再出棧 C. 先修改棧指針,在入棧 D. 以上都不對41.某種存儲器芯片是8KB*4/片,那么它的地址線根數(shù)是_C_ 。A. 11根 B. 12根 C. 13根 D. 14根42.用MCS-51用串行擴展并行I/O口時,串行接口工作方式選擇_A_。A. 方式0 B. 方式1 C. 方式2 D. 方式343.MCS-51外擴ROM,RAM和I/O口時,它的數(shù)據(jù)總線是_A_。A. P0 B. P1 C. P2 D. P344.對程序存儲器的讀操作,只能使用_D_。A. MOV指令 B. PUSH指令 C. MOVX指令 D. MOVC指令-三、簡答題18031的擴展儲存器系統(tǒng)中,為什么P0口要接一個8位鎖存器,而P2口卻不接。因為P0口是擴展存儲器系統(tǒng)的低8位地址線和數(shù)據(jù)總線,在訪問外部存儲器時,P0口分時用作輸出外部存儲器低8位地址和傳送數(shù)據(jù)。為了使整個訪問外部存儲器期間低8位地址信號始終有效,P0口需要外接一個地址鎖存器。ALE信號就是用來把P0口輸出的地址字節(jié)鎖存在這個外接的鎖存器中,再從鎖存器輸出外部存儲器的低8位地址。而P2口只用作擴展存儲器系統(tǒng)的高8位地址線,并在整個訪問外部存儲器期間不變,所以不必外接地址鎖存器。2簡述51單片機中斷的概念。 當CPU正在處理某件事情的時候,外部發(fā)生的某一事件請求CPU迅速去處理,于是,CPU暫時中止當前的工作,轉去處理所發(fā)生的事件。中斷服務處理完該事件以后,再回到原來被中止的地方,繼續(xù)原來的工作,這樣的過程成為中斷。3什么是保護現(xiàn)場,什么是恢復現(xiàn)場。 保護現(xiàn)場:當CPU響應中斷程序時,硬件會自動把斷點地址(16位程序計數(shù)器的值)壓入堆棧,但用戶還須注意保護有關工作寄存器、累加器、標志位等信息。 恢復現(xiàn)場:在完成中斷服務程序后,恢復原工作寄存器、累加器、標志位等的內(nèi)容。451系列單片機具有幾個中斷源,分別是如何定義的。51系列單片機具有5個中斷源,分別是外部中斷INT0和外部中斷INT1、定時器溢出中斷0和定時器溢出中斷1以及串行中斷。5各中斷源對應的中斷服務程序的入口地址是否能任意設定。 各中斷源的入口地址已經(jīng)在中斷地址區(qū)中被定義了,不能任意設定。6在51系列單片機執(zhí)行中斷服務程序時,為什么一般都要在矢量地址開始的地方放一條跳轉指令。 因為51系列單片機的兩個相鄰中斷源中斷服務程序入口地址相距只有8個單元,一般的中斷服務程序是容納不下的,因此一般都要在相應的中斷服務程序入口地址處放一條跳轉指令,轉到實際存放中斷服務程序的位置。7為什么一般都把主程序的起始地址放在0030H之后。 因為0000H0030H中有中斷的矢量地址,為了避免沖突,一般都把主程序的起始地址放在0030H之后。8如果想將中斷服務程序放置在程序存儲區(qū)的任意區(qū)域,在程序中應該作何種設置。 要將中斷服務程序放置在程序存儲區(qū)的任意區(qū)域,只要在對應的中斷矢量入口處填寫相應的跳轉指令即可。 951系列單片機擴展外部程序存儲器時,實際上還有多少條I/O線可以使用。 外接程序存儲器時P0和P2口要用作數(shù)據(jù)和地址總線,所以只有P1和P3口可用作I/O口,共16條I/O線。在使用外部存儲器時,除了占用P0和P2口外,還需要用P3口RD(P3.7)和WR(P3.6)兩條控制線,所以這種情況下就只剩下14條I/O線可用了。10數(shù)據(jù)指針DPTR和程序計數(shù)器PC都是16位寄存器,它們有什么不同之處? 數(shù)據(jù)指針DPTR是一個16位的寄存器,由2個8位特殊功能寄存器DPH和DPL拼裝而成。DPH作DPTR的高8位,DPL作DPTR的低8位。因此,DPTR既可作為一個16位寄存器來使用,也可以作為二個獨立的8位寄存器DPH和DPL使用。DPTR用作地址指針用來存放片內(nèi)、片外ROM和片外RAM的地址,可尋址范圍為64K地址空間尋址。 程序計數(shù)器PC是一個16位加1計數(shù)器,用來存放將要執(zhí)行的指令地址,編碼范圍為0000HFFFFH共64K。-四、簡單編程題1把累加器A中的低4位送到外部RAM的2000H單元中,試編程序。ANL A,#OFHMOV DPTR,#2000HMOVX DPTR,A2利用乘法指令編寫15H33H的程序,將乘積的高8 位存入31H單元,低8位存入30H單元MOV A,#15HMOV B,#33HMUL A,BMOV 31H,BMOV 30H,A3編寫子程序,將片內(nèi)35H55H單元中的內(nèi)容送入到以3000H為首的存儲區(qū)中。 MOV R0,#35H MOV R1,#21H MOV DPTR,#3000HLOOP:MOV A,R0 MOVX DPTR, A INC R0 INC DPTR DJNZ R1,LOOP RET4請將片外RAM 20H25H單元清零 MOV R0,#20H MOV R7,#06H CLR A LOOP:MOVX R0,A INC R0 DJNZ R7,LOOP 5請將ROM 3000H單元內(nèi)容送R7 MOV DPTR,#3000H CLR A MOVC A,A+DPTR MOV R7,A 6已知在累加器A中存放一個BCD數(shù)(9),請編程實現(xiàn)一個查平方表的子程序。 SQR:INC A MOVC A,A+PC RET TAB:DB 0,1,4,9,16,25,36,49,64,817一個十六進制數(shù)存放在內(nèi)部RAM的HEX單元的低4位中, 將其轉換成ASCII碼并送回 HEX單元。 HEXASC: MOV A, HEX ANL A, 0FH ADD A, 3 ; 修改指針 MOVC A, A+PC MOV HEX, A ; 2字節(jié)指令 RET ASCTAB: DB 30H,31H,32H,33H,34H,35H,36H,37H,38H,39H,41H,42H,43H,44H,45H,46H8.有兩個無符號數(shù)x、y分別存放在內(nèi)部存儲器50H、51H單元中,試編寫一個程序實現(xiàn)x*10+y,結果存入52H、53H單元中。MOV R0,#50HMOV R1,#53HMOV A,R0MOV B,#0AHMUL AB INC R0ADD A,R0MOV R1,ADEC R1XCH A,BADDC A,#00HMOV R1,AEND-五、應用題1.某一8051單片機系統(tǒng),晶振頻率為6MHz,現(xiàn)要從單片機的P1.7引腳輸出一個連續(xù)的5Hz方波信號,請編寫程序。解:5Hz的方波周期為200毫秒,高低電平各持續(xù)100毫秒,若晶振頻率為6MHz,則機器周期為2微秒,故其計數(shù)值應為:N=100ms/2s=50000 采用方式1,計數(shù)初值=65536-50000=15536D=3CB0H ORG 0000H AJMP MAIN ;主程序 ORG 000BH AJMP T0INT ;T0中斷入口 ORG 0100H MAIN: MOV SP, 60H MOVTMOD, #01H MOVTH0,#3CH MOV TL0,#0B0H CLR P1.7SETB EA SETB ET0 SETB TR0 SJMP $T0INT: MOVTH0,#3CH MOV TL0,#0B0H CLP P1.7 RETI END2.試設計一個8051單片機的雙機通信系統(tǒng),編程將A機片內(nèi)RAM中60H6FH的數(shù)據(jù)塊通過串行口傳送至B機片內(nèi)RAM的60H6FH單元中。甲機發(fā)送(采用查詢方式): MOV SCON, 80H ; 設置工作方式2 MOV PCON, 00H ; 置SMOD=0,波特率不加倍 MOV R0, 60H ; 數(shù)據(jù)區(qū)地址指針 MOV R2, 10H ; 數(shù)據(jù)長度LOOP: MOV A, R0 ; 取發(fā)送數(shù)據(jù) MOV C, P ; 奇偶位送TB8 MOV TB8, C MOV SBUF, A ; 送串口并開始發(fā)送數(shù)據(jù)WAIT: JBC TI, NEXT ; 檢測是否發(fā)送結束并清TI SJMP WAITNEXT: INC R0 ; 修改發(fā)送數(shù)據(jù)地址指針 DJNZ R2, LOOP END乙機接收(查詢方式):MOV SCON, 90H ; 模作模式2, 并允許接收MOV PCON, 00H ; 置SMOD=0MOV RO, 60H ; 置數(shù)據(jù)區(qū)地址指針 MOV R2, 10H ; 等待接收數(shù)據(jù)長度LOOP: JBC RI, READ ; 等待接收數(shù)據(jù)并清RI SJMP LOOPREAD: MOV A, SBUF ; 讀一

溫馨提示

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

最新文檔

評論

0/150

提交評論