《單片機原理及應用》參考解答 及評分標準 適用年級專業電子信息、通信工程、建筑智能 專業 班級 學號姓名
………………………………………………………………………………………………………………
一、填空題(每空1分,共15分) 1. MCS-51單片機中的51子系列片內有__128__字節的RAM,外部RAM存儲器最大可擴展 64K 字節。 2.設fosc=12MHZ,執行一條2個機器周期的指令,時間為 2μS,ALE信號的工作頻率是2MHZ。 3.指令MOVX A,@DPTR, 源操作數的尋址方式是間址尋址,執行本條指令時產生的控制信號是 RD(讀)有效。 4.串行通信時RI、TI由硬件置位,由軟件復位。 6. 在直接尋址方式中,只能使用 8 位二進制數作為直接地址,因此其尋址對象只限于內部RAM。 7. 為擴展存儲器而構成系統總線,應以P0口的8位口線作為低8位地址/數據線,以P2口的口線作為高8位地址線。 8. 在查詢和中斷兩種數據輸入輸出控制方式中,CPU效率較高的是中斷。 9. 通過堆棧操作實現子程序調用,首先要把 PC 的內容壓入堆棧,以進行斷點保護。調用返回時進行出棧操作,把保護的斷點送回 PC 。
二、選擇(每小題1分,共15分) 1、對于MCS-51單片機來說,如果程序存儲區只用外部ROM 空間,EA腳應該( A )。 (A) 接地 ( B) 接電源 ( C) 懸空 ( D) 接外部ROM的OE’ 端
2、程序計數器PC用來( C )。 (A)存放指令 ( B)存放正在執行的指令地址 (C)存放下一條的指令地址 (D)存放上一條的指令地址 3、數據指針DPTR中的內容是指向( D )的地址 。 (A)CPU控制器 (B)CPU運算器 ( C)外部程序存儲器 ( D)外部數據存儲器 4、單片機上電后或復位后,工作寄存器R0是在( A ) 。 (A)0區00H單元 ( B)0區01H單元 (C)1區00H單元 ( D)2區00H單元 5、一個EPROM的地址有A0----A11引腳,它的容量為( B )。 (A)2KB (B)4KB (C)11KB ; ( D)12KB 6、8031單片機中既可位尋址又可字節尋址的內部RAM單元是( A )。 (A)20H (B)30H (C)80H (D)7FH 7、在8155芯片中,決定口和RAM單元編址的信號是( C ) file:///C:/Users/17372/AppData/Local/Temp/msohtmlclip1/01/clip_image001.giffile:///C:/Users/17372/AppData/Local/Temp/msohtmlclip1/01/clip_image002.gif(A)AD7~AD0和WR (B)AD7~AD0和CE file:///C:/Users/17372/AppData/Local/Temp/msohtmlclip1/01/clip_image003.gif(C)AD7~AD0和IO/M (D)AD7~AD0和ALE 8、在使用多片DAC0832進行D/A轉換、并分時輸入數據的應用中,它的兩級數據鎖存結構可以( B ) (A)提高D/A轉換精度 (B) 保證各模擬電壓同時輸出 (C)提高D/A轉換速度 (D)增加可靠性 9、在MCS—51中,需要外加電路實現中斷撤除的是 ( B ) (A)定時中斷 (B)電平方式的外部中斷 (C)脈沖方式的外部中斷 (D)串行中斷 10、當標志寄存器P S W的R S 1和R S 0分別為1和0時,系統選用的工作寄存器組為( C )。 (A)組0 ( B)組1 ( C)組2 ( D)組3 11.設(A)=0 C 3 H,(R0)=0 A A H,執行指令A N L A,R0后,結果( A )。 ( A) (A)=82H ( B) (A)=6CH (C ) (R0)=82 ( D) (R0)=6CH 12.在下列信號中,不是給數據存儲器擴展使用的是( B ) (A) RD ( B) EA (C) WR (D) ALE 13.如果以查詢方式進行定時應用,則應用程序中的初始化內容應包括( D ) (A) 系統復位、設置定時器工作方式、設置計數初值 (B) 設置中斷方式、設置計數初值、啟動定時 (C) 設置定時器工作方式、設置計數初值、打開中斷 (D)設置定時器工作方式、設置計數初值、禁止中斷 14.幀格式為1個起始位、8個數據位和1個停止位的異步串行通信方式是( B ) (A)方式0 (B)方式1 (C)方式2 (D)方式3 15.執行M O V I E,#85H指令的意義是:(D )。 (A)屏蔽中斷源 ( B)開放外部中斷源0 (C )開放外部中斷源1 ( D)開放外部中斷源0和1 解:83H∩17H=03H,(A)=03H;(17)=34H∪03H=37H,(A)=03H;(A)=03H⊕37H=34H 再由CPL A 后得:(A)=CBH 。評分標準:結果對,無過程記3分;結果錯,有過程則每句記1分。
| | 三、閱讀程序題(每小題5分,共20分)
1.已知(A)=83H,(R0)=17H,(17H)=34H,試寫出80C51執行下列程序段后,A的內容(要求寫出分析過程)。
ANL A,#17H ORL 17H,A XOL A,@ R0 CPL A
解:7AH∪0FH=7FH→A,SWAP A后(A)=F7H,RRC A后 (A)=FBH, (CY)=1, FBH⊕0FH=F4H→A,F4H∩10H=10H ∴(A)=10H,(CY)=1。評分標準: 結果對,無過程記3分;結果錯,有過程,則每句記1分。
| | 2. 已知(A)=7AH和PSW=80H,試寫出80C31執行下列程序的最終結果(要求寫出分析過程)。
ORL A ,#0FH SWAP A RRC A XRL A ,#0FH ANL A ,#10H
3.假設單片機內部RAM地址為data單元內存了一個數據X,試指出單片機執行下列程序段后所實現的功能(要求寫出分析過程)。 解:單片機執行上述程序后,所實現的功能是:將地址為data單元的內部數據存儲器中的數X乘以10的功能。評分標準: 結果對,無過程記3分;結果錯,有過程,則每句記1分。
| | MOV R0,#data
MOV A,@ R0 RL A MOV R1, A RL A RL A ADD A,R1 MOV @ R0,A 解:將X與50比較,若X=50則程序轉去執行LOOP2程序段;若X<50則程序轉去執行LOOP1程序段;若X>50則程序轉去執行LOOP3程序段。 評分標準: 結果對,無過程記3分;結果錯,有過程,則每句記1分。
| | 4.假定下列程序中20H單元里放的是一無符號數X,試用文字敘述程序所完成的功能是什么?
MOV A,20H CJNE A,#50,COMP SJMP LOOP2 COMP: JNC LOOP3 LOOP1: … ;LOOP1程序段 LOOP2:… ;LOOP2程序段 LOOP3:… ;LOOP3程序段 END 四、簡單程序設計(每小題10分,共20分) 1.設自變量X為一無符號數,存放在內部RAM的VAR單元,函數Y存放在FUNC單元。請編出滿足如下關系的程序: file:///C:/Users/17372/AppData/Local/Temp/msohtmlclip1/01/clip_image004.gif X 當 X≥50 Y= 5X 當 50>X≥20 2X 當 X<20 解: VAR EQU 20H 評分標準: 程序結構對記4分, 實現X≥50,50>X≥20,X<20每一分支為2分,結果保存2分。
| | FUNC EQU 21H
ORG 0100H MAIN: MOV A,VAR CJNE A,#50,COMP1 COMP1:JC LOOP1 MOV R1,A SJMP DONE LOOP1: CJNE A,#20,COMP2 COMP2:JNC LOOP3 RL A MOV R1,A SJMP DONE LOOP3: RL A RL A ADD A,VAR MOV R1,A DONE: MOV FUNC,R1
2.編寫一個由P1.0口周期輸出高低電平各2ms的方波信號的程序,系統采用12MHz晶振,由T0工作在方式2定時100μS,并采用中斷響應方式實現2mS定時。提示: 評分標準: 程序結構對記5分,其中定時器方式1分,初值計算2分,啟動定時器1分,中斷次數計數器1分;中斷服務程序5分,其中開中斷1,入口地址對1分,P1.0取反1分,減1和判斷結束指令1分,中斷返回指令1分;
| |
解: ORG1000H AJMP START ORG 000BH LJMP INTP START::MOVSP ,#60H ANL TMOD ,#0F0H ORL TMOD , #02H MOV TH0 ,#9CH MOV TL0,#9CH SETB TR0 SETB ET0 SETB EA MOV R5 ,#14H SJMP $ INTP: DJNZ R5 , ENDP CPL P1.0 MOV R5 , #14H ENDP:RETI END 五、應用題(每小題10分,共30分) 1. DAC0832芯片與8051單片機相連的接口電路如下圖所示,假設fOSC=6MHz,試編寫程序,使得在輸出端V0得到占空比為1:3、周期為9毫秒的方波信號輸出。要求高電平用0FFH,低電平用00H送DAC轉換實現,沒有連接的地址線均視為1。 提示:其中,高電平時間為3毫秒,低電平時間為6毫秒,均可采用延時1mS子程序調用的方式,延時時間可近似實現。MOV RX ,#X 指令執行時間為1個機器周期,DJNZ RX ,LOOP指令執行時間為2個機器周期。 file:///C:/Users/17372/AppData/Local/Temp/msohtmlclip1/01/clip_image006.jpg 解:根據題意要求編寫程序如下 ORG 2000H LOP0: MOV R2,#03H LOP1: MOV DPTR,#0BFFFH MOV A,#0FFH MOVX @DPTR,A ACALLDELAY DJNZ R2,LOP1 MOV R2,#06H LOP2: MOV DPTR,#0BFFFH MOV A,#00H MOVX @DPTR,A ACALL DELAY DJNZ R2,LOP2 AJMP LOP0 ; ORG 3000H DELAY: MOV R6,#0FAH DEL1: DJNZ R6,DEL1 RET END
評分標準:程序結構正確6分,0832地址正確2分,延時子程序2分。 2、假設圖2中PA口接一組開關,PB口接一組指示燈,將MCS-51工作寄存器R7的內容送指示燈,將開關狀態讀入工作寄存器R2。試編寫程序。*提示:8255的控制字格式
|
| file:///C:/Users/17372/AppData/Local/Temp/msohtmlclip1/01/clip_image007.gif |
解: 評分標準: 程序結構正確,記4分; 8255地址正確,記3分; 端口方式設置正確,記2分; R7的內容送指示燈,記1分; 開關狀態讀入工作寄存器R2,記1分。
| | MOV DPTR,#7FFFH
MOV A,#90H MOVX @DPTR,A MOV DPTR,#7FFDH MOV A,R7 MOVX @DPTR,A MOV DPTR,#7FFCH MOVX A,@DPTR MOV R2,A
2. 一個MCS-51擴展系統,用地址譯碼法常規最多可擴展多少片6264?它們的地址范圍各為多少?試畫出其邏輯圖。 解:用地址全譯碼法常規最多可擴展8片6264,各片地址:0000H~1FFFH, 2000H~3FFFH,4000H~5FFFH, 6000H~7FFFH,8000H~9FFFH, A000H~BFFFH,C000H~DFFFH, E000H~FFFFH。
MCS51
評分標準:擴展片數及各片地址范圍正確4分,譯碼電路2分,6264地址總線和數據總線擴展電路2分,讀、寫控制連線2分 |