微機原理與接口技術(shù)樓順天版課后題答案_第1頁
微機原理與接口技術(shù)樓順天版課后題答案_第2頁
微機原理與接口技術(shù)樓順天版課后題答案_第3頁
微機原理與接口技術(shù)樓順天版課后題答案_第4頁
微機原理與接口技術(shù)樓順天版課后題答案_第5頁
已閱讀5頁,還剩40頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、微機原理與接口技術(shù) 樓順天 周佳社編著 科學(xué)出版社找了好久,終于在期末從老師那兒弄了一份,希望對大家有用!5章習(xí)題1. 微處理器的外部結(jié)構(gòu)表現(xiàn)為 數(shù)量有限的輸入輸出引腳 ,它們構(gòu)成了微處理器級總線。2. 微處理器級總線經(jīng)過形成電路之后形成了 系統(tǒng)級總線 。3. 簡述總線的定義及在計算機系統(tǒng)中采用標(biāo)準化總線的優(yōu)點。答:總線是計算機系統(tǒng)中模塊(或子系統(tǒng))之間傳輸數(shù)據(jù)、地址和控制信號的公共通道,它是一組公用導(dǎo)線,是計算機系統(tǒng)的重要組成部分。采用標(biāo)準化總線的優(yōu)點是:1) 簡化軟、硬件設(shè)計。2) 簡化系統(tǒng)結(jié)構(gòu)。3) 易于系統(tǒng)擴展。4) 便于系統(tǒng)更新。5) 便于調(diào)試和維修。4. 在微型計算機應(yīng)用系統(tǒng)中,按

2、功能層次可以把總線分成哪幾類。答:在微型計算機應(yīng)用系統(tǒng)中,按功能層次可以把總線分成:片內(nèi)總線、元件級總線、系統(tǒng)總線和通信總線。5. 簡述RESET信號的有效形式和系統(tǒng)復(fù)位后的啟動地址。答:RESET為系統(tǒng)復(fù)位信號,高電平有效,其有效信號至少要保持四個時鐘周期,且復(fù)位信號上升沿要與CLK下降沿同步。系統(tǒng)復(fù)位后的啟動地址為0FFFF0H。即:(CS)=0FFFFH,(IP)=0000H。6. 8086 CPU的信號在訪問存儲器時為 高 電平,訪問I/O端口時為 低 電平。7. 在8086系統(tǒng)總線結(jié)構(gòu)中,為什么要有地址鎖存器?答:8086CPU有20條地址線和16條數(shù)據(jù)線,為了減少引腳,采用了分時復(fù)

3、用,共占了20條引腳。這20條引腳在總線周期的T1狀態(tài)輸出地址。為了使地址信息在總線周期的其他T狀態(tài)仍保持有效,總線控制邏輯必須有一個地址鎖存器,把T1狀態(tài)輸出的20位地址信息進行鎖存。8. 根據(jù)傳送信息的種類不同,系統(tǒng)總線分為 數(shù)據(jù)總線 、 地址總線 和 控制總線 。9. 三態(tài)邏輯電路輸出信號的三個狀態(tài)是 高電平 、 低電平 和 高阻態(tài) 。10. 在8086的基本讀總線周期中,在狀態(tài)開始輸出有效的ALE信號;在狀態(tài)開始輸出低電平的信號,相應(yīng)的為_低_電平,為_低_電平;引腳AD15 AD0上在狀態(tài)期間給出地址信息,在狀態(tài)完成數(shù)據(jù)的讀入。11. 利用常用芯片74LS373構(gòu)成8086系統(tǒng)的地址

4、總線, 74LS245作為總線收發(fā)器構(gòu)成數(shù)據(jù)總線,畫出8086最小方式系統(tǒng)總線形成電路。答:8086最小方式系統(tǒng)總線形成電路如圖5.1所示。圖5.1 8086最小方式系統(tǒng)總線形成電路12. 微機中的控制總線提供 H 。A. 數(shù)據(jù)信號流;B. 存儲器和I/O設(shè)備的地址碼;C. 所有存儲器和I/O設(shè)備的時序信號;D. 所有存儲器和I/O設(shè)備的控制信號;E. 來自存儲器和I/O設(shè)備的響應(yīng)信號;F. 上述各項;G. 上述C,D兩項;H. 上述C,D和E三項。13. 微機中讀寫控制信號的作用是 E 。A 決定數(shù)據(jù)總線上數(shù)據(jù)流的方向;B 控制存儲器操作讀/寫的類型;C 控制流入、流出存儲器信息的方向;D

5、控制流入、流出I/O端口信息的方向;E 以上所有。14. 8086 CPU工作在最大方式,引腳應(yīng)接_地_。15. RESET信號在至少保持4個時鐘周期的 高 電平時才有效,該信號結(jié)束后,CPU內(nèi)部的CS為 0FFFFH ,IP為 0000H ,程序從 0FFFF0H 地址開始執(zhí)行。16. 在構(gòu)成8086最小系統(tǒng)總線時,地址鎖存器74LS373的選通信號G應(yīng)接CPU的 ALE 信號,輸出允許端應(yīng)接 地 ;數(shù)據(jù)收發(fā)器74LS245的方向控制端DIR應(yīng)接 信號,輸出允許端應(yīng)接信號。17. 8086 CPU在讀寫一個字節(jié)時,只需要使用16條數(shù)據(jù)線中的8條,在 一 個總線周期內(nèi)完成;在讀寫一個字時,自然

6、要用到16條數(shù)據(jù)線,當(dāng)字的存儲對準時,可在 一 個總線周期內(nèi)完成;當(dāng)字的存儲為未對準時,則要在 兩 個總線周期內(nèi)完成。18. CPU在 狀態(tài)開始檢查READY信號,_高_電平時有效,說明存儲器或I/O端口準備就緒,下一個時鐘周期可進行數(shù)據(jù)的讀寫;否則,CPU可自動插入一個或幾個 等待周期(TW ) ,以延長總線周期,從而保證快速的CPU與慢速的存儲器或I/O端口之間協(xié)調(diào)地進行數(shù)據(jù)傳送。19. 8086最大系統(tǒng)的系統(tǒng)總線結(jié)構(gòu)較最小系統(tǒng)的系統(tǒng)總線結(jié)構(gòu)多一個芯片 8288總線控制器_。20. 微機在執(zhí)行指令 MOV DI,AL時,將送出的有效信號有 B C 。ARESET B.高電平的信號 C. D

7、.21. 設(shè)指令MOV AX,DATA 已被取到CPU的指令隊列中準備執(zhí)行,并假定DATA為偶地址,試畫出下列情況該指令執(zhí)行的總線時序圖:(1)沒有等待的8086最小方式;(2)有一個等待周期的8086最小方式。答:(1)沒有等待的8086最小方式時序如圖5.2所示。圖5.2 沒有等待的8086最小方式時序(2)有一個等待周期的8086最小方式時序圖如圖5.3所示。圖5.3有一個等待周期的8086最小方式時序圖22. 上題中如果指令分別為:(1) MOV DATA+1,AX(2) MOV DATA+1,AL(3) OUT DX,AX (DX的內(nèi)容為偶數(shù) )(4) IN AL,0F5H重做上題(

8、1)。答:(1)因為DATA為偶地址,則DATA+1為奇地址。故要完成本條指令,需要兩個總線周期。時序圖如圖5.4所示。圖5.4 執(zhí)行MOV DATA+1,AX指令的時序參考圖(2) DATA+1雖然為奇地址,但是AL為八位存儲器,故本條指令需用一個總線周期,時序圖如圖5.5所示。圖5.5 執(zhí)行MOV DATA+1,AL指令的時序參考圖(3) 執(zhí)行OUT DX,AX(DX的內(nèi)容為偶數(shù) )指令的時序圖如圖5.6所示。圖5.6 執(zhí)行OUT DX,AX指令的時序參考圖(4) 執(zhí)行IN AL,0F5H指令的時序圖如圖5.7所示。圖5.7 執(zhí)行IN AL,0F5H指令的時序參考圖23 8086最小方式下

9、,讀總線周期和寫總線周期相同之處是:在 狀態(tài)開始使ALE信號變?yōu)橛行?高 電平,并輸出信號來確定是訪問存儲器還是訪問I/O端口,同時送出20位有效地址,在狀態(tài)的后部,ALE信號變?yōu)?低 電平,利用其下降沿將20位地址和的狀態(tài)鎖存在地址鎖存器中;相異之處從 狀態(tài)開始的數(shù)據(jù)傳送階段。6章習(xí)題1 簡述內(nèi)存儲器的分類及每種存儲器的用途?解:內(nèi)存儲器按其工作方式的不同,可以分為隨機存取存儲器(簡稱隨機存儲器或RAM)和只讀存儲器(簡稱ROM)。隨機存儲器。隨機存儲器允許隨機的按任意指定地址向內(nèi)存單元存入或從該單元取出信息,對任一地址的存取時間都是相同的。由于信息是通過電信號寫入存儲器的,所以斷電時RAM

10、中的信息就會消失。計算機工作時使用的程序和數(shù)據(jù)等都存儲在RAM中,如果對程序或數(shù)據(jù)進行了修改之后,應(yīng)該將它存儲到外存儲器中,否則關(guān)機后信息將丟失。通常所說的內(nèi)存大小就是指RAM的大小,一般以KB或MB為單位。 只讀存儲器。只讀存儲器是只能讀出而不能隨意寫入信息的存儲器。ROM中的內(nèi)容是由廠家制造時用特殊方法寫入的,或者要利用特殊的寫入器才能寫入。當(dāng)計算機斷電后,ROM中的信息不會丟失。當(dāng)計算機重新被加電后,其中的信息保持原來的不變,仍可被讀出。ROM適宜存放計算機啟動的引導(dǎo)程序、啟動后的檢測程序、系統(tǒng)最基本的輸入輸出程序、時鐘控制程序以及計算機的系統(tǒng)配置和磁盤參數(shù)等重要信息。2.簡述存儲器的主

11、要技術(shù)指標(biāo)有哪些?解:存儲器的主要技術(shù)指標(biāo)有:存儲容量、讀寫速度、非易失性、可靠性等。3.在實際工程應(yīng)用中,存儲器芯片的速度怎樣估算?解:在選擇存儲器芯片時應(yīng)注意是否與微處理器的總線周期時序匹配。作為一種保守的估計,在存儲器芯片的手冊中可以查得最小讀出周期tcyc(R)(Read Cycle Time)和最小寫周期tcyc(W)(Write Cycle Time)。如果根據(jù)計算,微處理器對存儲器的讀寫周期都比存儲器芯片手冊中的最小讀寫周期大,那么我們認為該存儲器芯片是符合要求的,否則要另選速度更高的存儲器芯片。8086CPU對存儲器的讀寫周期需要4個時鐘周期(一個基本的總線周期)。因此,作為一

12、種保守的工程估計,存儲器芯片的最小讀出時間應(yīng)滿足如下表達式:tcyc(R)4TtdatDT其中:T為8086微處理器的時鐘周期;tda為8086微處理器的地址總線延時時間;tD為各種因素引起的總線附加延時。這里的tD應(yīng)該認為是總線長度、附加邏輯電路、總線驅(qū)動器等引起的延時時間總和。同理,存儲器芯片的最小寫入時間應(yīng)滿足如下表達式:tcyc(W)4TtdatDT4.用下列RAM芯片構(gòu)成32kB存儲器模塊,各需多少芯片?16位地址總線中有多少位參與片內(nèi)尋址?多少位可用作片選控制信號?(1)1k×1 (2)1k×4 (3)4k×8 (4)16k×4解:(1)1k

13、×1 片,片內(nèi)尋址:,共10位; 片選控制信號:,共6位。(2)1k×4 片,片內(nèi)尋址:,共10位; 片選控制信號:,共6位。(3)4k×8 片,片內(nèi)尋址:,共12位; 片選控制信號:,共4位。(4)16k×4片,片內(nèi)尋址:,共14位; 片選控制信號:,共2位。5.若存儲器模塊的存儲容量為256kB,則利用上題中給出的RAM芯片,求出構(gòu)成256kB存儲模塊各需多少塊芯片?20位地址總線中有多少位參與片內(nèi)尋址?多少位可用作片選控制信號?解:(1)1k×1 片,片內(nèi)尋址:,共10位; 片選控制信號:,共10位。(2)1k×4 片,片內(nèi)尋址

14、:,共10位; 片選控制信號:,共10位。(3)4k×8 片,片內(nèi)尋址:,共12位; 片選控制信號:,共8位。(4)16k×4片,片內(nèi)尋址:,共14位; 片選控制信號:,共6位。6.一臺8位微機系統(tǒng)的地址總線為16位,其存儲器中RAM的容量為32kB,首地址為4000H,且地址是連接的。問可用的最高地址是多少?解:32K=8000H,所以,最高地址為:4000H+8000H-1=BFFFH則,可用的最高地址為0BFFFH.7.某微機系統(tǒng)中內(nèi)存的首地址為4000H,末地址為7FFFH,求其內(nèi)存容量。解:7FFFH-4000H+1=4000H=16KB 內(nèi)存容量為16KB。8.

15、利用全地址譯碼將6264芯片接在8088的系統(tǒng)總線上,其所占地址范圍為00000H03FFFH,試畫連接圖。寫入某數(shù)據(jù)并讀出與之比較,若有錯,則在DL中寫入01H;若每個單元均對,則在DL寫入EEH,試編寫此檢測程序。解:因為6264的片容量為8KB。RAM存儲區(qū)域的總?cè)萘繛?3FFFH-00000H+1=4000H=16KB,故需要2片6264芯片。連接圖如圖6.1所示。圖6.1 與8088系統(tǒng)總線的連接圖檢測程序段:MOV AX,0000HMOV DS,AXMOV SI,0MOV CX,16*1024MOV AL,55HCMPL: MOV SI,ALMOV BL,SICMP BL,ALJN

16、E ERRORINC SILOOP CMPLMOV DL,0EEHJMP NEXTERROR: MOV DL,01HNEXT: 9.簡述EPROM的編程過程,并說明EEPROM的編程過程。解:EPROM芯片的編程有兩種方式:標(biāo)準編程和快速編程。在標(biāo)準編程方式下,每給出一個編程負脈沖就寫入一個字節(jié)的數(shù)據(jù)。Vpp上加編程電壓,地址線、數(shù)據(jù)線上給出要編程單元的地址及其數(shù)據(jù),并使=0,=1。上述信號穩(wěn)定后,在端加上寬度為50ms±5ms的負脈沖,就可將數(shù)據(jù)逐一寫入。寫入一個單元后將變低,可以對剛寫入的數(shù)據(jù)讀出進行檢驗。快速編程使用100的編程脈沖依次寫完所有要編程的單元,然后從頭開始檢驗每個

17、寫入的字節(jié)。若寫的不正確,則重寫此單元。寫完再檢驗,不正確可重寫。EEPROM編程時不需要加高電壓,也不需要專門的擦除過程。并口線EEPROM操作與SRAM相似,寫入時間約5ms。串行EEPROM寫操作按時序進行,分為字節(jié)寫方式和頁寫方式。10若要將4塊6264芯片連接到8088最大方式系統(tǒng)A0000HA7FFFH的地址空間中,現(xiàn)限定要采用74LS138作為地址譯碼器,試畫出包括板內(nèi)數(shù)據(jù)總線驅(qū)動的連接電路圖。解:8088最大方式系統(tǒng)與存儲器讀寫操作有關(guān)的信號線有:地址總線,數(shù)據(jù)總線:,控制信號:。根據(jù)題目已知條件和74LS138譯碼器的功能,設(shè)計的板內(nèi)數(shù)據(jù)總線驅(qū)動電路如圖6.2(a)所示,板內(nèi)

18、存儲器電路的連接電路圖如圖6.2 (b)所示。圖6.2(a)板內(nèi)數(shù)據(jù)總線驅(qū)動電路圖6.2 (b)板內(nèi)存儲器電路的連接圖11若在某8088微型計算機系統(tǒng)中,要將一塊2764芯片連接到E0000HE7FFFH的空間中去,利用局部譯碼方式使它占有整個32kB的空間,試畫出地址譯碼電路及2764芯片與總線的連接圖。解:Intel 2764的片容量為8KB,而題目給出的地址共32KB,說明有4個地址區(qū)重疊,即采用部分地址譯碼時,有2條高位地址線不參加譯碼(即不參加譯碼)。地址譯碼電路及2764與總線的連接如圖6.3所示。圖6.3地址譯碼電路及2764與總線的連接12在8086 CPU工作在最小方式組成的

19、微機系統(tǒng)中,擴充設(shè)計16kB的SRAM電路,SRAM芯片選用Intel 6264,內(nèi)存地址范圍為70000H73FFFH,試畫出此SRAM電路與8086系統(tǒng)總線的連接圖。解:73FFFH-70000H+1=4000H=16K Intel 6264的片容量為8KB,RAM存儲區(qū)總?cè)萘繛?6KB,故需要2片6264. 8086最小方式系統(tǒng)與存儲器讀寫操作有關(guān)的信號線有:地址總線,數(shù)據(jù)總線:,控制信號:。此SRAM電路與8086系統(tǒng)總線的連接圖如圖6.4所示。圖6.4 SRAM電路與8086系統(tǒng)總線的連接圖13E2PROM 28C16芯片各引腳的功能是什么?如果要將一片28C16與8088系統(tǒng)總線相

20、連接,并能隨時改寫28C16中各單元的內(nèi)容,試畫出28C16和8088系統(tǒng)總線的連接圖(地址空間為40000H407FFH)。解:28C16的引腳功能:l VCC,GND:電源和地l :11位地址線,可尋址2KB地址空間l :8位數(shù)據(jù)線l :寫允許,低電平有效。l :輸出允許,低電平有效。l :片選信號,低電平有效。根據(jù)所學(xué)知識,28C16與8088系統(tǒng)的連接圖如圖6.5所示。圖6.5 28C16與8088系統(tǒng)的連接圖7章習(xí)題1. 簡述I/O接口的基本功能。答:(1)地址選擇 (2)控制功能 (3)狀態(tài)指示 (4)速度匹配 (5)轉(zhuǎn)換信息格式 (6)電平轉(zhuǎn)換 (7)可編程性2. 簡述I/O接口

21、與I/O端口的區(qū)別。答:I/O接口是指I/O設(shè)備與系統(tǒng)總線之間的連接部件。 I/O端口是指I/O接口內(nèi)部可由CPU進行讀寫操作的各種寄存器,根據(jù)存放信息的不同,這些寄存器分別稱為數(shù)據(jù)端口、控制端口和狀態(tài)端口。3. 簡述I/O端口的編址方式及優(yōu)缺點。答:I/O端口編址的方式可以分為獨立編址和統(tǒng)一編址兩種方式。獨立編址方式是指I/O端口與存儲器有相互獨立的地址空間。 統(tǒng)一編址方式是指I/O端口與存儲器共享一個地址空間,所有的存儲單元只占用其中的一部分地址,而I/O端口則占用另外一部分地址。優(yōu)缺點:獨立編址方式的優(yōu)點之一是存儲器的容量可以達到與地址總線所決定的地址空間相同;優(yōu)點之二是訪問I/O端口時

22、的地址位數(shù)可以較少,提高總線的利用率。但是缺點是必須設(shè)置專門的I/O指令,增加了指令系統(tǒng)和有關(guān)硬件的復(fù)雜性。與獨立編址方式相比,統(tǒng)一編址方式的優(yōu)點是無需專門的I/O指令,從而使編程較靈活,但是I/O端口占用了存儲器的一部分地址空間,因而影響到系統(tǒng)中的存儲器的容量,并且訪問存儲器和訪問I/O端口必須使用相同位數(shù)的地址,使指令地址碼加長,總線中傳送信息量增加。4. 簡述程序查詢、中斷和DMA三種方式的優(yōu)缺點。答:程序查詢方式的優(yōu)點在于可以防止數(shù)據(jù)的丟失,實現(xiàn)起來較為簡單;缺點是它占用了微處理器的大量時間,實時性較差。中斷方式具有較好的實時性;但在一定程度上增加成本和復(fù)雜性。DMA方式的突出優(yōu)點是傳

23、送過程無須處理器的控制,數(shù)據(jù)也無須經(jīng)過微處理器,而是直接在I/O設(shè)備與主存儲器間進行,因此既節(jié)約了微處理器的時間,也使傳送速率大大提高;缺點是輸入/輸出操作占用微處理器時間,而且很難達到較高的數(shù)據(jù)傳輸率。5. 8086 CPU 有 20 條地址總線,可形成 1MB 的存儲器地址空間,可尋址范圍為 00000H-FFFFFH;地址總線中的 16 條線可用于I/O尋址,形成 64KB 的輸入輸出地址空間,地址范圍為 0000H-FFFFH ;PC機中用了 10 條地址線進行I/O操作,其地址空間為 1KB ,可尋址范圍為 000H3FFH 。6. 對于微機而言,任何新增的外部設(shè)備,最終總是要通過

24、I/O接口 與主機相接。7. 在主機板外開發(fā)一些新的外設(shè)接口邏輯,這些接口邏輯的一側(cè)應(yīng)與 I/O設(shè)備 相接,另一側(cè)與 系統(tǒng)總線 相接。8. 需要靠在程序中排入I/O指令完成的數(shù)據(jù)輸入輸出方式有 B C 。(A)DMA (B)程序查詢方式 (C)中斷方式9. 8086CPU用 IN 指令從端口讀入數(shù)據(jù),用 OUT 指令向端口寫入數(shù)據(jù)。10. 在8088 CPU組成的計算機系統(tǒng)中有一接口模塊,片內(nèi)占用16個端口地址30030FH,設(shè)計產(chǎn)生片選信號的譯碼電路。解:由于片內(nèi)有16個端口,非別占用30030FH地址。因此,該接口模塊的片選信號的譯碼電路設(shè)計時,A3A0不參加譯碼。其譯碼電路如圖7.1所示

25、。圖7.111. 在IBM PC系統(tǒng)中,如果AEN信號未參加I/O端口地址譯碼,會出現(xiàn)什么問題?在沒有DMA機構(gòu)的其它微機系統(tǒng)中,是否存在同樣的問題?答:在IBM PC系統(tǒng)中,如果AEN信號未參加I/O端口地址譯碼,則會出現(xiàn)DMA機構(gòu)與I/O端口競爭總線的問題。在沒有DMA機構(gòu)的其他微機系統(tǒng)中,不會存在同樣的問題。12. 在8088 CPU 工作在最大方式組成的微機系統(tǒng)中,利用74LS244設(shè)計一個輸入端口,分配給該端口的地址為04E5H,試畫出連接圖。解:連接圖如圖7.2所示。圖7.213. 在上題的基礎(chǔ)上,利用74LS374設(shè)計一個輸出端口,分配給該端口的地址為E504H,試畫出連接圖。若

26、上題中輸入端口的bit3、 bit4和bit7 同時為1,將內(nèi)存BUFFER開始的連續(xù)10個字節(jié)單元的數(shù)據(jù)由E504H端口輸出;若不滿足條件,則等待。試編寫程序。解:連接圖如圖7.3所示。圖7.3程序如下:MOV CX ,10 LEA SI,BUFFER MOV DX,04E5H WAIT1:IN AL,DX AND AL,98H CMP AL,98H JNZ WAIT1 MOV DX,0E504H L1:MOV AL,SI OUT DX,AL INC SI LOOP L1 HLT14在8086最大系統(tǒng)中,分別利用2片74LS244和74LS273設(shè)計16位輸入和輸出接口,其起始端口地址為50

27、4H、506H,畫出硬件連接圖解:硬件連接圖如圖7.4所示。圖7.4 硬件連接圖9章習(xí)題1. 下列地址哪些能夠分配給8253/8254的計數(shù)器0?為什么?(23H、54H、97H、51H、FCH、59H)解:因為已經(jīng)約定采用A2,A1作為8253的內(nèi)部地址線,而且計數(shù)器0的地址為00,所以在題中所給的地址中只有51H,59H的A2和A1同時為0,即:A2A1=00.2. 如果計數(shù)器0設(shè)定為方式0,GATE01,CLK01MHz,時常數(shù)為N1000,請畫出OUT0的波形。如果計數(shù)器1設(shè)定為方式1,其它參數(shù)與計數(shù)器0相同,畫出OUT1的波形。3. 編程實現(xiàn):將8253計數(shù)器0設(shè)置成方式4,并置時常

28、數(shù)10000,然后處于等待狀態(tài),直到CE的內(nèi)容1000后再向下執(zhí)行。解:MOV DX,COUNTD ;寫入計數(shù)器0的方式控制字 MOV AL,00111000B OUT DX,AL MOV DX,COUNTA ;設(shè)置計數(shù)器0的常數(shù) MOV AX,10000 OUT DX,AL XCHG AL,AH OUT DX,AL L1: MOV DX,COUNTD ;寫入計數(shù)器0的方式控制字 MOV AL,0H OUT DX,AL MOV DX,COUNTA ;讀入CE IN AL,DX MOV AH,AL IN AL,DX XCHG AL,AH CMP AX,1000 ;判別CE當(dāng)前大小 JA L1 4

29、. 利用8253可以實現(xiàn)確定時間的延遲,編程實現(xiàn)延時10秒的程序段(設(shè)可以使用的基準時鐘為1MHz)。解:本題使用計數(shù)器0和計數(shù)器1,并且計數(shù)器0的輸出OUT0作為計數(shù)器1的時鐘輸入CLK1.程序如下:MOVDX,COUNTD;寫計數(shù)器0方式控制字MOVAL,00110100BOUTDX,ALMOVDX,COUNTAMOVAX,10000 ;寫計數(shù)器0時常數(shù),分頻得到100Hz時鐘頻率OUTDX,ALXCHGAL,AHOUTDX,ALMOVDX,COUNTD;寫計數(shù)器1方式控制字MOVAL,01110000BOUTDX,ALMOVDX,COUNTBMOVAX,999;分頻得到0.1Hz時鐘頻率

30、。(在方式0下,時常數(shù)為N時, ;OUT輸出的低電平寬度為N+1).OUTDX,ALXCHGAL,AHOUTDX,ALL1: ;延時MOVDX,COUNTD; 當(dāng)前CE的內(nèi)容鎖存到OLMOVAL,01000000BOUTDX,ALMOVDX,COUNTBINAL,DXMOVAH,ALINAL,DXXCHGAL,AHCMPAX,999JNAL1;延時結(jié)束,則繼續(xù)執(zhí)行,否則,跳到L1,繼續(xù)延時.5. 比較8254方式0與方式4、方式1與方式5的區(qū)別?方式0與方式4方式0 OUT端計數(shù)過程中為低,計數(shù)值減為0時,輸出變高方式4 OUT端計數(shù)過程中為高,計數(shù)值減為0時輸出寬度為1個CLK的負脈沖方式1

31、與方式5方式1 OUT端輸出寬度為n個CLK的低電平,計數(shù)值減為0時,輸出為高方式5 OUT端計數(shù)過程中為高,計數(shù)值減為0時輸出寬度為1個CLK的負脈沖6. 在8088最小系統(tǒng)中,8253的端口地址為284H287H。系統(tǒng)提供的時鐘為1MHz,要求在OUT0輸出周期為20微秒的方波,在OUT1輸出周期為200微秒,其中每周期為負的時間是180微秒的信號。請編寫8253的初始化程序。解:OUT0輸出為20微妙方波,可用方式三直接產(chǎn)生,OUT1輸出波形與書中例9.2類似,可用其中思想產(chǎn)生此信號。如果允許增加外部器件,也可在例9.1的基礎(chǔ)上,將OUT端信號通過與非門取反,這樣即可產(chǎn)生題目要求信號。本

32、例利用例9.1思想解答MOV DX,287H ;寫計數(shù)器0控制方式字MOV AL,00010110BOUT DX,ALMOV DX,284H ;寫計數(shù)器0時常數(shù)MOV AL,20OUR DX,ALMOV DX,287 ;寫計數(shù)器2控制方式字MOV AL,10010110BOUT DX,ALMOV DX,286H ;寫計數(shù)器2時常數(shù)MOV AL,200OUT DX,ALMOV DX,287HMOV AL,01010010B ;寫計數(shù)器1控制方式字OUT DX,ALMOV DX,285HMOV AL,9 ;寫計數(shù)器1時常數(shù)OUT DX,AL7. 通過8253計數(shù)器0的方式0產(chǎn)生中斷請求信號,現(xiàn)需要

33、延遲產(chǎn)生中斷的時刻,可采用:A) 在OUT0變高之前重置初值;B) 在OUT0變高之前在GATE0端加一負脈沖信號;C) 降低加在CLK0端的信號頻率;D) 以上全是。解:D A:方式0下,在OUT0變高之前重置初值,將在下一個CLK的下降沿使時常數(shù)從CR讀入CE并重新計數(shù)。B:在OUT0變高之前在GATE0端加一負脈沖信號可以延時一個時鐘周期,達到延時的目的。C:降低加在CLK0端的信號頻率,可以增大時鐘周期,達到延長OUT0端低電平的時間。(注:A中,如果重置的初值為1,則不會達到延時的效果)8. 已知8254計數(shù)器0的端口地址為40H,控制字寄存器的端口地址為43H,計數(shù)時鐘頻率為2MH

34、z,利用這一通道設(shè)計當(dāng)計數(shù)到0時發(fā)出中斷請求信號,其程序段如下,則中斷請求信號的周期是 32.7675 ms。MOV AL,00110010BOUT 43H, ALMOV AL, 0FFHOUT 40H, ALOUT 40H, AL9. 若8254芯片可使用的8086端口地址為D0D0HD0DFH,試畫出系統(tǒng)設(shè)計連接圖。設(shè)加到8254上的時鐘信號為2MHz,(1)利用計數(shù)器02分別產(chǎn)生下列三種信號: 周期為10us的對稱方波 每1s產(chǎn)生一個負脈沖 10s后產(chǎn)生一個負脈沖每種情況下,說明8254如何連接并編寫包括初始化在內(nèi)的程序段。(2) 希望利用8086通過一專用接口控制8253的GATE端,

35、當(dāng)CPU使GATE有效開始,20us后在計數(shù)器0的OUT端產(chǎn)生一個正脈沖,試設(shè)計完成此要求的硬件和軟件。解:(1) 選用D0D0HD0DFH中的偶地址DODO,DOD2,DOD4,DOD6為基本地址作為8254的端口地址,設(shè)8086工作在最小方式下。8254端口地址譯碼電路如下圖: 計數(shù)器0輸入端加2MHz的時鐘信號,GATE0加+5V電壓,輸出OUT0信號為周期為10µs的對稱方波。初始化代碼:MOV DX,0D0D6H ;寫計數(shù)器0工作方式MOV AL,00010110BOUT DX,ALMOV DX,0D0D0H ;寫計數(shù)器0時常數(shù)MOV AL,20OUT DX,ALCLK0加

36、2MHz的始終信號,GATE0,GATE1加+5V電壓,OUT0輸出加到CLK1做時鐘信號,OUT1輸出為每1s產(chǎn)生一個負脈沖。初始代碼:MOV DX,0D0D6H ;寫計數(shù)器0的工作方式MOV AL,00010110BOUT DX,ALMOV DX,0D0D0H ;寫計數(shù)器0的時常數(shù)MOV AL,100OUT DX,ALMOV DX,0D0D6H ;寫計數(shù)器1的工作方式MOV AL,01110100B OUT DX,ALMOV DX,0D0D2H ;寫計數(shù)器1的時常數(shù)MOV AX,20000OUT DX,ALXCHG AL,AHOUT DX,ALCLK0加2MHz的始終信號,GATE0,GA

37、TE1加+5V電壓,OUT0輸出加到CLK2做時鐘信號,OUT2輸出為10s后產(chǎn)生一個負脈沖。初始代碼:MOV DX,0D0D6H ;寫計數(shù)器0的工作方式MOV AL,00110110BOUT DX,ALMOV DX,0D0D0H ;寫計數(shù)器0的時常數(shù)MOV AX,1000OUT DX,ALXCHG AL,AHOUT DX,ALMOV DX,0D0D6H ;寫計數(shù)器2的工作方式MOV AL,10111000BOUT DX,ALMOV DX,0D0D4H ;寫計數(shù)器2的時常數(shù)MOV AX,20000OUT DX,ALXCHG AL,AHOUT DX,AL1) 選用地址D0D0,DOD2,DOD4

38、,DOD6為8253的端口地址,D0D8為GATE端口地址,該端口采用74LS373,8253用方式4,在OUT輸出端加非門實現(xiàn)脈沖功能。接口電路如圖:初始代碼為:MOV DX,0D0D8H ;GATE初始化MOV AL,0OUT DX,ALMOV DX,0D0D6H ;寫計數(shù)器0工作方式MOV AL,00011000BOUT DX,ALMOV DX,0D0D0H ;寫計數(shù)器0時常數(shù)MOV AL,40OUT DX,ALMOV DX,0D0D8HMOV AL,1OUT DX,AL ;使GATE變高有效10. 若加到8254上的時鐘頻率為0.5MHz,則一個計數(shù)器的最長定時時間是多少?若要求10分

39、鐘產(chǎn)生一次定時中斷, 試提出解決方案。解:一個計數(shù)器的最長定時時間應(yīng)該是置入時常數(shù)0時,此時定時時間為:65536/0.5*106s=131ms采用方式0即:計數(shù)達到終值時中斷來10分鐘產(chǎn)生一次定時中斷,此時時常數(shù)CR為:10*60*0.5*106=3*109.由于一個計數(shù)器最多分頻65536,所以至少得使用2個計數(shù)器。我們采用計數(shù)器0和計數(shù)器1.計數(shù)器0的時常數(shù)CR0為60000,計數(shù)器1的時常數(shù)CR1為50000.連接方式為:把0.5MHz的時鐘頻率接到計數(shù)器0的CLK0,然后把計數(shù)器0的OUT0接到計數(shù)器1的CLK1。這樣計數(shù)器1的OUT1端輸出的就是10分鐘產(chǎn)生一次的定時中斷。11.

40、織布機控制系統(tǒng)如圖9.26所示,已知織布機每織1米發(fā)出一個正脈沖,每織100米要求接收到一脈沖,去觸發(fā)剪裁設(shè)備把布剪開。(1)設(shè)8253的端口地址為80H83H,編寫對8253初始化程序。(2)假定系統(tǒng)提供的信號頻率為1MHz,希望利用8253的其余通道產(chǎn)生0.1秒的周期信號,編寫初始化程序。解:(1)MOVDX,83HMOVAL,00010100BOUTDX,ALMOVDX,80HMOVAL,100OUTDX,AL(2)將計數(shù)器1的輸出OUT1信號作為計數(shù)器2的時鐘輸入CLK2,計數(shù)器1的時鐘輸入為系統(tǒng)提供1MHZ的信號MOVDX,83HMOVAL,01110100BOUTDX,ALMOVD

41、X,81HMOVAX,1000OUTDX,ALXCHGAL,AHMOVDX,ALMOVDX,83HMOVAL,10010110BOUTDX,ALMOVDX,82HMOVAL,100OUTDX,AL 圖9.26 織布機控制系統(tǒng)12. 在IBM PC系統(tǒng)中根據(jù)下列不同條件設(shè)計接口邏輯,利用8253完成對外部脈沖信號重復(fù)頻率的測量。(1) 被測脈沖信號的重復(fù)頻率在101000Hz范圍內(nèi)。(2) 被測脈沖信號的重復(fù)頻率在0.51.5Hz范圍內(nèi)。(3) 被測脈沖信號重復(fù)頻率在10100Hz范圍內(nèi)。(4) 被測是間歇脈沖信號,每次有信號時有100個脈沖,重復(fù)頻率為0.81.2MHz,間歇頻率大約每秒15次

42、,要求測有信號時的脈沖重復(fù)頻率。解:用兩個計數(shù)器,計數(shù)器0的CLK接待測信號,GATE接半周期為10s的高電平信號,OUT接8259,同時取反接計數(shù)器1的GATE端。計數(shù)器1的CLK接系統(tǒng)時鐘,半周期為T0。在這樣的邏輯電路下,計數(shù)器0的功能是記錄待測信號的脈沖數(shù)N0,計數(shù)器1的功能是記錄在相同時間里系統(tǒng)時鐘信號的脈沖數(shù)N1。根據(jù)T=N1*T0/N0可計算出待測信號的周期。S(t)是待測信號,S(t)為給定的周期大于10s的高電平信號。端口聲明:COUNTA為計數(shù)器0的地址,COUNTB為計數(shù)器2的地址,COUNTD為控制器地址,COUNT為373地址程序如下:MOV DX,COUNTD ;計

43、數(shù)器1初始化 MOV AL,01110000B OUT DX,AL MOV DX,COUNTB OUT DX,AL MOV DX,COUNTB MOV AL,O OUT DX,ALMOV DX,COUNTD ;計數(shù)器0初始化MOV AL,00010000BOUT DX,ALMOV DX,COUNTAMOV AL,0OUT DX,ALOUT DX,ALSTI讀兩計數(shù)器的計數(shù),并進行計算的中斷服務(wù)子程序:PUSH AXPUSH BXPUSH CXPUSH DXMOV DX,COUNTDMOV AL,00000000BOUT DX,ALMOV DX,COUNTAIN AL,DXXCHG AL,AHI

44、N AL,DXXCHG AL,AHNEG AXINC AXMOV BX,AXMOV DX,COUNTDMOV AL,00010000BOUT DX,ALMOV DX,COUNTBIN AL,DXXCHG AL,AHIN AL,DXXCHG AL,AHNEG AXINC AXMOV CX,T0MUL CXDIV BXMOV SFR,AXPOP DXPOP CXPOP BXPOP AXIRETSFR中保存結(jié)果即為待測信號的周期。對于(1)題,10*10不小于100,10*1000不大于65535,可以用計數(shù)法。同理(3)也可用此方法。對于(2)題,可用周期法。邏輯電路圖如下:程序如下:MOV DX

45、,COUNTDMOV AL,0011 0100BOUT DX,ALMOV DX,COUNTAMOV AL,0OUT DX,ALOUT DX,ALSTIPUSH AXPUSH BXPUSH DXMOV DX,COUNTDMOV AL,0000 0000BOUT DX,ALMOV DX,COUNTAIN AL,DXXCHG AL,AHIN AL,DXXCHG AL,AHNEG AXINC AXMOV BX,AXMOV DX,000FHMOV AX,4240HDIV BXMOV SFR,AXPOP DXPOP BXPOP AXIRET(4) 如圖設(shè)計接口,計數(shù)器1用來記錄在50個脈沖所用時間,50個

46、信號脈沖最多用1/0.8*50(約為63us)由于計數(shù)器1用1MHz CLK,故其計數(shù)個數(shù)N即為N us,所以當(dāng)N>63時,則有低電平間隔計入,須重新計數(shù)。當(dāng)N>63時,則計算得待測頻率。程序如下:MOV DX,COUNTDMOV AL,00HOUT DX,ALMOV DX,COUNTDMOV AL,0001 0000BOUT DX,ALMOV DX,COUNTAMOV AL,50OUT DX,ALMOV DX,COUNTDMOV AL,0111 0000BOUT DX,ALMOV COUNTBMOV AL,0OUT DX,ALOUT DX,ALL2: MOV DX,COUNT ;

47、給GATE0和GATE1高電平,開始計數(shù)MOV AL,81HOUT DX,ALL1: NOP MOV DX,COUNTDMOV AL,00000000BOUT DX,ALMOV DX,COUNTAIN AL,DXMOV DX,COUNTAIN AL,DXAND AL,AL ;判斷是否計完50個脈沖,若未計完繼續(xù)等待JNZ L1MOV DX,COUNTMOV AL,00H ;若計完則暫停計數(shù)OUT DX,ALMOV DX,COUNTD ;讀計數(shù)器1結(jié)果MOV AL,01000000BOUT DX,ALMOV DX,COUNTBIN AL,DXXCHG AL,AHIN AL,DXXCHG AL,A

48、HNEG AXINC AXCMP AX,70H ;當(dāng)AL大于70,則有間歇計入,重新測試JA L2MOV BL,ALMOV AL,50 ;計算頻率DIV BLMOV FREC,AL10章習(xí)題1. 試分析 8255A方式0、方式1和方式2的主要區(qū)別,并分別說明它們適合于什么應(yīng)用場合。答:方式0是基本的輸入/輸出,端口A、B、C都可以作為輸入輸出端口。適用于CPU與非智能I/O設(shè)備的數(shù)據(jù)傳輸;方式1是有聯(lián)絡(luò)信號的輸入/輸出,端口A、B都可以設(shè)定成該方式,此時三個端口的信號線分成了A、B兩組,用作A組的聯(lián)絡(luò)信號,用作B組的聯(lián)絡(luò)信號。適用于高速CPU與低速I/O設(shè)備的數(shù)據(jù)傳輸;方式2是雙向傳輸,只有A組端口可以設(shè)定成該方式,用作輸出的聯(lián)絡(luò)信號,用作輸入的聯(lián)絡(luò)信號,用作中斷請求信號。適用于雙機之間數(shù)據(jù)的并行傳送。2. 8255A的A組設(shè)置成方式1輸入,與CPU之間采用中斷方式聯(lián)絡(luò),則產(chǎn)生中斷請求信號INTRA的條件是 STBA= 1 ,IBFA= 1 ,INTEA= 1 。3. 如果8255A的端口地址為300H303H,A組和B組均為方式0,端口A為輸出,端口B為輸入,PC3PC0為輸入,PC7PC4為輸出,寫出8255A的初始化程序段;編程實現(xiàn)將從端口C低4位讀入的值從高4位送出。解:MOV

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論