微機原理與接口技術(shù)(樓順天第二版)第九章習(xí)題解答_第1頁
微機原理與接口技術(shù)(樓順天第二版)第九章習(xí)題解答_第2頁
微機原理與接口技術(shù)(樓順天第二版)第九章習(xí)題解答_第3頁
微機原理與接口技術(shù)(樓順天第二版)第九章習(xí)題解答_第4頁
微機原理與接口技術(shù)(樓順天第二版)第九章習(xí)題解答_第5頁
已閱讀5頁,還剩7頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、微機原理與接口技術(shù)(樓順天第二版)習(xí)題解答第9章 定時/計數(shù)器8253應(yīng)用設(shè)計9.1答:假定已經(jīng)約定采用A2,A1作為8253的內(nèi)部地址線,而且計數(shù)器0的地址為00,所以在題中所給的地址中只有51H,59H的A2和A1同時為0,即:A2A1=00。9.2 答:9.3 答: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發(fā)鎖存命令 MOV AL,0H

2、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 9.4 答:本題使用計數(shù)器0和計數(shù)器1級聯(lián),并且計數(shù)器0的輸出OUT0作為計數(shù)器1的時鐘輸入CLK1。程序如下:MOVDX,COUNTD;寫計數(shù)器0方式控制字MOVAL,00110110BOUTDX,ALMOVDX,COUNTAMOVAX,10000 ;寫計數(shù)器0時常數(shù),分頻得到100Hz時鐘頻率OUTDX,ALXCHGAL,AHOUTDX,ALMOVDX,COUNTD;寫計數(shù)器1方式控制字MOVAL,

3、01110000BOUTDX,ALMOVDX,COUNTBMOVAX,999;分頻得到0.1Hz時鐘頻率。(在方式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ù)延時.9.5 答:8253的方式2與方式3均為一次計數(shù)完成后自動裝入計數(shù)初值再計數(shù)的計數(shù)方式。差別是方式2設(shè)

4、定計數(shù)N時N-1時鐘周期為高電平,1時鐘周期為低電平;方式3設(shè)定計數(shù)N時,若N為偶數(shù),則N/2周期為高電平,N/2周期為低電平,若N為奇數(shù),則(N+1)/2周期為高電平,(N-1)/2周期為低電平。9.6 答:CLK為計數(shù)時鐘,每個時鐘周期計數(shù)一次,GATE為門控信號,在方式0、方式2、方式3、方式4中,GATE信號為高電平時正常計數(shù),GATE信號為地點平時暫停計數(shù);在方式1和方式5中由GATE信號觸發(fā)計數(shù)。9.7 答:方式0與方式4方式0, OUT端計數(shù)過程中為低,計數(shù)值減為0時,輸出變高方式4, OUT端計數(shù)過程中為高,計數(shù)值減為0時輸出寬度為1個CLK的負(fù)脈沖方式1,與方式5方式1, O

5、UT端輸出寬度為n個CLK的低電平,計數(shù)值減為0時,輸出為高方式5, OUT端計數(shù)過程中為高,計數(shù)值減為0時輸出寬度為1個CLK的負(fù)脈沖9.8 答:OUT0輸出為20微妙方波,可用方式三直接產(chǎn)生;OUT1輸出周期為200微秒,其中每周期為負(fù)的時間是180微秒的信號,可用OUT0輸出的20微秒方波作為CLK1計數(shù)時鐘,使計數(shù)器1工作在方式2,計數(shù)初值為200微妙/20微妙=10。硬件上要在OUT1輸出端接一反相器就可實現(xiàn)題目要求產(chǎn)生的在OUT1輸出周期為200微秒,其中每周期為負(fù)的時間是180微秒的信號。8253的初始化程序如下:MOV DX,287H ;寫計數(shù)器0控制方式字MOV AL,000

6、10110BOUT DX,ALMOV DX,284H ;寫計數(shù)器0時常數(shù)MOV AL,20OUT DX,ALMOV DX,287H ;寫計數(shù)器1控制方式字MOV AL,01010100BOUT DX,ALMOV DX,285H ;寫計數(shù)器2時常數(shù)MOV AL,10OUT DX,AL9.9 答:39.10 答:3,5000 9.11 答:0,10000。9.12 答:D9.13 答:B 9.14 答:B 9.15 答:B9.16 答:B,F(xiàn)9.17 答:D9.18 答:根據(jù)程序,使用計數(shù)器0,工作在方式2,計數(shù)初值為0FFFFH,所以中斷請求周期為65535/2000000s=32.7675ms

7、。9.19 答:(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加2MHz的始終信號,GATE0,GATE1加+5V電壓,OUT0輸出加到CLK1作時鐘信號,O

8、UT1輸出為每1s產(chǎn)生一個負(fù)脈沖。初始代碼: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,GATE1加+5V電壓,OUT0輸出加到CLK2做時鐘信號,OUT2輸出為10s后產(chǎn)生一個負(fù)脈沖。

9、初始代碼: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,AL(2)選用地址D0D0,DOD2,DOD4,DOD6為8253的端口地址,D0D8為GATE端口地址,該端口采用74LS373,8253

10、用方式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變高有效9.20 答:一個計數(shù)器的最長定時時間應(yīng)該是置入時常數(shù)0時,此時定時時間為:65536/0.5*106s=131ms采用方式0即:計數(shù)達到終值時中斷來10分鐘產(chǎn)生一次定時中斷,此時時常數(shù)CR

11、為: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)生一次的定時中斷。9.21答:(1)MOVDX,83HMOVAL,00010100BOUTDX,ALMOVDX,80HMOVAL,100OUTDX,AL(2)將計數(shù)器1的輸出OUT1信號作為計數(shù)器2的時鐘輸入CLK2,計數(shù)器1的時鐘輸入為系統(tǒng)提

12、供1MHZ的信號。MOVDX,83HMOVAL,01110100BOUTDX,ALMOVDX,81HMOVAX,1000OUTDX,ALXCHGAL,AHMOVDX,ALMOVDX,83HMOVAL,10010110BOUTDX,ALMOVDX,82HMOVAL,100OUTDX,AL9.22 答:用兩個計數(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=

13、N1*T0/N0可計算出待測信號的周期。S(t)是待測信號,S(t)為給定的周期大于10s的高電平信號。端口聲明:COUNTA為計數(shù)器0的地址,COUNTB為計數(shù)器2的地址,COUNTD為控制器地址,COUNT為373地址程序如下:MOV DX,COUNTD ;計數(shù)器1初始化MOV AL,01110000BOUT DX,ALMOV DX,COUNTBOUT DX,ALMOV DX,COUNTBMOV AL,OOUT DX,ALMOV DX,COUNTD ;計數(shù)器0初始化MOV AL,00010000BOUT DX,ALMOV DX,COUNTAMOV AL,0OUT DX,ALOUT DX,A

14、LSTI讀兩計數(shù)器的計數(shù),并進行計算的中斷服務(wù)子程序:PUSH AXPUSH BXPUSH CXPUSH DXMOV DX,COUNTDMOV AL,00000000BOUT DX,ALMOV DX,COUNTAIN AL,DXXCHG AL,AHIN 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 DXP

15、OP CXPOP BXPOP AXIRETSFR中保存結(jié)果即為待測信號的周期。對于(1)題,10*10不小于100,10*1000不大于65535,可以用計數(shù)法。同理(3)也可用此方法。對于(2)題,可用周期法。邏輯電路圖如下:程序如下:MOV DX,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,DXX

16、CHG AL,AHNEG AXINC AXMOV BX,AXMOV DX,000FHMOV AX,4240HDIV BXMOV SFR,AXPOP DXPOP BXPOP AXIRET(4) 如圖設(shè)計接口,計數(shù)器1用來記錄在50個脈沖所用時間,50個信號脈沖最多用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,A

17、LMOV DX,COUNTAMOV AL,50OUT DX,ALMOV DX,COUNTDMOV AL,0111 0000BOUT DX,ALMOV COUNTBMOV AL,0OUT DX,ALOUT DX,ALL2: MOV DX,COUNT ;給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,COUN

18、TMOV 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,AHNEG AXINC AXCMP AX,70H ;當(dāng)AL大于70,則有間歇計入,重新測試JA L2MOV BL,ALMOV AL,50 ;計算頻率DIV BLMOV FREC,AL9.23 答:程序如下:;計數(shù)器0,方式0,當(dāng)計數(shù)滿后為高電平,引發(fā)中斷 MOV DX,33H MOV AL,00110000B ;計數(shù)器0,方式0 OUT DX,AL

19、MOV DX,30H MOV AX,23000 OUT DX,AL ;寫低位計數(shù)值 XCHG AH,AL OUT DX,AL ;寫高位計數(shù)值 ;計數(shù)器1,計數(shù)值為10000/20=500,方式3 MOV DX,33H MOV AL,01110110B OUT DX,AL MOV DX,31H MOV AX,500 OUT DX,AL XCHG AH,AL OUT DX,AL 9.24 答:;若計數(shù)器02的端口地址為1AB0H,1AB2H, 1AB4H,控制字口為1AB6H;計數(shù)器0,方式1,BCD計數(shù),計數(shù)值4650 MOV DX,1AB6H MOV AL,00110011B ;計數(shù)器0,方式

20、1,十進制計數(shù) OUT DX,AL MOV DX,1AB0H MOV AX,4650H OUT DX,AL ;寫低位計數(shù)值 XCHG AH,AL OUT DX,AL ;寫高位計數(shù)值 ;計數(shù)器1,計數(shù)值3420,方式2,二進制計數(shù) MOV DX,1AB6H MOV AL,01110100B OUT DX,AL MOV DX,1AB2H MOV AX,3420 OUT DX,AL XCHG AH,AL OUT DX,AL;計數(shù)器2,方式4,二進制計數(shù),計數(shù)初值120 MOV DX,1AB6H MOV AL,10011000B ;由于計數(shù)初值為120,可以只寫低位 OUT DX,AL MOV DX,

21、1AB4H MOV AX,120 OUT DX,AL9.25 答:;若計數(shù)器02的端口地址為0FA0H,0FA2H, 0FA4H,控制字口為0FA6H;準(zhǔn)備中斷向量表 MOV AX,0 MOV DS,AX MOV SI,42H ;中斷類型號42H SHL SI,1 SHL SI,1 ;SI×4 MOV SI,OFFSET INT_SERVICE ;中斷服務(wù)程序的偏移地址存入向量表 MOV AX,CS ADD SI,2 MOV SI,AX ;中斷服務(wù)程序的段地址存入向量表 ;如果用8259,則對8259初始化;計數(shù)器2,二次讀寫計數(shù)值,方式0,二進制計數(shù) MOV DX,0FA6H MO

22、V AL,10110000B ;計數(shù)器0,方式1,十進制計數(shù) OUT DX,AL MOV DX,0FA4H MOV AX,1000 OUT DX,AL XCHG AH,AL OUT DX,AL ;其他程序;中斷服務(wù)程序INT_SERVICE:STI ;開中斷 MOV DX,0FA6H MOV AL,10110000B ;計數(shù)器2,二次讀寫計數(shù)值,方式0,二進制計數(shù) OUT DX,AL MOV DX,0FA4H MOV AX,1000 OUT DX,AL XCHG AH,AL OUT DX,AL IRET 9.26 答:首先更正8259A的IR2的中斷類型碼為42H。;根據(jù)題圖的硬件電路,8253的四個端口地址應(yīng)該連續(xù),100H為計數(shù)器0;101H為計數(shù)器1,102H為計數(shù)器2,103H為控制字寄存器端口;準(zhǔn)備中斷向量表 MOV AX,0 MOV DS,AX MOV SI,42H ;中斷類型號42H SHL SI,1 SHL SI,1 ;SI×4 MOV SI,WORD PTR INT_POINT ;中斷服務(wù)程序的偏移地址存入向量表 ADD SI,2 MOV SI,WORD PTR INT_PO

溫馨提示

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

評論

0/150

提交評論