資源描述:
《第6.1章05:輸入輸出.ppt》由會(huì)員上傳分享,免費(fèi)在線(xiàn)閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫(kù)。
1、第六章輸入和輸出無(wú)條件傳送[同步傳送]查詢(xún)式傳送[異步傳送]中斷方式傳送DMA方式傳送1I/O設(shè)備的數(shù)據(jù)傳送方式直接存儲(chǔ)器存儲(chǔ)方式DMA(DirectMemoryAccess)數(shù)據(jù)不經(jīng)過(guò)CPU,在存儲(chǔ)器和外設(shè)間傳送方式程序直接控制方式無(wú)條件傳送方式不需要查詢(xún)外設(shè)狀態(tài),直接用輸入輸出指令與外設(shè)傳送數(shù)據(jù)查詢(xún)方式CPU與外設(shè)不同步中斷傳送方式2(1)無(wú)條件傳送①輸入的例子:MOVDX,160HINAL,DX3②輸出的例子MOVDX,160HMOVAL,[BX]OUTDX,AL4(2)查詢(xún)式傳送①輸入的例子:5電路原理分析:?jiǎn)?dòng)ADC以后,轉(zhuǎn)換結(jié)束時(shí)產(chǎn)生EOC信
2、號(hào),把轉(zhuǎn)換結(jié)果鎖存至鎖存器,把狀態(tài)觸發(fā)器置為1,表示數(shù)據(jù)已經(jīng)準(zhǔn)備好??刂贫丝凇獙?xiě)164H端口,譯碼器輸出和IOW信號(hào)同時(shí)有效,啟動(dòng)ADC轉(zhuǎn)換。狀態(tài)端口——讀162H端口,譯碼器輸出和IOR信號(hào)同時(shí)有效,打開(kāi)通過(guò)D0讀取狀態(tài)信息。數(shù)據(jù)端口——讀160H端口,譯碼器輸出和IOR信號(hào)同時(shí)有效,打開(kāi)三態(tài)緩沖器,從D7~D0讀入數(shù)據(jù),同時(shí)清除狀態(tài)信息。負(fù)脈沖6程序示例:從ADC讀取一個(gè)數(shù)據(jù)到AL。READ:MOVDX,160HINAL,DX;清狀態(tài)MOVDX,164HOUTDX,AL;啟動(dòng)ADCREAD1:MOVDX,162HINAL,DX;查詢(xún)狀態(tài)TESTAL
3、,1JZREAD1MOVDX,160HINAL,DX;讀取數(shù)據(jù)RET7②輸出的例子:8電路原理說(shuō)明:1、寫(xiě)到164H端口,產(chǎn)生一個(gè)負(fù)脈沖來(lái)啟動(dòng)外設(shè)開(kāi)始工作。2、寫(xiě)數(shù)據(jù)到160H端口,CPU輸出數(shù)據(jù)到鎖存器,同時(shí)置“1”狀態(tài)觸發(fā)器,為外設(shè)提供狀態(tài)信息:“數(shù)據(jù)已準(zhǔn)備好”。3、讀取162H端口,CPU查詢(xún)狀態(tài),看外設(shè)是否取走數(shù)據(jù)。(外設(shè)取走數(shù)據(jù),則將發(fā)出ACK信號(hào),清除狀態(tài)觸發(fā)器)9程序示例:將AL中的數(shù)據(jù)輸出。WRITE:MOVDX,164HOUTDX,AL;啟動(dòng)外設(shè)MOVDX,160HOUTDX,AL;輸出數(shù)據(jù)MOVDX,162HWRITE1:INAL,D
4、X;查詢(xún)狀態(tài)TESTAL,1JNZWRITE1RET10接口信息分類(lèi):數(shù)據(jù)信息:8位或16位,數(shù)字量、模擬量、開(kāi)關(guān)量等狀態(tài)信息:反映外設(shè)接口電路或外設(shè)的狀態(tài)控制信息:控制I/O設(shè)備的啟動(dòng)或停止、工作方式等11I/O的尋址方式存儲(chǔ)器對(duì)應(yīng)的輸入輸出方式特點(diǎn):把一個(gè)外設(shè)端口作為存儲(chǔ)器的一個(gè)單元對(duì)待,外設(shè)與存儲(chǔ)器共用地址單元。數(shù)據(jù)傳送:使用存儲(chǔ)器的操作指令標(biāo)準(zhǔn)的I/O尋址方式特點(diǎn):地址空間獨(dú)立數(shù)據(jù)傳送:專(zhuān)門(mén)的輸入/輸出指令I(lǐng)NOUT尋址方式:直接尋址端口地址8位范圍[0,255]間接尋址端口地址16位范圍[0,0FFFFH]12