微型計(jì)算機(jī)習(xí)題解答_第1頁
微型計(jì)算機(jī)習(xí)題解答_第2頁
微型計(jì)算機(jī)習(xí)題解答_第3頁
微型計(jì)算機(jī)習(xí)題解答_第4頁
微型計(jì)算機(jī)習(xí)題解答_第5頁
已閱讀5頁,還剩27頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、第1章(略)第2章(略)第4章4. 1. 用下列芯片構(gòu)成存儲(chǔ)系統(tǒng),各需要多少個(gè)RAM芯片?需要多少位地址作為片外地址譯碼?設(shè)系統(tǒng)為20位地址線,采用全譯碼方式。(1) 512×4位RAM構(gòu)成16KB的存儲(chǔ)系統(tǒng);(2) 1024×1位RAM構(gòu)成128KB的存儲(chǔ)系統(tǒng);(3) 2K×4位RAM構(gòu)成64KB的存儲(chǔ)系統(tǒng);(4) 64K×1位RAM構(gòu)成256KB的存儲(chǔ)系統(tǒng);解:1) 需要16KB/512×4=64片片外地址譯碼需11位地址線。2) 需要128KB/1K×1=1024片片外地址譯碼需10位地址線。3) 需要64KB/2K×

2、4=64片片外地址譯碼需9位地址線。4) 需要256KB/64K×1位=32片片外地址譯碼需4位地址線。4. 2. 現(xiàn)有一種存儲(chǔ)芯片容量為512×4位,若要用它組成4KB的存儲(chǔ)容量,需多少這樣的存儲(chǔ)芯片?每塊芯片需多少尋址線?而4KB存儲(chǔ)系統(tǒng)最少需多少尋址線?解: 4KB/ 512×4b= 16,需要16片 每片芯片需9條尋址線4KB存儲(chǔ)系統(tǒng)最少需12條尋址線4. 3. 有2732EPROM芯片的譯碼電路如圖所示,請(qǐng)計(jì)算該芯片的地址范圍及存儲(chǔ)容量。圖習(xí) 41解: 2732的地址范圍為存儲(chǔ)容量為4KB。4. 4. 某一存儲(chǔ)器系統(tǒng)如圖習(xí)42所示,回答它們的存儲(chǔ)容量各是

3、多少?RAM和EPROM存儲(chǔ)器地址分配范圍各是多少?解:EPROM的地址范圍為FD000HFDFFFH,存儲(chǔ)容量為4KB;RAM的地址范圍為F9000HF97FFH或F9800HF9FFFH,存儲(chǔ)容量為2KB。由于A11未參加譯碼,因而有地址重疊,一個(gè)內(nèi)存單元有2個(gè)地址對(duì)應(yīng)。4. 5. 使用6116、2732和74LS138譯碼器構(gòu)成一個(gè)存儲(chǔ)容量為12KBROM(00000H02FFFH)、8KBRAM(03000H04FFFH)的存儲(chǔ)系統(tǒng)。系統(tǒng)地址總線為20位,數(shù)據(jù)總線為8位。解:4. 6. 8086CPU執(zhí)行MOV2001H,AX指令從取指到執(zhí)行指令最少需要多少時(shí)間?設(shè)時(shí)鐘頻率為5MHZ,

4、該指令的機(jī)器碼為4個(gè)字節(jié),存放在1000H;2000H開始的4個(gè)單元中。圖習(xí) 52解:在無等待周期的情況下,從取指到執(zhí)行共需:4×4×1/5M=3.2µs(一個(gè)總線周期在無等待周期的情況下由4個(gè)時(shí)鐘周期T組成)。4.7. 用二片8K×8位的靜態(tài)RAM芯片6264組成的8位微機(jī)系統(tǒng)的存儲(chǔ)器電路如圖習(xí)5-4所示,試計(jì)算芯片6264 #1和 #2的地址范圍以及存儲(chǔ)器的總?cè)萘?。圖習(xí)5-4解: 芯片 #1的的地址范圍計(jì)算:A19 A15 A14 A13 A12 A0××××× 1 0 0 0××

5、××× 1 0 1 1當(dāng)無關(guān)項(xiàng)取“0”時(shí),地址范圍為04000H05FFFH芯片 #2的的地址范圍計(jì)算:A19 A15 A14 A13 A12 A0××××× 0 1 0 0××××× 0 1 1 1當(dāng)無關(guān)項(xiàng)取“0”時(shí),地址范圍為02000H03FFFH。該存儲(chǔ)器的總?cè)萘繛?6KB。4.8. 微機(jī)系統(tǒng)的存儲(chǔ)器由5片RAM芯片組成,如圖習(xí)5-5所示,其中U1有12 條地址線,8條數(shù)據(jù)線,U2U5各有10條地址線,4條數(shù)據(jù)線,試計(jì)算芯片U1和U2,U3的地址范圍,以及該

6、存儲(chǔ)器的總?cè)萘俊D習(xí)5-5解:芯片 U1的的地址范圍計(jì)算:A19 A14 A13 A12 A11 A10 A0 0 0 0 1 0 0 0 0 0 0 1 1 1 1地址范圍為01000H01FFFH芯片 U2和U3的的地址范圍計(jì)算:A19 A14 A13 A12 A11 A10 A9 A0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 1 1地址范圍為02000H023FFH???cè)萘繛?KB(U1為4KB、U2、U3為1KB、U4、U5為1KB)。第5章5. 1. CPU同外設(shè)交換的信息有三種類型:數(shù)據(jù)信息、狀態(tài)信息和控制信息,請(qǐng)說明CPU是如何通過其三總線(地址總線、數(shù)據(jù)總線和控

7、制總線)同外設(shè)交換這三類信息的?5. 2. 簡述查詢式數(shù)據(jù)傳送方式的工作過程。5. 3. 簡述中斷傳送方式的工作過程。5. 4. 簡述三種DMA傳送方式的區(qū)別。5. 5. 簡述DMA控制器同一般接口芯片的區(qū)別。5. 6. 畫出查詢傳送方式輸出數(shù)據(jù)的流程圖解:讀入狀態(tài)字 N檢查輸出設(shè)備是否準(zhǔn)備好 Y數(shù)據(jù)口輸出數(shù)據(jù),控制口輸出控制信息5. 7. 通過如圖習(xí)51的電路,可以把I/O指令尋址結(jié)構(gòu)改為存儲(chǔ)器映象I/O端口尋址的結(jié)構(gòu),試計(jì)算該電路結(jié)構(gòu)中,I/O端口和存儲(chǔ)器的地址范圍。并扼要說明二種I/O端口尋址的區(qū)別。圖習(xí) 51 存儲(chǔ)器映象I/O解:I/O端口的地址范圍為:F0000HFFFFFH存儲(chǔ)器的

8、地址范圍為:00000HEFFFFH兩者區(qū)別見教材P.2145. 8. 圖習(xí)62為一個(gè)LED接口電路,寫出使8個(gè)LED管自左至右依次發(fā)亮2秒的程序,并說明該接口屬于何種輸入輸出控制方式,為什么?圖習(xí) 62 LED接口解:控制程序?yàn)椋?MOVAL,7FH LOP: OUT20H,AL CALLDELAY2S;調(diào)用延時(shí)2秒子程序 RORAL,1 JMPLOP 該接口屬無條件傳送方式,CPU同LED之間無聯(lián)絡(luò)信號(hào),且無中斷控制邏輯。LED總是已準(zhǔn)備好,可以接收來自CPU的信息。5. 9. 簡要說明8237A三種基本傳送類型的特點(diǎn)。5. 10. 簡要說明8237A四種特殊傳送類型的特點(diǎn)。5. 11 圖

9、習(xí)6-4是一個(gè)具有中斷功能的輸入接口電路,當(dāng)外設(shè)數(shù)據(jù)準(zhǔn)備就緒時(shí),發(fā)一個(gè)READY的正脈沖,向CPU發(fā)中斷請(qǐng)求,請(qǐng)分析該電路的工作過程。圖習(xí)6-4解:該電路工作過程如下:當(dāng)外設(shè)準(zhǔn)備好數(shù)據(jù)后,把數(shù)據(jù)送入數(shù)據(jù)寄存器U1,同時(shí)發(fā)出一個(gè)READY正脈沖送到中斷請(qǐng)求觸發(fā)器U3,U3的Q為高電平,送與門3。U2為中斷允許觸發(fā)器,在傳送數(shù)據(jù)前,由CPU對(duì)U2初始化,即用MOV AL,01H;OUT Y2,AL使U2的D =“1”,則U3的Q端生成的中斷請(qǐng)求信號(hào)通過與門3向CPU發(fā)出中斷請(qǐng)求INTR,CPU若滿足中斷響應(yīng)條件,轉(zhuǎn)入中斷服務(wù)程序,在中斷服務(wù)程序中用IN AL,Y1指令產(chǎn)生負(fù)脈沖,使U1(輸入數(shù)據(jù)寄

10、存器)的OE有效,讀入外設(shè)送入的數(shù)據(jù)。5.12. 具有中斷屏蔽的接口電路中的“屏蔽”同“屏蔽中斷”中的“屏蔽”是否一回事,若不是,有何區(qū)別?5.13. 8086CPU有哪幾種中斷?5.14. 簡要說明8086中斷的特點(diǎn)?5.15. 簡述8086可屏蔽中斷的響應(yīng)過程。5.16. 簡要說明8259A中斷控制器中的IRR、ISR和IMR三個(gè)寄存器的功能。5.17. 中斷應(yīng)答時(shí)序如圖習(xí)54所示,說明前后兩個(gè)INTA周期的任務(wù)。圖習(xí) 54解:從圖可見,該中斷應(yīng)答時(shí)序是8086在最大方式下的總線時(shí)序,在兩個(gè)INTA周期內(nèi), LOCK信號(hào)有效(低電平),通知其他CPU不能向當(dāng)前控制總線的CPU發(fā)出總線請(qǐng)求R

11、Q / GT信號(hào),以保證中斷響應(yīng)周期完整地執(zhí)行。在第一個(gè)INTA有效期間,通知8259A,中斷請(qǐng)求已被接受;在第二個(gè)INTA有效期間,8259A將請(qǐng)求服務(wù)的那個(gè)設(shè)備的中斷類型碼送上AD7AD0。5.18. 有8086中斷電路如圖習(xí)55所示,請(qǐng)回答下列問題:(1)根據(jù)圖中給出條件,寫出五種內(nèi)部中斷1、2、3、4、5的名稱(1、2兩項(xiàng)次序不能顛倒);(2)寫出8086三條引腳6、7、8的符號(hào)及名稱;(3)寫出芯片9的名稱,并簡述其功能;圖習(xí) 55解:1.為單步中斷; 2. 為溢出中斷; 3. 為斷點(diǎn)中斷; 4. 為指令中斷; 5. 為除法出錯(cuò)中斷; (35可互換)6. 不可屏蔽中斷NMI; 7 為

12、可屏蔽中斷INTR8. 為中斷應(yīng)答INTA; 9. 為可編程中斷控制器8259,功能見教材P.258第6章6. 1. 根據(jù)接口電路的功能,簡要說明I/O接口電路應(yīng)包括哪些電路單元?解: 教材P.1896. 2. 扼要說明8255A工作于方式0和方式1的區(qū)別。解: 教材P.1956. 3. 試說明8255A在方式1輸入時(shí)的工作過程。解:教材P.1966. 4. 試說明8255A在方式1輸出時(shí)的工作過程。解:教材P.1966. 5. 8255A的三個(gè)端口在使用時(shí)有什么差別?解:PA口可工作于方式0、方式1、和方式2PB口可工作于方式0、方式1PC口僅可工作于方式0方式0可工作于無條件傳送和查詢傳送

13、方式1和2可工作于查詢傳送和中斷傳送6.6. 說明8251A引腳信號(hào)中-RTS、-CTS、-DTS和-DSR的作用。解:教材P.2276.7. 什么是8251A的方式指令字和命令指令字,對(duì)二者在串行通信中寫入流程進(jìn)行說明。解:教材P.2296.8. 異步通信中,異步的含義是什么?解:這里的異步是指所傳送的字符串中,字符之間是異步的,而各字符內(nèi)各位之間還是同步的。6.9. 8251A的狀態(tài)字哪幾位和引腳信號(hào)有關(guān)?狀態(tài)位TXRDY和引腳信號(hào)TXRDY有什么區(qū)別?它們?cè)谙到y(tǒng)設(shè)計(jì)中有什么用處?解:教材P.2286.10. 試說明8251A芯片控制信號(hào)CS和C/D的功能。解:教材P.2276.11. 8

14、255用作查詢式打印機(jī)接口時(shí)的電路連接和打印機(jī)各信號(hào)的時(shí)序如圖習(xí)82所示,8255的端口地址為80H83H,工作于方式0,試編寫一段程序,將數(shù)據(jù)區(qū)中變量DATA的8位數(shù)據(jù)送打印機(jī)打印,程序以RET指令結(jié)束,并寫上注釋。解:打印程序?yàn)椋篗OVAL,0DH;置STB為“H”O(jiān)UT83H,AL PULL:INAL,82H;查詢BUSY狀態(tài)TESTAL,04HJNZPULLMOVAL,DATA;將DATA送PA口OUT80H,ALMOVAL,0CH;置STB為“L”O(jiān)UT83H,ALMOVAL,0DH;置STB為“H”O(jiān)UT83H,AL;產(chǎn)生負(fù)脈沖選通信號(hào)RET6.12. 鍵盤輸入信息的過程有哪些?解

15、 教材P.2066.13. 若用共陰極LED數(shù)碼管作顯示器,它的接口連接圖如圖習(xí)83所示。寫出顯示7的段選碼。解: 共陰極接法,陰極接地,陽極連數(shù)據(jù)線接”1”,LED顯示,”7”的段選碼為CBA=111,即 07H。6.14. 若輸入設(shè)備輸入的ASCII碼通過8255A端口B,采用中斷方式,將數(shù)據(jù)送入INBUF為首址的輸入緩沖區(qū)中,連接輸入直到遇到$就結(jié)束輸入。假設(shè)此中斷類型碼為52H,中斷服務(wù)程序的入口地址為INTRP。8255A的端口地址為80H83H。(1) 寫出8255A初始化程序(包括把入口地址寫入中斷向量表);(2) 寫出完成輸入一個(gè)數(shù)據(jù),并存入輸入緩沖區(qū)BUF1的中斷服務(wù)程序。

16、解: MOV AL , 84H OUT 83H, AL MOV AL, 04H OUT 83H, AL MOV 4×52H , OFFSET INBUF MOV 4×52H +2 , SEG INBUF STI. INBUF PROC FARMOV BX , OFFSET BUF LOP : IN AL , 81HCMP AL , $ JZ DONEMOV BX , ALINC BXJMP LOPDONE :IRET6.15. 設(shè)異步傳輸時(shí),每個(gè)字符對(duì)應(yīng)1個(gè)起始位、7個(gè)信息位、1個(gè)奇/偶校驗(yàn)位和一個(gè)停止位,如果波特率為9600b/s,則每秒鐘能傳輸?shù)淖畲笞址麛?shù)是什么?解:9

17、600 /( 1+7+1+1)=9606.16. 設(shè)8251A為異步方式,1個(gè)停止位,偶校驗(yàn),7個(gè)數(shù)據(jù)位,波特率因子為16。請(qǐng)寫出其方式字。若發(fā)送使能,接收使能,DTR端輸出低電平,TXD端發(fā)送空白字符,-RTS端輸出低電平,內(nèi)部不復(fù)位,出錯(cuò)標(biāo)志復(fù)位。請(qǐng)給出控制字。 解:方式字為 01111010控制字為 001011116.17. 對(duì)8251A進(jìn)行初始化,要求:工作于異步方式、采用奇校驗(yàn)、指定二個(gè)停止位、7位ASCII字符、波特率因子為16;出錯(cuò)指示處于復(fù)位狀態(tài)、允許發(fā)送、允許接收、數(shù)據(jù)終端就緒,不送出空白字符、內(nèi)部不復(fù)位。解:設(shè)8251A的端口地址為80H和81H則初始化程序?yàn)镸OV AL

18、 ,0DAHOUT 81H , ALMOV AL , 17HOUT 81H , AL6.18. 設(shè)計(jì)一個(gè)采用異步通信方式輸出字符的程序段。規(guī)定波特率因子為64,7個(gè)數(shù)據(jù)位,1個(gè)停止位,用偶校驗(yàn),端口地址為40H,42H,緩沖區(qū)為2000H3000H。解:ADDR8251A EQU 40HBUF EQU 3000H CLIXOR AX , AXMOV DX , ADDR8251AADD DX , 2OUT DX ,ALOUT DX ,ALOUT DX ,ALMOV AL ,40HOUT DX , ALMOV AL ,01111011BOUT DX , ALMOV AL ,00110001BOUT

19、 DX , ALMOV AX ,2000HMOV ES ,AXMOV SI , BUFAGAIN : IN ,AL , DXTEST AL ,01HJZ AGAINMOV AL ,ES: SI SUB DX ,2OUT DX ,AL6.19. 如果8251A的工作方式寄存器內(nèi)容為01111011,那么發(fā)送的字符格式如何?為了使接收的波特率和發(fā)送的波特率分別為300b/s和1200b/s,試問加到-RXC和-TXC上時(shí)鐘信號(hào)的頻率應(yīng)為多少?解:方式字為 01111011B,表示8251A設(shè)定為異步方式,1位起始位,7位數(shù)據(jù)位,1位結(jié)束位,1位偶校驗(yàn)位,波特率因子為64,若接收和發(fā)送的波特率分別為

20、300 b /s 和1200 b / s,則加到RXC和TXC上的時(shí)鐘頻率為300×64和1200×64。6.20. 一個(gè)采用查詢傳送的輸入接口由兩個(gè)端口組成,一個(gè)是數(shù)據(jù)端口,地址為120H,一個(gè)是狀態(tài)端口,地址為121H,用D7位表示就緒位,外設(shè)工作時(shí),已啟動(dòng)外設(shè)。 利用上述接口電路從輸入設(shè)備上輸入1000個(gè)字節(jié)的數(shù)據(jù)送存儲(chǔ)器中BUFFER緩沖區(qū),畫出流程圖,編寫控制程序段。解:該控制程序的流程圖如圖2.34所示。程序段為:LEASI,BUFFERMOVCX,1000LOP:MOV DX,121HLOP1:INAL,DXSHLAL,1JNC LOP1DECDXINAL,D

21、XMOVSI,ALINCSILOOPLOPHLT圖2.34 控制程序流程圖6.21. 一個(gè)采用查詢傳送的輸出接口,其數(shù)據(jù)端口地址為205H,狀態(tài)端口地址為206H,外設(shè)狀態(tài)位用D0傳送,輸出數(shù)據(jù)時(shí)可啟動(dòng)外設(shè),將存儲(chǔ)器緩沖區(qū)BUFFER中的5000個(gè)字節(jié)數(shù)據(jù)輸出,畫出流程圖,編寫控制程序段。解:該控制程序的流程圖如圖2.35所示。程序段為:MOVSI,OFFSET BUFFERMOVCX,5000 LOP1:MOVAL,SIMOVDX,205HOUTDX,ALINCDX LOP2:INAL,DXSHRAL,1JCLOP2INCSILOOPLOP1HLT 圖2.35控制程序流程圖6.22. 用一片

22、8255A控制一組紅、綠、黃燈,如習(xí)圖8-8所示,反復(fù)檢測K1,K2,要求由K1、K2的“閉合”和“斷開”控制紅、綠、黃三燈的點(diǎn)亮。當(dāng)K1合,K2合時(shí),黃燈亮; K1合,K2斷時(shí),紅燈亮; K1斷,K2合時(shí),綠燈亮; K1斷,K2斷時(shí),黃燈亮;請(qǐng)編制初始化程序以及控制程序。習(xí)圖8-8已知8255A的端口地址為60H63H。解: 初始化程序及控制程序如下:MOVAL,90H;初始化OUT63H,AL LOP: INAL,60HANDAL,03HJZL3;K1,K2全合CMPAL,03HJEL3;K1,K2全斷CMPAL,02H JEL2;K1合,K2斷CMPAL,01H JEL1;K1斷,K2合

23、JMPLOPL1:MOVAL,02H;亮綠燈OUT62H,ALJMPLOPL2:MOVAL,01H;亮紅燈OUT62H,ALJMPLOPL3:MOVAL,04H;亮黃燈OUT62H,ALJMPLOP6.23. 教材圖6-19的鍵盤接口中,若按下4行3列的鍵,問執(zhí)行結(jié)果BL,BH,CX和AL各為何值?解:BL中的內(nèi)容為鍵號(hào),4行3列的鍵號(hào)為35, 則BL=35=23H;BH中的內(nèi)容為行碼為EFH(11101111),但在執(zhí)行后已指向下一行,故BH=DFH(11011111);CX中的內(nèi)容為計(jì)數(shù)值,掃描4行時(shí)CX=4;AL中的內(nèi)容為讀出之列碼,3列為F7H(11110111),但執(zhí)行結(jié)束要循環(huán)右移

24、到CF=1為止,此時(shí)AL=7FH(01111111)。6.24. 教材圖6-21的8位數(shù)字顯示器接口圖中,若7段LED采用共陰極接法,要求程序不改變,硬件線路應(yīng)作何變動(dòng)?解:為使程序不改變,硬件連接可作如下改動(dòng):8個(gè)數(shù)碼管的共陰極分別通過緩沖器同PA口連接,而每個(gè)陽極經(jīng)過反相器同PB口的各位相連。當(dāng)選擇PA口送出的位選碼為“0”時(shí),如果PB口送出的段選碼為“0”,則對(duì)應(yīng)的發(fā)光管就發(fā)光,這同原來的共陽接法一樣。6.25. 習(xí)圖6-4為一微機(jī)系統(tǒng)的結(jié)構(gòu)框圖,#1、#2、#3是CPU總線,其中 #3為控制總線,h為M/-IO信號(hào)。試分析該結(jié)構(gòu)框圖,說明 #1、#2各為何種總線,ag各為何種信號(hào),U1

25、U9為何種器件?習(xí)圖8-12解:該微機(jī)系統(tǒng)由RAM、ROM、鍵盤、顯示器、打印機(jī)及其接口組成。CPU三總線中已知 #3為控制總線,#1與 #2中 #2是雙向總線,因此為數(shù)據(jù)總線;#1為地址總線。信號(hào)h接U1的控制端G,h經(jīng)反相后接U2的控制端G,h為M/IO,U1,U2為地址譯碼器,其中U1供上部I/O接口的地址譯碼,U2供下部存儲(chǔ)器的地址譯碼。U3為鍵盤接口是輸入接口應(yīng)為三態(tài)緩沖器,U4,U5分別是顯示器接口和打印機(jī)接口是輸出接口,應(yīng)為鎖存器。U6,U7的數(shù)據(jù)線為雙向線,應(yīng)為RAM,而U8,U9的數(shù)據(jù)線為輸出線,應(yīng)為ROM。信號(hào)a,f,g為RD信號(hào),b,c為WR信號(hào),d,e為RD或WR信號(hào)。

26、6.26. 8086CPU通過8255A同發(fā)光二極管L0L7以及開關(guān)S0S7的接口電路如習(xí)圖6-5所示,發(fā)光二極管L0L7不斷顯示對(duì)應(yīng)開關(guān)S0S7的通斷狀態(tài)。要求:(1)S0S7的狀態(tài)每隔半分鐘改變一次,把每次變化的狀態(tài)記錄在從2000H:1000H開始的內(nèi)存單元中;(2)S接通時(shí),對(duì)應(yīng)的L熄滅,S斷開時(shí),對(duì)應(yīng)的L發(fā)亮(即S0斷開,L0發(fā)亮;S0接通,L0熄滅);(3)連續(xù)工作24小時(shí)結(jié)束。用8086匯編語言編寫的控制程序如下,請(qǐng)?zhí)钌铣绦蛑锌杖钡牟糠郑òㄖ噶?、操作?shù)或標(biāo)號(hào),初始化時(shí)無關(guān)項(xiàng)置“0”)。START:MOVAL, ;初始化MOVDX, DX,ALMOVAX, MOVDS,AX LO

27、P:MOVCX, ;工作24小時(shí) LOP1:MOVBX, LOP2:MOVDX, ;讀PA口 AL,DXMOVBX,AL;存S7S0INC XORAL, ;寫PB口MOVDX, DX,AL CALLDELAY30S LOOP HLT8255A的方式控制字如下:延時(shí)半分鐘子程序:DELAY30S PROCMOV BX,3000DELAY: MOV CX,2801WAIT: LOOP WAIT DEC BX JNZ DELAY RETDELAY30S ENDP 1D6D5D4D3D2D1D0D0 PC30D1 PB 0 輸出;D2 PC74 1 輸入D4 PAD3 PB工作方式,0=方式0,1=方

28、式1D5D6 PA工作方式,00=方式0,01=方式1,10=方式2習(xí)圖6-5解:8255A端口地址計(jì)算:A8A7A6A5A4A3A2A1A0 1 0 1 1 1 0 0×× 端口地址為170H173H8255A初始化:MOVAL,10010000B;PA口工作于方式0,輸入MOVDX,173H;PB口工作于方式0,輸出OUTDX,AL開關(guān)狀態(tài)記錄存放在內(nèi)存2000H:1000H開始的內(nèi)存單元中,必須對(duì)DS賦值,指令為MOVAX,2000HMOVDS,AX開關(guān)狀態(tài)每隔半分鐘改變一次,控制電路連續(xù)工作24小時(shí),則采樣次數(shù)為24小時(shí)/0.5分鐘 = 24×60/0.5

29、=2880次。要求開關(guān)S接通,對(duì)應(yīng)燈熄滅,開關(guān)S接通時(shí)輸入“0”,而燈熄滅要求輸出“1”,因此必須將PA口讀入內(nèi)容取反后輸出到PB口。調(diào)用子程序前必須保護(hù)現(xiàn)場,返回子程序前必須恢復(fù)現(xiàn)場。這里的現(xiàn)場即子程序中所用到的寄存器。則答案應(yīng)為90H0FFH173H171HOUTOUT2000HPUSHBX2880PUSHCX1000HPOPCX170HPOPBXINLOP2BX第7章7.1. 說明82535的方式2與方式3的工作特點(diǎn)。解:可輸出重復(fù)波形,既可軟件觸發(fā)啟動(dòng),又可硬件觸發(fā)啟動(dòng)。7.2. 說明82535的方式1與方式5的工作特點(diǎn)。解:只能采用硬件觸發(fā)啟動(dòng)。7.3. 82535在寫入計(jì)數(shù)初值時(shí),

30、二進(jìn)制計(jì)數(shù)和十進(jìn)制計(jì)數(shù)有無區(qū)別?若有,有何區(qū)別?解: 采用二進(jìn)制計(jì)數(shù)時(shí),將計(jì)算所得的數(shù)值采用二進(jìn)制、十進(jìn)制或十六進(jìn)制表示都可以,例如計(jì)數(shù)初值為50,可寫成50、32H或00110010B都可;采用十進(jìn)制計(jì)數(shù)時(shí),必需將計(jì)算所得的數(shù)值寫成BCD碼表示,例如, 計(jì)數(shù)初值為50,必需寫成50H。7.4. 定時(shí)器8253通道0按方式3(方波發(fā)生器)工作,時(shí)鐘CLK0的頻率為1MHZ,要求輸出方波的頻率為40KHZ,此時(shí)寫入的計(jì)數(shù)初值應(yīng)為多少?輸出方波的“1”和“0”各占多少時(shí)間。解:計(jì)數(shù)初值為fCLK0 / fOUT0 = 1MHz / 40KHz = 25方波的 1 占13s, 0 占12s7.5.

31、定時(shí)器8253輸入時(shí)鐘頻率為1MHZ,并設(shè)定為按BCD碼計(jì)數(shù),若寫入的計(jì)數(shù)初值為0080H,則該通道定時(shí)時(shí)間是多少? 解: 80s:(TCLK = 1 / 1MHz =1s )7.6. 試編程,將8253計(jì)數(shù)器0設(shè)置為模式1,計(jì)數(shù)初值為3000H,計(jì)數(shù)器1設(shè)置為模式2,計(jì)數(shù)初值為2010H;計(jì)數(shù)器2設(shè)置為模式4,計(jì)數(shù)初值為4030H。解: 0通道 方式1 n0 = 3000H1通道 方式2 n1 = 2010H 圖習(xí) 832通道 方式4 n3 = 4030H MOV AL , 22H (00110010B) OUT 83H , AL MOV AL , 30HOUT 80H , AL MOV A

32、L , 74H (01110100B) OUT 83H , AL MOV AL , 10HOUT 81H , AL MOV AL , 20HOUT 81H , AL MOV AL , 0B8H (10111000B) OUT 83H , AL MOV AL , 30HOUT 82H , AL MOV AL , 40HOUT 80H , AL 7.7. 82535的計(jì)數(shù)通道0連接如圖習(xí)77,試回答(1) 計(jì)數(shù)通道0工作于何種工作方式,并寫出工作方式名稱(2) 寫出計(jì)數(shù)通道0的計(jì)數(shù)初值(要列出計(jì)算式)圖習(xí) 71解:方式2,頻率發(fā)生器n0 = 1ms / 400ms = 1ms / 0.4 = 25

33、007. 8. 若用8253計(jì)數(shù)器對(duì)設(shè)備的轉(zhuǎn)軸的旋轉(zhuǎn)速度進(jìn)行測試,接口電路如圖習(xí)72所示。從圖可知,若與軸相連的轉(zhuǎn)盤上均勻地鉆有每圈50個(gè)孔,當(dāng)軸旋轉(zhuǎn)時(shí),通過光電轉(zhuǎn)換,每通過一個(gè)小孔,產(chǎn)生一個(gè)正脈沖,當(dāng)軸旋轉(zhuǎn)一圈,就會(huì)有50個(gè)脈沖通過CLK輸入8253計(jì)數(shù)器進(jìn)行減法計(jì)數(shù),若假設(shè)此轉(zhuǎn)軸的轉(zhuǎn)速范圍在501000轉(zhuǎn)/秒,并設(shè)8253的端口地址為84H87H。習(xí) 72(1) 若采用定時(shí)測試已轉(zhuǎn)換過的脈沖個(gè)數(shù)而轉(zhuǎn)換為測試轉(zhuǎn)軸的轉(zhuǎn)速,單位為轉(zhuǎn)/秒。說明它的計(jì)算過程?(2) 若用計(jì)數(shù)器0對(duì)脈沖計(jì)數(shù),用計(jì)數(shù)器1作為定時(shí)器,設(shè)它的CLK1,頻率為200KHZ,用定時(shí)100ms來計(jì)數(shù)。寫出計(jì)數(shù)器0、1的工作方式控

34、制字的計(jì)數(shù)初值,并注釋?寫出8253的初始化程序?解: (1) 若在定時(shí)T時(shí)間間隔內(nèi),測得計(jì)數(shù)脈沖個(gè)數(shù)為n,由于旋轉(zhuǎn)一圈有50個(gè)脈沖,所以在T時(shí)間內(nèi)旋轉(zhuǎn)n / 50T (轉(zhuǎn) / 秒)。(2)計(jì)數(shù)器0作為對(duì)脈沖個(gè)數(shù)計(jì)數(shù),可以采用方式0,計(jì)數(shù)初值可設(shè)置為最大值0000H,因?yàn)榭蓽y的轉(zhuǎn)速范圍為501000轉(zhuǎn) / 秒,即250050000個(gè)脈沖 / 秒,按題意,采用100ms定時(shí)采集,脈沖個(gè)數(shù)也在2505000之間,因此,采用BCD碼,從10000開始減法計(jì)數(shù)。 計(jì)數(shù)器1作為100ms定時(shí)器,由它的OUT1作為定時(shí)中斷請(qǐng)求,可設(shè)置為方式2,因?yàn)槎〞r(shí)時(shí)間間隔T=NT0, N=T/T0按題意:T = 0.

35、1秒, f0=200×103,所以N=20000。計(jì)數(shù)器0的工作方式控制字為:00110001B (31H) 計(jì)數(shù)初值N0=0000H,即10000計(jì)數(shù)器0的工作方式控制字為:01110100B (74H) 計(jì)數(shù)初值N1=20000H,即4E20H8253初始化程序MOV AL , 31HOUT 87H , ALMOV AL , 00HOUT 84H , ALOUT 84H , ALMOV AL , 74HOUT 87H , ALMOV AL ,20HOUT 85H , ALMOV AL , 4EHOUT 85H , AL7.9習(xí)圖8-9為采用8253-5產(chǎn)生定時(shí)中斷信號(hào). 36.

36、習(xí)圖8-9為采用8253-5產(chǎn)生定時(shí)中斷信號(hào),送8259A的IR2,已知fCLK=1MHz要求每隔1小時(shí)發(fā)出一個(gè)中斷請(qǐng)求,IR2的中斷類型號(hào)為0AH,中斷服務(wù)程序的人口地址為INTER,8253-5的端口地址為180H183H,試編制8253-5的初始化程序,并把中斷服務(wù)程序的人口地址送入中斷向量表。解:本題采用2個(gè)計(jì)數(shù)通道串聯(lián)使用,要求兩個(gè)計(jì)數(shù)通道的計(jì)數(shù)初始乘積為:n0×n1=TOUT1/TCLK0TCLK0=1/fCLK0=1/1MHz=1msn0×n1=3600s/1ms=36×108,可選取n0×n1=6×104 。因?yàn)閚0和n1大于1

37、0000,必需采用二進(jìn)制計(jì)數(shù)。為方便起見,設(shè)定二個(gè)計(jì)數(shù)通道都工作于方式2。8253初始化程序?yàn)椋篗OVAL,00110100B;通道0初始化MOVDX,183HOUTDX,ALMOVAL,01110100B;通道1初始化OUTDX,ALMOVAX,60000;通道0寫入計(jì)數(shù)初值MOVDX,180HOUTDX,ALMOVAL,AHOUTDX,ALMOVDX,181H ;通道1寫入計(jì)數(shù)初值MOVAX,60000OUTDX,ALMOVAL,AHOUTDX,ALMOV AX,0000H ;ES指向0000H(中斷向量表首地址在00000H)MOVES,AXMOV DI,4×0AH ;DI指向

38、IR2的中斷向量地址指針CLDMOVAX,OFFSET INTER;偏移量寫入中斷向量表STOSWMOV AX,SEG INTER;段基值寫入中斷向量表STOSWHLT7.108253-5的通道0按方式3工作,時(shí)鐘CLK0的頻率為1MHz,要求輸出方波的重復(fù)頻率為40KMHz,此時(shí)應(yīng)如何寫入計(jì)數(shù)值。解: 通道0 方式3 fCLK0 =1MHz fOUT0=40KHz n0 = fCLK0 / fOUT0 = 1MHz / 40KHz = 25 MOV AL , 00010111 (17H)OUT 83H , ALMOV AL , 25HOUT 80H , AL( 設(shè)8253的端口地址為80H8

39、3H )7.11設(shè)8253-5與8086相連,8253-5的時(shí)鐘頻率為2 MHz,其口地址為340H343H,通道0工作于定時(shí)方式,要求每20 ms向8086發(fā)出一中斷請(qǐng)求信號(hào),通道1要求輸出頻率為1000 Hz的方波,請(qǐng)編寫初始化程序。解:8253的端口地址為340H343H , fCLK=2MHz ,TCLK = 0.5s8253計(jì)數(shù)器0: TOUT0 = 20ms 計(jì)數(shù)器1:fCLK1=1KHz TOUT1 = 1ms n0 = TOUT0 / TCLK0 = 20ms / 0.5s = 40000 n0 = TOUT0 / TCLK0 = 1ms / 0.5s = 2000MOVAL,

40、00110100B (34H);通道0初始化MOVDX,343HOUTDX,AL MOVAX,40000MOVDX,340HOUTDX,AL MOVAL,AHOUTDX,AL MOVAL,01100111 (67H);通道1初始化MOVDX,343HOUTDX,AL MOVAL,20HMOVDX,341HOUTDX,AL7.128255A的PA口寫8個(gè)LED管連接如習(xí)圖7-4,用8253作定時(shí)器控制8個(gè)LED管自下向上閃動(dòng),8253連接如習(xí)圖7-5,閃動(dòng)頻率為每秒10次(即每秒鐘每個(gè)LED管亮10次),8253三個(gè)計(jì)數(shù)通道和控制字寄存器的地址為40H43H,8255A的端口地址為60H63H,

41、其控制程序如下:主程序 MOVAL,80H(1)OUT63H,AL(2)MOVAL,34H(3)OUT43H,AL(4)MOVAL,0A8H(5)OUT40H,AL(6)MOVAL,61H(7)OUT40H,AL(8)MOVAL,7FH(9)OUT60H,AL(10)STILOP:HLTJMPLOP中斷服務(wù)程序:習(xí)圖7-4INTROUTSEGMENTAT1480H(11)ORG3000H(12)RORAL,1(13)OUT60H,AL(14)IRET(15)試問:(1)從程序中給出的數(shù)據(jù),計(jì)算8253中CLK0的時(shí)鐘周期TCLK0,以及該控制程序中所使用的中斷服務(wù)程序的中斷類型號(hào)n的值,中斷向

42、量表見習(xí)圖7-6。(2)若閃動(dòng)頻率改為1分鐘1次,且為自上到下閃動(dòng),可采用如習(xí)圖7-7所示的串接形式,中斷類型為(1)中習(xí)7-5圖8-15計(jì)算值加1,請(qǐng)對(duì)程序作最小程度的更改,以滿足上述要求(計(jì)數(shù)通道0工作不變)。習(xí)圖7-6 習(xí)圖7-7解:: (1)從主程序看,計(jì)數(shù)初值為61A8H=25000n0 = Tout0 / TCLK0,TCLK0= Tout0 / n0Tout0 = 1/10s÷8 = 12.5 msTCLK0 = Tout0 / n0 = 12.5 ms / 25000 = 0.5sfCLK0 = 1/TCLK0 = 2MHz從中斷服務(wù)程序看,中斷向量為1480H:30

43、00H,查中斷向量表得中斷向量的表指針為00034H,00034H/4=13=0DH(中斷類型號(hào))。這里必須指出中斷向量的高8位1480H存在表內(nèi)高地址,低8位3000存在表內(nèi)低地址,因此所查中斷向量從低地址到高地址為00H,30H,80H,14H。(2)閃動(dòng)頻率改為1分鐘1次即60秒內(nèi)8個(gè)LED各亮1次。每管亮60秒/8 = 7.5秒TCLK1=TOUT0=12.5ms,TOUT1=7.5sn1=TOUT1/TCLK1=7.5s/12.5ms=600=0258H在主程序中指令(8)與指令(9)之間插入對(duì)計(jì)數(shù)通道1的初始化程序:MOVAL,74HOUT43H,ALMOVAL,58HOUT41H

44、,ALMOVAL,02HOUT41H,AL指令9MOVAL,7FH改為MOVAL,F(xiàn)EH據(jù)題意此時(shí)中斷類型號(hào)為上一小題的ODH+1=0EH,0EH×4=38H,查表得中斷向量為3000:1480H。7.13讓8253計(jì)數(shù)器0在1ms脈沖信號(hào)源作CLK0且工作在方式3定時(shí)1分鐘,用8255的PC6提供GATE0,在定時(shí)期間,由PC7控制的燈亮(PC7=1,亮),對(duì)OUT0的檢測通過PC0進(jìn)行,定時(shí)結(jié)束燈滅,先畫出脈沖信號(hào)源、8253、8255的連接關(guān)系圖,再編寫程序段。(8253,8255采用PC機(jī)上的端口地址)解:(1) 連接圖見圖2.39 ( 圖中電阻R接PC7 )圖2.39程序段

45、:MOVAL,81H;8255方式字OUT63H,ALMOVAL,36H;8253計(jì)0初始化OUT43H,ALMOVAL,60HOUT40H,ALMOVAL,0EAHOUT40H,ALMOVAL,0DH;GATE0=1OUT63H,ALMOVAL,0FH;燈亮OUT63H,ALLOP1:INAL,62H;等待半分鐘高電平結(jié)束SHRAL,1JCLOP1LOP2:INAL,62H;等待半分鐘低電平結(jié)束SHRAL,1JNCLOP2MOVAL,0EH;燈滅OUT63H,ALHLT7.14. 有個(gè)1s的脈沖信號(hào)源送8253的計(jì)數(shù)器1利用軟件方式擴(kuò)大定時(shí)1秒,每秒鐘從8255的PA口讀入一組開關(guān)數(shù)并送PB

46、口的LED管顯示,設(shè)8253,8255的端口地址分別為40H43H,60H63H且只用10條地址線(A0A9)用于端口譯碼。(1)請(qǐng)完成畫出脈沖信號(hào)源與8253,8255以及開關(guān)組和LED管之間的連接關(guān)系; 寫出8253和8255的-CS的表達(dá)式; 畫出8253和8255的-CS的邏輯電路。(2)編寫程序段: 編寫對(duì)8253計(jì)數(shù)器1初始化程序段(僅50ms); 編寫對(duì)8253的初始化程序以及一秒到后從PA口讀入一個(gè)字節(jié)開關(guān)數(shù)并送PB口顯示的程序段。解: a. 連接圖見圖2.39. 圖2.40b.8253的CS=A9 A8 A7A6 A5 A4 A3 A2 8255的CS= A9 A8A7A6A

47、5A4 A3 A2c.8253和8255的CS的邏輯電路如圖2.41所示:圖2.41a.8253初始化程序段如下:MOVAL,01110110B;計(jì)1方式字OUT43H,ALMOVAL,50H;計(jì)1定時(shí)50 ms,計(jì)數(shù)值為50000OUT41H,ALMOVAL,0C3HOUT41H,ALb.8255的初始化及從PA口讀入一個(gè)開關(guān)字節(jié)數(shù)送PB口顯示的程序段如下:MOVAL,10010000B;8255方式字,PA口方式0輸入,PB口方式0輸出OUT63H,ALINAL,60H;從PA口輸入OUT61H,AL;從PB口輸入第8章8. 1. 說明DAC0832芯片中8位輸入寄存器和8位DAC寄存器的

48、作用及工作過程。解:見教材8. 2. 說明D/A轉(zhuǎn)換器芯片對(duì)輸出電路的要求。解:數(shù)/模轉(zhuǎn)換器一般為電流輸出,若實(shí)際應(yīng)用中需要模擬電壓,通常加接運(yùn)算放大器,用以實(shí)現(xiàn)IV的轉(zhuǎn)換。另外還有單極性輸出和雙極性輸出的要求8. 3. 如圖習(xí)81所示的A/D轉(zhuǎn)換器,試說明器件的運(yùn)行過程,及各信號(hào)的作用。圖習(xí) 81 解:輸入模擬量,輸出數(shù)字量(粗箭頭)。START為啟動(dòng)信號(hào),上跳沿時(shí)觸發(fā)啟動(dòng)模擬輸入信號(hào)轉(zhuǎn)換。啟動(dòng)后,檢查EOC(轉(zhuǎn)換結(jié)束信號(hào)),轉(zhuǎn)換結(jié)束時(shí)EOC=L,從輸出端得到轉(zhuǎn)換后的數(shù)字量。8.4ADC0809通過并行接口芯片8255與系統(tǒng)總線相連的接口電路如圖習(xí)82所示,假定8255端口片選地址范圍為80H83H,ADC0809輸出允許使能地址范圍為84H87H。試編寫一個(gè)子程序完成通道IN0的A/D數(shù)據(jù)輸入。(應(yīng)包括程序注釋與8255芯片的初始化部分)圖習(xí) 82解: MOV AL , 10011000B (98H)OUT 83H , ALMOV AL , 08HOUT 82H , ALMOV AL ,00HOUT 82H , ALMOV AL ,08HOUT 82H , ALLOP : IN AL , 82H TEST AL , 80H J

溫馨提示

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

評(píng)論

0/150

提交評(píng)論