微機(jī)原理與接口技術(shù)(樓順天編著)課后習(xí)題答案_第1頁(yè)
微機(jī)原理與接口技術(shù)(樓順天編著)課后習(xí)題答案_第2頁(yè)
微機(jī)原理與接口技術(shù)(樓順天編著)課后習(xí)題答案_第3頁(yè)
微機(jī)原理與接口技術(shù)(樓順天編著)課后習(xí)題答案_第4頁(yè)
微機(jī)原理與接口技術(shù)(樓順天編著)課后習(xí)題答案_第5頁(yè)
已閱讀5頁(yè),還剩75頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

用低位端口地址(即A0=0)進(jìn)行操作,因此可編程如下:MOVAL,23HMOV20H,AL根據(jù)中斷過程的要求設(shè)計(jì)的一個(gè)中斷系統(tǒng),大致需要考慮哪些問題?答:1)設(shè)計(jì)必要的中斷源,確定它們提出的中斷請(qǐng)求的方式。2)編寫初始化程序。根據(jù)急迫程度的不同,規(guī)定好中斷源的優(yōu)先級(jí)別,以確定當(dāng)幾個(gè)中斷源同時(shí)請(qǐng)求時(shí),處理機(jī)能有一個(gè)先后響應(yīng)次序。3)當(dāng)處理機(jī)響應(yīng)中斷后,需要把被中斷程序的現(xiàn)場(chǎng)、斷點(diǎn)保護(hù)起來(lái),以便中斷處理結(jié)束后能返回原程序。4)中斷服務(wù)程序設(shè)計(jì)。5)恢復(fù)現(xiàn)場(chǎng),返回原程序。給定(SP)=0100H,(SS)=0300H,(PSW)=0240H,以及存儲(chǔ)單元的內(nèi)容(00020H)=0040H,(00022H)=0100H,在段地址為0900H及偏移地址為00A0H的單元中有一條中斷指令I(lǐng)NT8,試問執(zhí)行INT8指令后,SP、SS、IP、PSW的內(nèi)容是什么?棧頂?shù)娜齻€(gè)字是什么?答:執(zhí)行INT8之后,(SP)=00FAH,(SS)=0300H,(IP)=0040H,(PSW)=0040H。由于INT8為雙字節(jié)指令,所以棧頂?shù)娜齻€(gè)字從上到下分別是00A2H,0900H,0240H。中斷服務(wù)程序結(jié)束時(shí),用RETF指令代替IRET指令能否返回主程序?這樣做存在什么問題?答:可以。但這樣做存在問題。IRET指令執(zhí)行時(shí)將出棧IP,CS和PSW的值,而RETF指令只出棧IP,CS的值,因而若中斷服務(wù)程序中改變了標(biāo)志位,用RETF指令返回在主程序中將無(wú)法恢復(fù)標(biāo)志位的值。尤其是在中斷服務(wù)程序中關(guān)中斷后(IF=0),用RETF指令將無(wú)法重新開中斷,從而導(dǎo)致中斷服務(wù)結(jié)束后CPU不能再響應(yīng)其他可屏蔽中斷。

第9章定時(shí)/計(jì)數(shù)器8253應(yīng)用設(shè)計(jì)下列地址哪些能夠分配給8253/8254的計(jì)數(shù)器0?為什么?(23H、54H、97H、51H、FCH、59H)解:因?yàn)橐呀?jīng)約定采用A2,A1作為8253的內(nèi)部地址線,而且計(jì)數(shù)器0的地址為00,所以在題中所給的地址中只有51H,59H的A2和A1同時(shí)為0,即:A2A1=00.如果計(jì)數(shù)器0設(shè)定為方式0,GATE0=1,CLK0=1MHz,時(shí)常數(shù)為N=1000,請(qǐng)畫出OUT0的波形。如果計(jì)數(shù)器1設(shè)定為方式1,其它參數(shù)與計(jì)數(shù)器0相同,畫出OUT1的波形。編程實(shí)現(xiàn):將8253計(jì)數(shù)器0設(shè)置成方式4,并置時(shí)常數(shù)10000,然后處于等待狀態(tài),直到CE的內(nèi)容≤1000后再向下執(zhí)行。解:MOVDX,COUNTD;寫入計(jì)數(shù)器0的方式控制字

MOVAL,00111000B

OUTDX,AL

MOVDX,COUNTA;設(shè)置計(jì)數(shù)器0的常數(shù)

MOVAX,10000OUTDXXCHGAL,AHOUTDXL1:MOVDX,COUNTD;寫入計(jì)數(shù)器0的方式控制字MOVAL,0HOUTDXMOVDX,COUNTA;讀入CEINAL,DXMOVAH,ALINAL,DXXCHGAL,AHCMPAX,1000;判別CE當(dāng)前大小

JAL1利用8253可以實(shí)現(xiàn)確定時(shí)間的延遲,編程實(shí)現(xiàn)延時(shí)10秒的程序段(設(shè)可以使用的基準(zhǔn)時(shí)鐘為1MHz)。解:本題使用計(jì)數(shù)器0和計(jì)數(shù)器1,并且計(jì)數(shù)器0的輸出OUT0作為計(jì)數(shù)器1的時(shí)鐘輸入CLK1.程序如下:MOV DX,COUNTD ;寫計(jì)數(shù)器0方式控制字MOV AL,00110100BOUT DXMOV DX,COUNTAMOV AX,10000 ;寫計(jì)數(shù)器0時(shí)常數(shù),分頻得到100Hz時(shí)鐘頻率OUT DXXCHG AL,AHOUT DXMOV DX,COUNTD ;寫計(jì)數(shù)器1方式控制字MOV AL,01110000BOUT DXMOV DX,COUNTBMOV AX,999 ;分頻得到0.1Hz時(shí)鐘頻率。(在方式0下,時(shí)常數(shù)為N時(shí),;OUT輸出的低電平寬度為N+1).OUT DXXCHG AL,AHOUT DXL1: ;延時(shí)MOV DX,COUNTD ;當(dāng)前CE的內(nèi)容鎖存到OLMOV AL,01000000BOUT DXMOV DX,COUNTBIN AL,DXMOV AH,ALIN AL,DXXCHG AL,AHCMP AX,999 JNA L1 ;延時(shí)結(jié)束,則繼續(xù)執(zhí)行,否則,跳到L1,繼續(xù)延時(shí)….比較8254方式0與方式4、方式1與方式5的區(qū)別?方式0與方式4方式0OUT端計(jì)數(shù)過程中為低,計(jì)數(shù)值減為0時(shí),輸出變高方式4OUT端計(jì)數(shù)過程中為高,計(jì)數(shù)值減為0時(shí)輸出寬度為1個(gè)CLK的負(fù)脈沖方式1與方式5方式1OUT端輸出寬度為n個(gè)CLK的低電平,計(jì)數(shù)值減為0時(shí),輸出為高方式5OUT端計(jì)數(shù)過程中為高,計(jì)數(shù)值減為0時(shí)輸出寬度為1個(gè)CLK的負(fù)脈沖在8088最小系統(tǒng)中,8253的端口地址為284H~287H。系統(tǒng)提供的時(shí)鐘為1MHz,要求在OUT0輸出周期為20微秒的方波,在OUT1輸出周期為200微秒,其中每周期為負(fù)的時(shí)間是180微秒的信號(hào)。請(qǐng)編寫8253的初始化程序。解:OUT0輸出為20微妙方波,可用方式三直接產(chǎn)生,OUT1輸出波形與書中例9.2類似,可用其中思想產(chǎn)生此信號(hào)。如果允許增加外部器件,也可在例9.1的基礎(chǔ)上,將OUT端信號(hào)通過與非門取反,這樣即可產(chǎn)生題目要求信號(hào)。本例利用例9.1思想解答MOVDX,287H;寫計(jì)數(shù)器0控制方式字MOVAL,00010110BOUTDXMOVDX,284H;寫計(jì)數(shù)器0時(shí)常數(shù)MOVAL,20OURDX,ALMOVDX,287;寫計(jì)數(shù)器2控制方式字MOVAL,10010110BOUTDXMOVDX,286H;寫計(jì)數(shù)器2時(shí)常數(shù)MOVAL,200OUTDXMOVDX,287HMOVAL,01010010B;寫計(jì)數(shù)器1控制方式字OUTDXMOVDX,285HMOVAL,9;寫計(jì)數(shù)器1時(shí)常數(shù)OUTDX,通過8253計(jì)數(shù)器0的方式0產(chǎn)生中斷請(qǐng)求信號(hào),現(xiàn)需要延遲產(chǎn)生中斷的時(shí)刻,可采用:在OUT0變高之前重置初值;在OUT0變高之前在GATE0端加一負(fù)脈沖信號(hào);降低加在CLK0端的信號(hào)頻率;以上全是。解:DA:方式0下,在OUT0變高之前重置初值,將在下一個(gè)CLK的下降沿使時(shí)常數(shù)從CR讀入CE并重新計(jì)數(shù)。B:在OUT0變高之前在GATE0端加一負(fù)脈沖信號(hào)可以延時(shí)一個(gè)時(shí)鐘周期,達(dá)到延時(shí)的目的。C:降低加在CLK0端的信號(hào)頻率,可以增大時(shí)鐘周期,達(dá)到延長(zhǎng)OUT0端低電平的時(shí)間。(注:A中,如果重置的初值為1,則不會(huì)達(dá)到延時(shí)的效果)已知8254計(jì)數(shù)器0的端口地址為40H,控制字寄存器的端口地址為43H,計(jì)數(shù)時(shí)鐘頻率為2MHz,利用這一通道設(shè)計(jì)當(dāng)計(jì)數(shù)到0時(shí)發(fā)出中斷請(qǐng)求信號(hào),其程序段如下,則中斷請(qǐng)求信號(hào)的周期是32.7675ms。MOVAL,00110010BOUT43H,ALMOVAL,0FFHOUT40H,ALOUT40H,AL若8254芯片可使用的8086端口地址為D0D0H~D0DFH,試畫出系統(tǒng)設(shè)計(jì)連接圖。設(shè)加到8254上的時(shí)鐘信號(hào)為2MHz,(1)利用計(jì)數(shù)器0~2分別產(chǎn)生下列三種信號(hào):周期為10us的對(duì)稱方波每1s產(chǎn)生一個(gè)負(fù)脈沖10s后產(chǎn)生一個(gè)負(fù)脈沖每種情況下,說(shuō)明8254如何連接并編寫包括初始化在內(nèi)的程序段。(2)希望利用8086通過一專用接口控制8253的GATE端,當(dāng)CPU使GATE有效開始,20us后在計(jì)數(shù)器0的OUT端產(chǎn)生一個(gè)正脈沖,試設(shè)計(jì)完成此要求的硬件和軟件。解:選用D0D0H~D0DFH中的偶地址DODO,DOD2,DOD4,DOD6為基本地址作為8254的端口地址,設(shè)8086工作在最小方式下。8254端口地址譯碼電路如下圖:計(jì)數(shù)器0輸入端加2MHz的時(shí)鐘信號(hào),GATE0加+5V電壓,輸出OUT0信號(hào)為周期為10μs的對(duì)稱方波。初始化代碼:MOVDX,0D0D6H;寫計(jì)數(shù)器0工作方式MOVAL,00010110BOUTDXMOVDX,0D0D0H;寫計(jì)數(shù)器0時(shí)常數(shù)MOVAL,20OUTDXCLK0加2MHz的始終信號(hào),GATE0,GATE1加+5V電壓,OUT0輸出加到CLK1做時(shí)鐘信號(hào),OUT1輸出為每1s產(chǎn)生一個(gè)負(fù)脈沖。初始代碼:MOVDX,0D0D6H;寫計(jì)數(shù)器0的工作方式MOVAL,00010110BOUTDXMOVDX,0D0D0H;寫計(jì)數(shù)器0的時(shí)常數(shù)MOVAL,100OUTDXMOVDX,0D0D6H;寫計(jì)數(shù)器1的工作方式MOVAL,01110100BOUTDXMOVDX,0D0D2H;寫計(jì)數(shù)器1的時(shí)常數(shù)MOVAX,20000OUTDXXCHGAL,AHOUTDXCLK0加2MHz的始終信號(hào),GATE0,GATE1加+5V電壓,OUT0輸出加到CLK2做時(shí)鐘信號(hào),OUT2輸出為10s后產(chǎn)生一個(gè)負(fù)脈沖。初始代碼:MOVDX,0D0D6H;寫計(jì)數(shù)器0的工作方式MOVAL,00110110BOUTDXMOVDX,0D0D0H;寫計(jì)數(shù)器0的時(shí)常數(shù)MOVAX,1000OUTDXXCHGAL,AHOUTDXMOVDX,0D0D6H;寫計(jì)數(shù)器2的工作方式MOVAL,10111000BOUTDXMOVDX,0D0D4H;寫計(jì)數(shù)器2的時(shí)常數(shù)MOVAX,20000OUTDXXCHGAL,AHOUTDX選用地址D0D0,DOD2,DOD4,DOD6為8253的端口地址,D0D8為GATE端口地址,該端口采用74LS373,8253用方式4,在OUT輸出端加非門實(shí)現(xiàn)脈沖功能。接口電路如圖:初始代碼為:MOVDX,0D0D8H;GATE初始化MOVAL,0OUTDXMOVDX,0D0D6H;寫計(jì)數(shù)器0工作方式MOVAL,00011000BOUTDXMOVDX,0D0D0H;寫計(jì)數(shù)器0時(shí)常數(shù)MOVAL,40OUTDXMOVDX,0D0D8HMOVAL,1OUTDX,AL;使GATE變高有效若加到8254上的時(shí)鐘頻率為0.5MHz,則一個(gè)計(jì)數(shù)器的最長(zhǎng)定時(shí)時(shí)間是多少?若要求10分鐘產(chǎn)生一次定時(shí)中斷,試提出解決方案。解:一個(gè)計(jì)數(shù)器的最長(zhǎng)定時(shí)時(shí)間應(yīng)該是置入時(shí)常數(shù)0時(shí),此時(shí)定時(shí)時(shí)間為:65536/0.5*10^6s=131ms采用方式0即:計(jì)數(shù)達(dá)到終值時(shí)中斷來(lái)10分鐘產(chǎn)生一次定時(shí)中斷,此時(shí)時(shí)常數(shù)CR為:10*60*0.5*10^6=3*10^9.由于一個(gè)計(jì)數(shù)器最多分頻65536,所以至少得使用2個(gè)計(jì)數(shù)器。我們采用計(jì)數(shù)器0和計(jì)數(shù)器1.計(jì)數(shù)器0的時(shí)常數(shù)CR0為60000,計(jì)數(shù)器1的時(shí)常數(shù)CR1為50000.連接方式為:把0.5MHz的時(shí)鐘頻率接到計(jì)數(shù)器0的CLK0,然后把計(jì)數(shù)器0的OUT0接到計(jì)數(shù)器1的CLK1。這樣計(jì)數(shù)器1的OUT1端輸出的就是10分鐘產(chǎn)生一次的定時(shí)中斷??棽紮C(jī)控制系統(tǒng)如圖9.26所示,已知織布機(jī)每織1米發(fā)出一個(gè)正脈沖,每織100米要求接收到一脈沖,去觸發(fā)剪裁設(shè)備把布剪開。(1)設(shè)8253的端口地址為80H~83H,編寫對(duì)8253初始化程序。(2)假定系統(tǒng)提供的信號(hào)頻率為1MHz,希望利用8253的其余通道產(chǎn)生0.1秒的周期信號(hào),編寫初始化程序。圖9.26織布機(jī)控制系統(tǒng)解:(1) MOV DX,83H MOV AL,00010100B OUT DX MOV DX,80H MOV AL,100 OUT DX (2)將計(jì)數(shù)器1的輸出OUT1信號(hào)作為計(jì)數(shù)器2的時(shí)鐘輸入CLK2,計(jì)數(shù)器1的時(shí)鐘輸入為系統(tǒng)提供1MHZ的信號(hào)MOV DX,83HMOV AL,01110100BOUT DXMOV DX,81HMOV AX,1000OUT DXXCHG AL,AHMOV DXMOV DX,83HMOV AL,10010110BOUT DXMOV DX,82HMOV AL,100OUT DX在IBMPC系統(tǒng)中根據(jù)下列不同條件設(shè)計(jì)接口邏輯,利用8253完成對(duì)外部脈沖信號(hào)重復(fù)頻率的測(cè)量。(1)被測(cè)脈沖信號(hào)的重復(fù)頻率在10~1000Hz范圍內(nèi)。(2)被測(cè)脈沖信號(hào)的重復(fù)頻率在0.5~1.5Hz范圍內(nèi)。(3)被測(cè)脈沖信號(hào)重復(fù)頻率在10~100Hz范圍內(nèi)。(4)被測(cè)是間歇脈沖信號(hào),每次有信號(hào)時(shí)有100個(gè)脈沖,重復(fù)頻率為0.8~1.2MHz,間歇頻率大約每秒15次,要求測(cè)有信號(hào)時(shí)的脈沖重復(fù)頻率。解:用兩個(gè)計(jì)數(shù)器,計(jì)數(shù)器0的CLK接待測(cè)信號(hào),GATE接半周期為10s的高電平信號(hào),OUT接8259,同時(shí)取反接計(jì)數(shù)器1的GATE端。計(jì)數(shù)器1的CLK接系統(tǒng)時(shí)鐘,半周期為T0。在這樣的邏輯電路下,計(jì)數(shù)器0的功能是記錄待測(cè)信號(hào)的脈沖數(shù)N0,計(jì)數(shù)器1的功能是記錄在相同時(shí)間里系統(tǒng)時(shí)鐘信號(hào)的脈沖數(shù)N1。根據(jù)T=N1*T0/N0可計(jì)算出待測(cè)信號(hào)的周期。S(t)是待測(cè)信號(hào),S’(t)為給定的周期大于10s的高電平信號(hào)。端口聲明:COUNTA為計(jì)數(shù)器0的地址,COUNTB為計(jì)數(shù)器2的地址,COUNTD為控制器地址,COUNT為373地址程序如下:MOVDX,COUNTD;計(jì)數(shù)器1初始化MOVAL,01110000BOUTDXMOVDX,COUNTBOUTDXMOVDX,COUNTBMOVAL,OOUTDXMOVDX,COUNTD;計(jì)數(shù)器0初始化MOVAL,00010000BOUTDXMOVDX,COUNTAMOVAL,0OUTDXOUTDXSTI讀兩計(jì)數(shù)器的計(jì)數(shù),并進(jìn)行計(jì)算的中斷服務(wù)子程序:PUSHAXPUSHBXPUSHCXPUSHDXMOVDX,COUNTDMOVAL,00000000BOUTDXMOVDX,COUNTAINAL,DXXCHGAL,AHINAL,DXXCHGAL,AHNEGAXINCAXMOVBX,AXMOVDX,COUNTDMOVAL,00010000BOUTDXMOVDX,COUNTBINAL,DXXCHGAL,AHINAL,DXXCHGAL,AHNEGAXINCAXMOVCX,T0MULCXDIVBXMOVSFR,AXPOPDXPOPCXPOPBXPOPAXIRETSFR中保存結(jié)果即為待測(cè)信號(hào)的周期。對(duì)于(1)題,10*10不小于100,10*1000不大于65535,可以用計(jì)數(shù)法。同理(3)也可用此方法。對(duì)于(2)題,可用周期法。邏輯電路圖如下:程序如下:MOVDX,COUNTDMOVAL,00110100BOUTDXMOVDX,COUNTAMOVAL,0OUTDXOUTDXSTIPUSHAXPUSHBXPUSHDXMOVDX,COUNTDMOVAL,00000000BOUTDXMOVDX,COUNTAINAL,DXXCHGAL,AHINAL,DXXCHGAL,AHNEGAXINCAXMOVBX,AXMOVDX,000FHMOVAX,4240HDIVBXMOVSFR,AXPOPDXPOPBXPOPAXIRET(4)如圖設(shè)計(jì)接口,計(jì)數(shù)器1用來(lái)記錄在50個(gè)脈沖所用時(shí)間,50個(gè)信號(hào)脈沖最多用1/0.8*50(約為63us)由于計(jì)數(shù)器1用1MHzCLK,故其計(jì)數(shù)個(gè)數(shù)N即為Nus,所以當(dāng)N>63時(shí),則有低電平間隔計(jì)入,須重新計(jì)數(shù)。當(dāng)N>63時(shí),則計(jì)算得待測(cè)頻率。程序如下:MOVDX,COUNTDMOVAL,00HOUTDXMOVDX,COUNTDMOVAL,00010000BOUTDXMOVDX,COUNTAMOVAL,50OUTDXMOVDX,COUNTDMOVAL,01110000BOUTDXMOVCOUNTBMOVAL,0OUTDXOUTDXL2:MOVDX,COUNT;給GATE0和GATE1高電平,開始計(jì)數(shù)MOVAL,81HOUTDXL1:NOPMOVDX,COUNTDMOVAL,00000000BOUTDXMOVDX,COUNTAINAL,DXMOVDX,COUNTAINAL,DXANDAL,AL;判斷是否計(jì)完50個(gè)脈沖,若未計(jì)完繼續(xù)等待JNZL1MOVDX,COUNTMOVAL,00H;若計(jì)完則暫停計(jì)數(shù)OUTDXMOVDX,COUNTD;讀計(jì)數(shù)器1結(jié)果MOVAL,01000000BOUTDXMOVDX,COUNTBINAL,DXXCHGAL,AHINAL,DXXCHGAL,AHNEGAXINCAXCMPAX,70H;當(dāng)AL大于70,則有間歇計(jì)入,重新測(cè)試JAL2MOVBL,ALMOVAL,50;計(jì)算頻率DIVBLMOVFREC,AL

第10章定時(shí)/計(jì)數(shù)器8253應(yīng)用設(shè)計(jì)試分析8255A方式0、方式1和方式2的主要區(qū)別,并分別說(shuō)明它們適合于什么應(yīng)用場(chǎng)合。答:方式0是基本的輸入/輸出,端口A、B、C都可以作為輸入輸出端口。適用于CPU與非智能I/O設(shè)備的數(shù)據(jù)傳輸;方式1是有聯(lián)絡(luò)信號(hào)的輸入/輸出,端口A、B都可以設(shè)定成該方式,此時(shí)三個(gè)端口的信號(hào)線分成了A、B兩組,用作A組的聯(lián)絡(luò)信號(hào),用作B組的聯(lián)絡(luò)信號(hào)。適用于高速CPU與低速I/O設(shè)備的數(shù)據(jù)傳輸; 方式2是雙向傳輸,只有A組端口可以設(shè)定成該方式,用作輸出的聯(lián)絡(luò)信號(hào),用作輸入的聯(lián)絡(luò)信號(hào),用作中斷請(qǐng)求信號(hào)。適用于雙機(jī)之間數(shù)據(jù)的并行傳送。8255A的A組設(shè)置成方式1輸入,與CPU之間采用中斷方式聯(lián)絡(luò),則產(chǎn)生中斷請(qǐng)求信號(hào)INTRA的條件是STBA=1,IBFA=1,INTEA=1。如果8255A的端口地址為300H~303H,A組和B組均為方式0,端口A為輸出,端口B為輸入,PC3~PC0為輸入,PC7~PC4為輸出,寫出8255A的初始化程序段;編程實(shí)現(xiàn)將從端口C低4位讀入的值從高4位送出。解: MOVDX,303H MOVAL,10000011B OUTDX MOVDX,302H INAL,DX MOVCL,4 SHLAL,CL OUTDX在實(shí)際應(yīng)用中經(jīng)常需要檢測(cè)設(shè)備的狀態(tài),并進(jìn)行指示。在8086最小方式系統(tǒng)下,有一片8255A,其分配的端口地址為8F00H~8F07H中的奇地址,外部設(shè)備產(chǎn)生的狀態(tài)有16個(gè)(K15~K0),要求采用4個(gè)發(fā)光二極管來(lái)指示開關(guān)量中“1”的個(gè)數(shù)。(1)畫出8255A的連接圖;(2)編寫程序段實(shí)現(xiàn)連續(xù)檢測(cè)并顯示。解:(1)(2) MOVDX,8F07H MOVAL,10010010B;端口A、B方式0輸入,端口C方式0輸出 OUTDXNEXT: MOVDX,8F03H;從端口B讀取高8位開關(guān)量 INAL,DX XCHGAL,AH MOVDX,8F01H;從端口A讀取低8位開關(guān)量 INAL,DX MOVBX,AX XORAL MOVCX,16 CLCL2: SHLBX,1 JNCL1 INCALL1: LOOPL2 MOVDX,8F05H;從端口C送出 OUTDX JMPNEXT;進(jìn)行下一次檢測(cè)利用IBMPC系統(tǒng)機(jī)的總線槽,開發(fā)由一片8255A構(gòu)成的子系統(tǒng),8255A端口地址為260H~263H,編程實(shí)現(xiàn)產(chǎn)生如圖10.20所示的8個(gè)信號(hào)(各個(gè)信號(hào)的節(jié)拍不必嚴(yán)格相等)。圖10.20要求產(chǎn)生的信號(hào)波形解:8355A與IBMPC機(jī)總線的連接框圖如下:可將8255A的端口A作為要產(chǎn)生的信號(hào)的輸出端口,設(shè)定為方式0輸出,端口B和端口C不做使用,均設(shè)定為方式0輸0出。程序段如下:MOVDX,263H;設(shè)定8255A的工作方式MOVAL,10000000BOUTDXMOVDX,260H;產(chǎn)生指定信號(hào)XORALOUTDXREP:MOVAL,80HMOVCX,7REP1:OUTDXSARAL,1LOOPREP1MOVCX,8REP2:SHLAL,1OUTDXLOOPREP2JMPREP在實(shí)際應(yīng)用中,經(jīng)常會(huì)遇到要求輸入多個(gè)數(shù)據(jù)量,這時(shí)需要用到多路開關(guān),如圖10.21表示八選一的邏輯框圖及其真值表?,F(xiàn)有8組16位開關(guān)量數(shù)據(jù)(無(wú)符號(hào)數(shù)),要求通過一片8255A(端口地址為260H~263H)分時(shí)輸入到CPU(8088最小方式系統(tǒng))中,并

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(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)論