單片機試題及答案 (2)_第1頁
單片機試題及答案 (2)_第2頁
單片機試題及答案 (2)_第3頁
單片機試題及答案 (2)_第4頁
單片機試題及答案 (2)_第5頁
已閱讀5頁,還剩14頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、. 試題 1 一、填空題(25 分,每空 1 分) 1. AT89S51 單片機為 8 位單片機 2. MCS-51 系列單片機的典型芯片分別為 8031 、 8051 、 8751 。 3. AT89S51 的異步通信口為 全雙工 (單工/半雙工/全雙工) 4. AT89S51 有 2 級中斷, 5 個中斷源 5. AT89S51 內(nèi)部數(shù)據(jù)存儲器的地址范圍是 00H7FH ,位地址空間的 字節(jié)地址范圍是 20H2FH ,對應的位地址范圍是 00H7FH ,外部數(shù)據(jù)存 儲器的最大可擴展容量是 64K。 6. AT89S51 單片機指令系統(tǒng)的尋址方式有_寄存器尋址_、直接尋址_、寄存 器間接尋址

2、_、_立即尋址_、 基址寄存器加變址寄存器尋址 。 7. 如果(A)=34H,(R7)=0ABH,執(zhí)行 XCH A, R7;結果(A)= 0ABH , (R7)= 34H 。 8. 82C55 可以擴展3個并行口,其中8條口線具有位操作功能; 9. 當單片機復位時 PSW00 H,這時當前的工作寄存器區(qū)是 0 區(qū),R4 所對 應的存儲單元地址為04 H。 10. 若 A 中的內(nèi)容為 67H,那么,P 標志位為1。 11. 74LS138 是具有 3 個輸入的譯碼器芯片,其輸出作為片選信號時,最多可以 選中8 片芯片。 二、判斷以下指令的正誤:(5 分) (1)MOV 28H,R4;( ) (2

3、)INC DPTR;( ) (3)DEC DPTR;( ) (4)CLR R0;( ) (5)MOV T0,#3CF0H; ( ) 三、簡答題 1、如果(DPTR)=507BH,(SP)=32H,(30H)=50H,(31H)=5FH,(32H)=3CH,則 執(zhí)行下列指令后: POPDPH; POPDPL; POPSP; 則:(DPH)= _3CH_;(DPL)=_5FH_;(SP)=_50H_; 2、采用 6MHz 的晶振,定時 1ms,用定時器方式 0 時的初值應為多少?(請 給出計算過程) (6 分) 解:采用 6MHZ 晶振 機器周期為 2us (213-X)210-6=110-3 X

4、=7692(D)=1E0CH=1 1110 0000 1100(B) , 化成方式 0 要求格式為 1111 0000 1100 B,即 0F00CH 綜上可知:TLX=0CH, THX=0F0H 3. 分析下列程序的功能(5 分) . . PUSH ACC PUSH B POP ACC POP B 解: 該程序的功能是通過累加器 ACC 與寄存器 B 數(shù)據(jù)交換。 五、簡述 MCS-51 系列單片機主從結構多機通信原理,設有一臺主機與三臺從 機通信,其中一臺從機通信地址號為 01H,請敘述主機呼叫從機并向其傳送一 個字節(jié)數(shù)據(jù)的過程。(請給出原理圖) (10 分) 解: 原理圖如上圖所示,假設主

5、機呼叫 01H 從機,首先呼叫:主機發(fā)送地址幀 0000 00011(TB8)此時各從機的 SM2 位置 1,且收到的 RB8=1,故激活 RI。各從 機將接收到的地址與地機地址比較,結果 1#機被選中,則其 SM2 清零; 0#、2#機不變。接著傳數(shù);主機發(fā)送數(shù)據(jù)幀, 0 ,此時 1# 機 SM2=0, RB8=0 則激活 RI,而 0#,2#機 SM2=1,RB8=0 則不激活 RI,然后數(shù) 據(jù)進入 1#機的緩沖區(qū)。 六、簡述一種多外部中斷源系統(tǒng)的設計方法。(給出圖和程序)(10 分) 答:原理電路如圖所示: 程序如下: INT:PUSH PSW PUSH JNB P1.0, IR0 ;掃

6、描中斷請求 JNB P1.1 , IR1 JNB P1.2, IR2 JNB P1.3, IR3 INTIR:POP;返回 POPSW IR0: 中斷服務子程序 ;中斷服務 AJMP INTIR IR1: 中斷服務子程序 AJMP INTIR IR2: 中斷服務子程序 AJMP INTIR IR3: 中斷服務子程序 AJMP INTIP 七、簡述行列式掃描鍵盤的工作原理。(8 分) TXD RXD 8031 主機 TXD RXD 00H TXD RXD 01H TXD RXD 02H TXD RXD 03H 從機 從機 從機 從機 . . 答: 掃描鍵盤工作原理 (1) 首先 X0X3,始終接

7、高電平,Y0Y3 給低電平,掃描 P1.0P1.3 若全為 高電平,則沒有鍵按下,若有低電平,則有鍵按下。 (2) 接著 Y0 輸出低電平,Y1Y3 輸出高平,掃描 P1.0P1.3,若全為高電平,則 沒有鍵按下,若有低電平,則找出相位,得到所按的鍵。 (3) 再 Y1 輸出低電平,Y0,Y2,Y3 輸出高電平,重復第 2 步驟作. (4) 再 Y2 輸出低電平,Y0,Y1,Y3 輸出高電平掃描 (5) 再 Y3 輸出低電平,Y0,Y1,Y2 輸出高電平掃描 根據(jù)據(jù)以上掃描,確定以上各鍵是否按下。 八、請回答:(共 20 分) 1、下圖中外部擴展的數(shù)據(jù)存儲器容量是多少?(2 分) 2、三片 6

8、264 的地址范圍分別是多少?(地址線未用到的位填 1) (6 分,) 3、若外部程序存儲器已擴展(未畫出) ,請編寫程序,要求: (1) 將 30H3FH 中的內(nèi)容送入 6264 1# 的前 16 個單元中;(6 分) (2) 將 6264 2# 的前 32 個單元的內(nèi)容送入 40H5FH 中;(6 分) . . P2.7 P2.6 P2.5 P2.4 P2.0 ALE 8 80 03 31 1 P0.0 P0.7 RD WR D0 Q0 D7 Q7 G OE A0A7 A8A12 CS 6264 1# CE D0D7 DE WR A0A7 A8A12 CS 6264 2# CE D0D7

9、DE WR A0A7 A8A12 CS 6264 3# CE D0D7 DE WR 8 5 8 8 8 8 8 373 Vcc Vcc Vcc 解:1.外部擴展的數(shù)據(jù)存儲器為 3 片 8K 的 RAM,外擴容量為 24 K 2. A15 A!4 A13 地址范圍 0 1 1 6000H7FFFH 1 0 1 A000HBFFFH 3 (1)程序如下: ORG 0000H RESET:AJMP MAIN ;復位,轉主程序 ORG 0100H MAIN: MOV DPL,#00H ;初始化 DPTR MOV DPH,#60H MOV R0,#30H. ;初始化 R0 LOOP: MOV A,R0

10、MOVX DPTR, A INC R0 INC DPTR CJNE R0,#40H,LOOP NOP RET (1)程序如下: ORG 0000H RESET:AJMPMAIN ;轉主程序 ORG0100H MAIN: MOVDPL#00H ;初始化 DPTR MOVDPH,#0A0H . . MOVR0,#40H ;初始化 R0 LOOP2: MOVXA,DPTR MOVR0,A INC DPTR INC R0 CJNE R0,#60H,LOOP2 NOP RET 試題 2 一、填空題(24 分,每空 1 分) 1AT89S51 單片機是( 8 )位的單片機。 2AT89S51 單片機有(

11、5)個中斷源, ( 2 )級優(yōu)先級中斷。 3串行口方式 3 發(fā)送的第 9 位數(shù)據(jù)要事先寫入(SCON)寄存器的(TB8)位。 4串行口的方式 0 的波特率為 ( fOSC/12 )。 5AT89S51 內(nèi)部數(shù)據(jù)存儲器的地址范圍是(00-7FH ) ,位地址空間的字節(jié)地 址范圍是(20-2FH ) ,對應的位地址范圍是(00-7FH)外部數(shù)據(jù)存儲器的最大 可擴展容量是(64KB ) 。 6在內(nèi)部 RAM 中可位尋址區(qū)中,位地址為 40H 的位,該位所在字節(jié)的字節(jié)地 址為( 28H ) 。 7如果(A)=58H,(R1)= 49H,(49H)= 79H,執(zhí)行指令 XCH A, R1 后;結果 (A

12、)=( 79 H ) ,(49H)=( 58H )。 8利用 81C55 可以擴展( 3 )個并行口, (256)個 RAM 單元。 9當單片機復位時 PSW(00)H,SP=(07H) ,P0P3 口均為(高)電平。 10若 A 中的內(nèi)容為 88H,那么,P 標志位為( 0 ) 。 11當 AT89S51 執(zhí)行 MOVC A,A+ DPTR 指令時,伴隨著(PSEN*)控制信 號有效。 12AT89S51 訪問片外存儲器時,利用(ALE)信號鎖存來自(P0 口)發(fā)出的 低 8 位地址信號。 13已知 fosc=12MHz, T0 作為定時器使用時,其定時時間間隔為( 1us ) 14若 AT

13、89S51 外擴 8KB 程序存儲器的首地址若為 1000H,則末地址為 2FFFH。 二、判斷對錯, 1AT89S51 單片機可執(zhí)行指令:MOV 35H,R3。 ( ) 28031與8751的區(qū)別在于內(nèi)部是否有程序存儲器。 ( ) 3當向堆棧壓入一個字節(jié)的數(shù)據(jù)后,SP 中的內(nèi)容減 1。 () 4程序計數(shù)器 PC 中裝的內(nèi)容是當前正在執(zhí)行指令的地址。 () 5某特殊功能寄存器的字節(jié)地址為 80H,它即能字節(jié)尋址,也能位尋址。 () 6AT89S51 單片機中的 PC 是不可尋址的。 () 7當 AT89S51 執(zhí)行 MOVX DPTR,A 指令時,伴隨著 WR*信號有效。 () . . 8AT

14、89S51 的定時器/計數(shù)器對外部脈沖進行計數(shù)時,要求輸入的計數(shù)脈沖的 高電平或低電平的持續(xù)時間不小于 1 個機器周期。 () 9區(qū)分外部程序存儲器和數(shù)據(jù)存儲器的最可靠的方法是看其是被 WR*還是被 PSEN*信號連接。 () 10.各中斷源發(fā)出的中斷請求信號,都會標記在 AT89S51 的 TCON 寄存器中。 三、簡答題 1 如果(DPTR)=5678H,(SP)=42H,(3FH)=12H ,(40H)=34H,(41H) =50H,(42H)=80H,則執(zhí)行下列指令后: POPDPH POPDPL RET 則:(PCH) =_34H_;(PCL)=_12H_;(DPH)=_80H_;(

15、DPL) =_50H_; 2AT89S51 采用 6MHz 的晶振,定時 2ms,如用定時器方式 1 時的初值(16 進制數(shù))應為多少?(寫出計算過程) (6 分) 答:機器周期 6106=210-6s=2uS 又方式 1 為 16 進制定時器.故 (216X)210-6=210-3=216-X=1000 =X=65536-1000=64536 即初值=FC18H 3AT89S51外擴的程序存儲器和數(shù)據(jù)存儲器可以有相同的地址空間,但不會發(fā) 生數(shù)據(jù)沖突,為什么?(6分) 答:不發(fā)生數(shù)據(jù)沖突的原因是:AT89S51 中訪問程序存儲器和數(shù)據(jù)存儲器的指令 不一樣。 選通信號也就不一樣,前者為 PSEN

16、,后者為 WR 與 RD。 程序存儲器訪問指令為 MOVC A,DPTR;MOVC A,A+pc。 數(shù)據(jù)存儲器訪問指令為:MOVX A,DPTR; MOVX A,Ri; MOVX DPTR,A。 4說明 AT89S51 的外部引腳 EA*的作用?(4 分) 答:當 EA*為高電平時,AT89S51 訪問內(nèi)部程序存儲器,但當?shù)刂反笥?0FFF 時, 自動轉到外部程序存儲器;當 EA*為低電平時,AT89S51 只讀取外部程序存儲 器。 5寫出 AT89S51 的所有中斷源,并說明說明哪些中斷源在響應中斷時,由 硬件自動清除,哪些中斷源必須用軟件清除,為什么?(6 分) 答: 外部中斷 INT0*

17、,定時器/計數(shù)器中斷 T0,外部中斷 INT1*,定時器/計數(shù)器 中斷 T1,串行口中斷 其中串行口中斷 TI 與 RI 必須用軟件清“0”,因為串口中斷的輸出中斷為 TI,輸 入中斷為 RI,故用軟件清“0” 。 四、下圖為某 AT89S51 應用系統(tǒng)的 3 位 LED 8 段共陽極靜態(tài)顯示器的接口電路, (1)該靜態(tài)顯示器電路與動態(tài)掃描的顯示器電路相比有哪些優(yōu)缺點? (2)寫出顯示字符“3” 、 “8” 、 “5”的段碼,注意:段碼的最低位為“a” 段, 段碼的最高位為“dp” 段 (3)已知 8255A 的 PA 口、PB 口和 PC 口的地址分別為 FF7CH、FF7DH、FF7EH,

18、且 8255A 的這 3 個端口均已被編寫完畢的初始化程 . . 序初始化為方式 0 輸出,請編寫出使 3 位 LED 共陽極顯示器從左至右顯示 “3.85”的程序段。 (14 分) 解:(1) 優(yōu)點是:亮度高,字符不閃爍,占用 CPU 資源少。 缺點是:占用的 I/O 口太多,當需要的 LED 數(shù)目較多時,需要外擴展的 I/0 口。 (2) 3.:B0H 8:80H 5:92H (3) MOV DPTR,#0FF7CH MOV A,#30H MOVX DPTR,A MOV DPTR,#0FF7DH MOV A ,#80H MOVX DPTR,A MVOX DPTR,#0FF7EH MOV A

19、,#92H MOVX DPTR,A RET 五、畫出 AT89S51 系列單片機利用串行口進行 1 臺主機與 4 臺從機多機串行通 訊連線圖,其中 1 臺從機通訊地址號為 02H,請敘述主機向 02H 從機發(fā)送一個 字節(jié)數(shù)據(jù)的過程(10 分) 答:主機發(fā)送數(shù)據(jù)過程如下: (1)將從機 0003H 的 REN 置 1,SM2=1,并使它們工作在串行口工作方式 2 或 3。 (2)由主機向 4 個從機發(fā)出一幀地址址信息 02H,第 9 位為 1。從機接到信息 后均發(fā)生中斷,執(zhí)行中斷服務程序,將 02H 與自身地址做比較。若相同,則清 SM2=0,若不同則 SM2 不變?nèi)詾?1。 (3)主機發(fā)送一幀

20、數(shù)據(jù)信息,第 9 位為 0,從機接到信息后,只有 SM2=0 的 從機發(fā)生中斷,將數(shù)據(jù)信息收取,其余 SM2=1 的從機不放出中斷,信息丟失, a b c d e f g dp 8255A PB PCPA 來自 AT89S51 +5 V 82C5 5 . . 從而實現(xiàn)主機向 02H 從機發(fā)送一個字節(jié)數(shù)據(jù)的功能。 六、請回答:(共 16 分) 1下圖中外部擴展的程序存儲器和數(shù)據(jù)存儲器容量各是多少?(2 分) 2兩片存儲器芯片的地址范圍分別是多少?(地址線未用到的位填 1) (6 分,) 3請編寫程序,要求: (1)將內(nèi)部 RAM 30H3FH 中的內(nèi)容送入 1# 6264 的前 16 個單元中;

21、(4 分) (2)將 2# 6264 的前 4 個單元的內(nèi)容送入 40H43 中;(4 分) 解: 1. 外擴程序存儲器的容量是 8K,外擴數(shù)據(jù)存儲器的容量是 16K 2. 2764 范圍:C000HDFFFH 1#范圍: A000HBFFFH 2#范圍: 6000H7FFFH 3請編寫程序 (1)MOV R1 ,#10H MOV DPTR, #0A000H MOV R0,#30H LOOP:MOVA,R0 MOVX DPTR,A INC DPTR INC R0 DJNZ R1,LOOP RET (2)MOV R1,#04H MOV DPTR,#6000H MOV R0 ,#40H PSEN

22、CE WR P2.7 P2.6 P2.5 P2.4 P2.0 AT89S51 D0-D7 OED0-D7OE 2764 CE A8-A12A0-A7 OE 74LS 373 Q0 Q7 D0 D7 G ALE P0.7 P0.0 8 8 8 8 8 555 8 8 +5V WR 2# 6264 CS CE A8-A12A0-A7 +5V WR CS A8-A12A0-A7 OEOE 1# 6264 RD 5 8 . . LOOP:MOVX A ,DPTR MOV R0 ,A INC DPTR INC R0 DJNZ R1,LOOP RET 試題 3 參考答案 一、填空題(31 分,每空 1 分

23、) 1AT89S51 單片機有( 2 )級優(yōu)先級中斷。 2串行口方式 2 接收到的第 9 位數(shù)據(jù)送 SCON 寄存器的 RB8 位中保存。 3當單片機復位時 PSW(00)H,這時當前的工作寄存器區(qū)是(0)區(qū),R6 所 對應的存儲單元地址為(06)H。 4利用 82C55 可以擴展(3)個并行口,其中(8)條口線具有位操作功能; 5AT89S51 訪問片外存儲器時,利用(ALE)信號鎖存來自( P0 口 )發(fā)出的 低 8 位地址信號。 6若AT89S51外擴32KB 數(shù)據(jù)存儲器的首地址若為4000H,則末地址為BFFFH。 7當 AT89S51 執(zhí)行 MOVC A,A+PC 指令時,伴隨著(P

24、SEN*)控制信號有效。 8若 A 中的內(nèi)容為 67H,那么,P 標志位為(1) 。 9AT89S51 單片機的通訊接口有(串行)和(并行)兩種形式。在串行通訊 中,發(fā)送時要把(并行)數(shù)據(jù)轉換成(串行)數(shù)據(jù)。接收時又需把(串行) 數(shù)據(jù)轉換成(并行)數(shù)據(jù)。 10AT89S51 內(nèi)部數(shù)據(jù)存儲器的地址范圍是(00-7FH ) ,位地址空間的字節(jié)地 址范圍是(00-2FH) ,對應的位地址范圍是(00-7FH ) ,外部數(shù)據(jù)存儲器的最 大可擴展容量是(64KB) 。 11AT89S51 單片機指令系統(tǒng)的尋址方式有(寄存器尋址方式) 、 (直接尋址方 式) 、 (立即尋址方式) 、 (寄存器間接尋址方式

25、) 、 (位尋址方式) 、 (基址寄存 器加變址寄存器) 、 (相對尋址方式) 。 12AT89S51 內(nèi)部提供(2)個可編程的(16)位定時/計數(shù)器,定時器有 (4)種工作方式。 二、判斷對錯 1AT89S51 的定時器/計數(shù)器對外部脈沖進行計數(shù)時,要求輸入的計數(shù)脈沖的 高電平或低電平的持續(xù)時間不小于 1 個機器周期。 () 2判斷指令的正誤:MOVT0,#3CF0H;() 3定時器 T0 中斷可以被外部中斷 0 中斷() 4指令中直接給出的操作數(shù)稱為直接尋址。 () 5內(nèi)部 RAM 的位尋址區(qū),既能位尋址,又可字節(jié)尋址。 () 6特殊功能寄存器 SCON 與定時器/計數(shù)器的控制無關。 ()

26、 7當 AT89S51 執(zhí)行 MOVX A,R1 指令時,伴隨著 WR*信號有效。 () 8串行口工作方式 1 的波特率是固定的,為 fosc/32。 () 9區(qū)分外部程序存儲器和數(shù)據(jù)存儲器的最可靠的方法是看其是被 RD*還是 被 PSEN*信號連接。 () 10逐次比較型 A/D 轉換器與雙積分 A/D 轉換器比較,轉換速度比較慢。 () 三、簡答題 . . 1AT89S51 采用 12MHz 的晶振,定時 1ms,如用定時器方式 1 時的初值(16 進 制數(shù))應為多少?(寫出計算過程) (6 分) 解:采用 12MHZ的晶振,Tcy=1/fosc12=1/1210-612=1us 采用定時

27、器方式 1(為 16 位) 定時 1ms,設初值為 X,則:(216-X)110-6=110-3 則=X=64536 將其轉換成二進的為:1111110000011000 再將其轉化為 16 進制數(shù)為:FC18 初值為 TXH=FCH TXL=18H 2中斷服務子程序返回指令 RETI 和普通子程序返回指令 RET 有什么區(qū)別?答: RETI 除了將壓棧的內(nèi)容出棧外(即現(xiàn)場恢復) ,還清除在中斷響應時被置 1 的 AT89S51 內(nèi)部中斷優(yōu)先級寄存器的優(yōu)先級狀態(tài)。 3AT89S51 外擴的程序存儲器和數(shù)據(jù)存儲器可以有相同的地址空間,但不會發(fā) 生數(shù)據(jù)沖突,為什么?(6 分) 答:AT89S51

28、外擴的程序存儲器和數(shù)據(jù)存儲器可以有相同的地址空間,但不會 發(fā)生數(shù)據(jù)沖突。這是因為它們的控制信號不同: (1) 外擴程序存儲器是 PSEN*信號為其控制信號, 外擴數(shù)據(jù)存儲器是 RD*與 WR*信號為其控制信號 (2) 指令不同,程序存儲器用 MOVC 讀取,數(shù)據(jù)存儲器用 MOVX 存取 5LED 的靜態(tài)顯示方式與動態(tài)顯示方式有何區(qū)別?各有什么優(yōu)缺點?(4 分) 答:靜態(tài):顯示期間,鎖存器輸出的段碼不變;亮度大,各位 LED 的段選分別控 制;位數(shù)多硬件電路復雜 動態(tài):所有位段碼線并連一起,各位的亮滅靠片選控制端控制,亮度較低,多 位控制電路簡單 四、程序分析:(10 分) 外部 RAM 300

29、0H,3001H 單元的內(nèi)容分別為 55H,0DDH,試分析如下程序,并 回答問題。 程序 1: MOV DPTR,#3000H MOV R1,#40H MOVX A ,DPTR MOV R1,A INC R1 INC DPTR MOVX A,DPTR MOV R1,A 問題 1:若執(zhí)行上述程序,則結束后,DPTR 值為 3001H,R1 的內(nèi)容為 41H ,8031 內(nèi)部 RAM41H 單元的內(nèi)容 DDH,40H 單元內(nèi)容為_55H_。 在上程序中,若繼續(xù)執(zhí)行如下程序 程序 2:START:MOV DPTR,#3000H MOV R1 ,#40H MOV A,R1 MOVX DPTR,A 問

30、題 2、START 執(zhí)行結束后,DPTR 的值為_3000H_,3000H 單元的內(nèi)容為 _55H_,R1 的內(nèi)容為_40H_。 4000H 3001H 3000H DD 55 . . 問題 3:執(zhí)行如下程序,填出 A 寄存器的內(nèi)容。 程序 3、MOV A、#88H MOV R7,#AAH ORL A、R7 :A 的內(nèi)容為:_AAH_ MOV A,#37H MOV R7,#89H ANL A,R7 A 的內(nèi)容為:_01H _ XRL A,R7 A 的內(nèi)容為:_88H _ RET 五、簡述一種多外部中斷源系統(tǒng)的設計方法。 (給出圖和程序) (10 分) 答:程序如下: ORG 0013H ;的中

31、斷入口 LJMP INT1 ; INT1: PUSH PSW ;保護現(xiàn)場 PUSH ACC JB P1.0,IR1 ;P1.0 高,IR1 有請求 JB P1.1,IR2 ;P1.1 高,IR2 有請求 JB P1.2,IR3 ;P1.2 腳高,IR1 有請求 JB P1.3,IR4 ;P1.4 腳高,IR4 有請求 INTIR: POP ACC ;恢復現(xiàn)場 POP PSW RETI ;中斷返回 IR1: IR1 的中斷處理程序 AJMP INTIR ; IR1 中斷處理完畢,跳標號 INTIR 處執(zhí)行 IR2:IR2 的中斷處理程序 AJMP INTIR ;IR2 中斷處理完畢,跳標號 IN

32、TIR 處執(zhí)行 IR3: IR3 的中斷處理程序 AJMP INTIR ;IR3 中斷處理完畢,跳標號 INTIR 處執(zhí)行 IR4: IR4 的中斷處理程序 AJMP INTIR ;IR4 中斷處理完畢,跳標號 INTIR 處執(zhí)行 六、請回答:(共 14 分) 1下圖中外部擴展的程序存儲器和數(shù)據(jù)存儲器容量各是多少?(2 分) 2三片存儲器芯片的地址范圍分別是多少?(地址線未用到的位填 1) 3請編寫程序,要求:將內(nèi)部 RAM 40H-4FH 中的內(nèi)容送入 1# 6264 的前 16 個 單元中;將 2# 6264 的前 4 個單元的內(nèi)容送入 50H-53H 中; 解: 1解外部擴展的程序存儲器

33、容量為:8KB 外部擴展的數(shù)據(jù)存儲器容量為:8KB2=16kb 2. 程序存儲器 2764 地址的高 3 位: A15 A14 A13 0 0 0 地址范圍為:0000H-1FFFH 數(shù)據(jù)存儲器 1#6264 地址高 3 位: . . A15 A14 A13 0 1 1 地址范圍為:6000H-7FFFH 數(shù)據(jù)存儲器 2#6264 地址范圍為: A15 A14 A13 1 0 1 地址范圍為:A000H-BFFFH 3編寫程序 (1) MOV RO, #40H MOV DPTR, #6000H ;設置數(shù)據(jù)指針為 6000H LOOP:MOV A, RO ; 將片內(nèi) RAM(40-4FH)中的內(nèi)

34、容送入 A 中 MOVX DPTR,A ; 將 ADPTR 中 INC RO INC DPTR CJNE RO,#50H,LOOP ; 將此子程序循環(huán)執(zhí)行 16 次 RET (2) MOV RO, #50H MOV DPTR, #0A000H ; 設置數(shù)據(jù)指針為 A000H LOOP: MOVX A, DPTR MOVX RO,A ; 將外部數(shù)據(jù)存儲器內(nèi)容送入到片內(nèi)中 INC RO INC DPTR CJNE RO,#54H,LOOP ; 將此子程序循環(huán)執(zhí)行 4 次 RET 試題 4 參考答案 一、填空題(37 分) 1. AT89S51 單片機芯片共有 40 個引腳,MCS-51 系列單片機

35、為 8 位單片機。 2. AT89S51 的異步通信口為全雙工(單工/半雙工/全雙工) , 3. AT89S51 內(nèi)部數(shù)據(jù)存儲器的地址范圍是 00H-7FH,位地址空間的字節(jié)地址 范圍是 20H-2FH,對應的位地址范圍是 00H-7FH,外部數(shù)據(jù)存儲器的最大可擴展 容量是 64K 字節(jié)。 PSEN CE W R P2 .7 P2 .6 P2 .5 P2 .4 P2 .0 AT89S51 D0- D7 O E D0- D7 O E 2764 CE A8- A12 A0- A7 O E Q 0 Q 7 D 0 D 7 G ALE P0 .7 P0 .0 8 88 8 8 555 8 8 +5 V

36、 W R 2# 6264 CS CE A8- A12 A0- A7 +5 V W R CS A8- A12 A0- A7 O E O E 1# 6264 R D 5 8 . . 4. 單片機也可稱為微控制器 或 嵌入式控制器。 5當 MCS-51 執(zhí)行 MOVC A,A+PC 指令時,伴隨著 PSEN*控制信號有效。 6. 當單片機復位時 PSW00 H,這時當前的工作寄存器區(qū)是 0 區(qū),R4 所對應的存儲單元地址為 04 H。 7. MCS-51 系列單片機指令系統(tǒng)的尋址方式有 寄存器尋址 、直接尋址、 寄 存器間接尋址、立即尋址、 基址加變址 、 位尋址 。 (相對尋址也可) 8. 51

37、系列單片機的典型芯片分別為 AT89S51 、8031 、AT89C51 。 9. AT89S51 的 P3 口為雙功能口; 10. 由 AT89S51 組成的單片機系統(tǒng)在工作時,EA*引腳應該接 地(或 0) ; 11. AT89S51 外部程序存儲器的最大可擴展容量是 64K ,其地址范圍 是 0000H - FFFFH 。ROM 芯片 2764 的容量是 8 KB,若其首地址為 0000H,則其末地址 1FFFH 。 12. AT89S51 的中斷源有 外中斷 0, T0 ,外中斷 1, T1,串行口,有 2 個中斷優(yōu)先級。 13. AT89S51 唯一的一條 16 位數(shù)據(jù)傳送指令為 M

38、OV DPTR,data16。 14. LJMP 的跳轉范圍是 64K,AJMP 的跳轉范圍是 2K B,SJMP 的跳轉范圍 是 128 B(或 256B) 。 15. 若 A 中的內(nèi)容為 68H,那么 P 標志位為 1。 二、簡答題(13 分) 1. 采用 6MHz 的晶振,定時 2ms,用定時器方式 1 時的初值應為多少?(請給 出計算過程) (6 分) 答:(1) Ts=2us (216X)2us2ms 從而 X64536 (2) 64536FC18H 2. AT89S51外擴的程序存儲器和數(shù)據(jù)存儲器可以有相同的地址空間,但不會 發(fā)生數(shù)據(jù)沖突,為什么?(4分) 答:因為訪問外擴的程序存

39、儲器和數(shù)據(jù)存儲器執(zhí)行的指令不同,所發(fā)出的控制 信號也就不同。 (2分)讀外部數(shù)據(jù)存儲器時,RD*信號有效。寫外部數(shù)據(jù)存儲器 時,WR*信號有效。而讀外部程序存儲器時,PSEN*信號有效。由于發(fā)出的控制 信號不同,且只能有一種信號有效,因此,即使MCS-51外擴的程序存儲器和數(shù) 據(jù)存儲器有相同的地址空間,也不會發(fā)生數(shù)據(jù)沖突。 (2分) 3說明 AT89S51 的外部引腳 EA*的作用?(3 分) 答: EA*是內(nèi)外程序存儲器選擇控制信號。 (1 分) 當 EA*0 時,只選擇外部程序存儲器。 (1 分) 當 EA*1 時,當 PC 指針0FFFH 時,只訪問片內(nèi)程序存儲器;當 PC 指 針0FF

40、FH 時,則訪問外部程序存儲器(1 分) 三、編寫程序,將外部數(shù)據(jù)存儲器中的5000H50FFH單元全部清零(10分)。 答: ORG *H (1分) MOV DPTR #5000H MOV R0,#00H CLR A (3分) LOOP : MOVX DPTR,A INC DPTR (3分) DJNZ R0,LOOP (2分) . . HERE: SJMP HERE (RET 或 SJMP $ 等)(1 分) 四、簡述 AT89S51 單片機主從結構多機通信原理,設有一臺主機與三臺從機通 信,其中一臺從機通信地址號為 01H,請敘述主機呼叫從機并向其傳送一個字 節(jié)數(shù)據(jù)的過程。(請給出原理圖)

41、 (10 分) 答: 1) 原理圖 (2 分) TXD RXD MCS-51 單片機 RXD TXD 00H RXD TXD 01H RXD TXD 02H RXD TXD 03H 2) 將所有從機的 REN、SM2 置 1 (1 分) 工作在方式 2 或 3 (1 分) 3)主機發(fā)送一個地址楨 01H (1 分) 第 9 位為 1 即 TB8=1 (1 分) 4) 各從機接收到后,都發(fā)生中斷,進入中斷服務程序,比較自己的地址與 01H 是否相同,若相同則將本機 SM2 置 0,否則仍為 1 (1 分) 5)主機發(fā)送數(shù)據(jù)楨,TB8=0 (1 分) 各從機接收該數(shù)據(jù)楨,從機中 SM2 為 0 的

42、產(chǎn)生中斷,而其它 SM2 為 1 的從機不產(chǎn)生中斷將信息丟棄,從而實現(xiàn)主 機與從機傳遞數(shù)據(jù) (2 分) 五、簡述行列式掃描鍵盤的工作原理。 (10 分) 答:1)首先判斷有無鍵按下: (3 分) 將列線全部置 0,讀行線狀態(tài),若 P1.0P1.3 全為 1,則表明無鍵按下, 若出現(xiàn)低電平即 0,則有鍵按下,記錄下行號 i ; 2) 其次,如有鍵按下,判斷具體鍵號 (7 分) 方法如下:逐列為低,其它為高,再讀行線狀態(tài),如出現(xiàn)哪一行為低,記錄 此時的列號 j , 則證明第 i 行第 j 列的按鍵被按下,至此完成鍵盤的行列 式掃描。 . . 七、回答下列問題并寫出簡要分析過程(15 分) 。 1圖

43、 1(a)所示為某微機中存儲器的地址空間分布圖。圖 1(b)為存儲器的地址 譯碼電路,為使地址譯碼電路按圖 1(a)所示的要求進行正確尋址(設 CPU 的地 址線為 16 條) ,要求在答題紙上畫出: (1) A 組跨接端子的內(nèi)部正確連線圖?(4.5 分)并簡要分析(3 分) (2) B 組跨接端子的內(nèi)部正確連線圖?(4.5 分)并簡要分析(3 分) (注:74LS139 是 2-4 譯碼器,A 為低端,B 為高端,使能端 G 接地表示譯碼器 處于正常譯碼狀態(tài)) 。 答:連線部分:A組跨接端子與B組跨接端子的各自連接如圖1(b)所示。連對1根 線給1.5分。 注意:連線部分是簡答的前提。 試題

44、 5 參考答案 一、填空(30 分,每空 1 分) 1. 如果(A)=45H,(R1)=20H,(20H)=12H,執(zhí)行 XCHD A, R1;結果 (A)= 42H ,(20H)= 15H 2. AT89S51 的異步通信口為 全雙工 (單工/半雙工/全雙工) , 若傳送速率為每秒 120 幀,每幀 10 位,則波特率為 1200 bit/s 3. AT89S51 內(nèi)部數(shù)據(jù)存儲器的位地址空間的字節(jié)地址范圍是 20H-2FH , 對應的位地址范圍是 00H-FFH。 4. 單片機也可稱為 微控制器 或 嵌入式控制器 5. 當 MCS-51 執(zhí)行 MOVX A,R1 指令時,伴隨著 RD 控制信

45、號 有效。 6. 當單片機的 PSW01H 時,這時當前的工作寄存器區(qū)是 0 區(qū), R4 所對應的存儲單元地址為 04 H 7. AT89S51 的 P0 口為高 8 位地址總線口。 8. 設計一個以 AT89C51 單片機為核心的系統(tǒng),如果不外擴程序存儲器, 使其內(nèi)部 4KB 閃爍程序存儲器有效,則其 EA* 引腳應該接 +5V ROM1 ROM2 空 RAM1 RAM2 存儲器地址 0000H 4000H 8000H C000H E000H FFFFH 圖 1(a) 地址空間圖 1(b) 地址譯碼電路 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 Y0 Y1

46、 Y2 Y3 G B A A 組 跨接端子 B 組 跨接端子 74LS139 芯片選擇 ROM2 ROM1 RAM2 RAM1 A15 A12 A13 A14 地址譯碼電路地址譯碼電路 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 Y0 Y1 Y2 Y3 G B A A 組 跨接端子 B 組 跨接端子 74LS139 芯片選擇 ROM2 ROM1 RAM2 RAM1 A15 A12 A13 A14 . . 9. 在 R7 初值為 00H 的情況下,DJNZ R7,rel 指令將循環(huán)執(zhí)行 256 次。 10. 欲使 P1 口的低 4 位輸出 0,高 4 位不變,應

47、執(zhí)行一條 ANL P1, #0F0H 命令。 11. 單片機外部三大總線分別為 數(shù)據(jù)總線、地址總線和控制總線。 12. 數(shù)據(jù)指針 DPTR 有 16 位,程序計數(shù)器 PC 有 16 位 13. 74LS138 是具有 3 個輸入的譯碼器芯片,用其輸出作片選信號,最多可 在 8 塊芯片中選中其中任一塊。 MCS51 指令系統(tǒng)中,ADD 與 ADDC 指令的區(qū)別是 進位位 Cy 是否參與 加法運算 特殊功能寄存器中,單元地址低位為 0 或 8 的特殊功能寄存器,可以 位尋址。 開機復位后,CPU 使用的是寄存器第 0 組,地址范圍是 00H-07H 14. 若某存儲器芯片地址線為 12 根,那么它

48、的存儲容量為 4kB 15. 關于定時器,若振蕩頻率為 12MHz,在方式 0 下最大定時時間為 8.192ms AT89S51 復位后,PC 與 SP 的值為分別為 0000H 和 07H 20. LJMP 跳轉空間最大可達到 64K 21. 執(zhí)行如下三條指令后,30H 單元的內(nèi)容是 #0EH M O V R 1,30H M O V 40H,0 E H M O V R 1,40H 二、判斷題(10 分,每題 1 分) 1.當 EA 腳接高電平時,對 ROM 的讀操作只訪問片外程序存儲器。 (X ) 2.必須有中斷源發(fā)出中斷請求,并且 CPU 開中斷,CPU 才可能響應中斷。 (X ) 3.8

49、155 是一種 8 位單片機。 (X ) 4.51 單片機只能做控制用,不能完成算術運算。 (X ) 5.單片機內(nèi)部 RAM 和外部 RAM 是統(tǒng)一編址的,它們的訪問指令相同。 (X ) 6.指令 AJMP 的跳轉范圍是 2KB。 ( ) 7.擴展 I/O 口占用片外數(shù)據(jù)存儲器的地址資源。 ( ) 8.8051 單片機,程序存儲器數(shù)和數(shù)據(jù)存儲器擴展的最大范圍都是一樣的。 ( ) 9.單片機系統(tǒng)擴展時使用的鎖存器,是用于鎖存低 8 位地址( ) 10.在 A/D 變換時,轉換頻率越高越好。 (X ) 三、簡答題(18 分) 1、采用 6MHz 的晶振,定時 5ms,用定時器方式 1 時的初值應為多少? 2、答:(1) (216X)2us5ms 65536 2500 = 63036 從而 X63036 (2)

溫馨提示

  • 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

提交評論