c章微機和外設(shè)CPU與外設(shè)間的數(shù)據(jù)傳送方式

c章微機和外設(shè)CPU與外設(shè)間的數(shù)據(jù)傳送方式

ID:45034452

大?。?47.00 KB

頁數(shù):37頁

時間:2019-11-08

c章微機和外設(shè)CPU與外設(shè)間的數(shù)據(jù)傳送方式_第1頁
c章微機和外設(shè)CPU與外設(shè)間的數(shù)據(jù)傳送方式_第2頁
c章微機和外設(shè)CPU與外設(shè)間的數(shù)據(jù)傳送方式_第3頁
c章微機和外設(shè)CPU與外設(shè)間的數(shù)據(jù)傳送方式_第4頁
c章微機和外設(shè)CPU與外設(shè)間的數(shù)據(jù)傳送方式_第5頁
資源描述:

《c章微機和外設(shè)CPU與外設(shè)間的數(shù)據(jù)傳送方式》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。

1、1微型計算機技術(shù)第10c章微機和外設(shè)__CPU與外設(shè)間的數(shù)據(jù)傳送方式2一、無條件傳送方式二、條件傳送方式(查詢方式)三、中斷傳送方式四、DMA傳送方式(DirectMemoryAccess)有以下幾種傳送方式:3概述1。無條件傳送(CPU與外設(shè)同步工作):外部控制過程各種動作時間是固定的,而且是已知的。2。查詢方式(CPU與外設(shè)不同步工作):傳送前,先查詢外設(shè)狀態(tài),準備好才傳送,否則CPU處于等待狀態(tài)。3。中斷方式:外設(shè)與CPU處于并行工作,一旦外設(shè)準備好,外設(shè)向CPU發(fā)中斷申請,條件具備,CPU暫停原程序執(zhí)行,響應(yīng)中斷,外設(shè)與C

2、PU之間交換數(shù)據(jù)。4。DMA方式(高速I/O及成組交換數(shù)據(jù)):CPU放棄對總線的控制權(quán),由硬件實現(xiàn)存儲器與外設(shè)之間交換數(shù)據(jù),稱直接存取存儲器。4一、無條件傳送方式(同步傳送方式)?實現(xiàn)方法CPU不查詢外設(shè)工作狀態(tài),與外設(shè)速度的匹配通過在軟件上延時完成,在程序中直接用I/O指令,完成與外設(shè)的數(shù)據(jù)傳送?特點1.適用于外設(shè)動作時間已知,在CPU與外設(shè)進行數(shù)據(jù)傳送時,外設(shè)保證已準備好的情況2.軟硬件十分簡單。5例1無條件輸入接口接口電路,即硬件上保證:只在CPU執(zhí)行從200H端口輸入數(shù)據(jù)時,三態(tài)門處于工作狀態(tài),使輸入設(shè)備的數(shù)據(jù)送上總線側(cè),

3、而CPU執(zhí)行其它指令時,三態(tài)門均處于高阻狀態(tài),使輸入設(shè)備的數(shù)據(jù)線與總線側(cè)斷開三態(tài)緩沖器輸入設(shè)備數(shù)據(jù)線IOR地址譯碼地址線200H000D7~D0A15~A0與非PC總線6無條件輸入編程:從端口200H讀入256個字節(jié)到內(nèi)存緩沖區(qū)buffer中。、、、MOVAX,SEGbufferMOVDS,AX;取緩沖區(qū)LEADI,buffer;首地址MOVCX,100H;傳送個數(shù)MOVDX,200H;端口地址next:;延時等待INAL,DX;讀入數(shù)據(jù)CALLdelayMOV[DI],AL;送緩沖區(qū)INCDI;修改指針LOOPnext、、、;延

4、時子程delayPROCPUSHCXMOVCX,80Hcc:LOOPccPOPCXRETdelayENDP7例2無條件輸出:編程控制系統(tǒng)板上揚聲器發(fā)聲。4765321061H端口8253與門放大器揚聲器01控制其它外設(shè)揚聲器控制電路圖:T個數(shù)發(fā)聲原理:向揚聲器發(fā)送一串脈沖信號,推動揚聲器內(nèi)紙盆振動,發(fā)出聲音脈沖的頻率,控制音高;脈沖的個數(shù),控制音長81.使61H端口的0位輸出0,控制8253輸出1。2.使61H端口的1位按所需頻率交替輸出0和1,產(chǎn)生所需的聲音。編程方法:4765321061H端口8253與門放大器揚聲器01控制其

5、它外設(shè)揚聲器控制電路圖:9codeSEGMENTASSUMECS:codestart:MOVBX,3000H;控制脈沖個數(shù)MOVDX,6000H;控制脈沖周期INAL,61H;讀入61H端口數(shù)據(jù)ANDAL,11111100b;D0為0,8253輸出1sound:XORAL,00000010bOUT61H,AL;61H端口的D1交替為0和1MOVCX,DXdelay:LOOPdelay;延時DECBX;控制脈沖數(shù)JNZsoundINT03H;程序斷點codeENDSENDstart發(fā)聲程序:61H端口8253與門放大器揚聲器01控制

6、其它外設(shè)T個數(shù)10二、條件傳送方式(查詢傳送方式)?實現(xiàn)方法:在與外設(shè)進行傳送數(shù)據(jù)前,CPU先查詢外設(shè)狀態(tài),當外設(shè)準備好后,才執(zhí)行I/O指令,實現(xiàn)數(shù)據(jù)傳送?特點:1.CPU通過不斷查詢外設(shè)狀態(tài),實現(xiàn)與外設(shè)的速度匹配2.CPU的工作效率低11?查詢傳送方式,編程流程:NY從狀態(tài)端口讀入狀態(tài)信息從數(shù)據(jù)端口傳送一個數(shù)據(jù)外設(shè)準備好否?12例1查詢方式輸入假設(shè)外設(shè)的狀態(tài)端口為21CH,其中D4=1時,表示外設(shè)數(shù)據(jù)準備好外設(shè)的數(shù)據(jù)端口為218H。實現(xiàn)從外設(shè)讀入50H個字節(jié)到內(nèi)存緩沖區(qū)buffer中。21CH端口狀態(tài)端口218H端口數(shù)據(jù)端口地址

7、譯碼數(shù)據(jù)緩沖控制電路輸入外備CPU地址線數(shù)據(jù)線控制線13查詢方式輸入接口狀態(tài)端口D4=1表示外設(shè)準備好三態(tài)緩沖器輸入設(shè)備數(shù)據(jù)線218H數(shù)據(jù)端口地址譯碼地址線狀態(tài)端口地址譯碼鎖存器IORRQD三態(tài)緩沖器+5vD421CHSTBPC總線IORA15~A0D7~D0&&MOVDX,218HINAL,DXMOVDX,21CHINAL,DX14從21CH狀態(tài)端口讀入外設(shè)狀態(tài)信息從218H數(shù)據(jù)端口讀入一個字節(jié)數(shù)據(jù)YND4=1,外設(shè)準備好否?N50H個數(shù)據(jù)傳送結(jié)束?Y編程從外設(shè)讀入50H個字節(jié)到內(nèi)存緩沖區(qū)buffer中15、、、MOVAX,SE

8、Gbuffer;取緩沖區(qū)首地址MOVDS,AXLEADI,bufferMOVCX,50H;傳送個數(shù)next:MOVDX,21CHask:INAL,DX;從狀態(tài)端口讀入狀態(tài)信息TESTAL,00010000B;檢測D4位JZask;D4=0,繼續(xù)查詢

當前文檔最多預(yù)覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當前文檔最多預(yù)覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學公式或PPT動畫的文件,查看預(yù)覽時可能會顯示錯亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負責整理代發(fā)布。如果您對本文檔版權(quán)有爭議請及時聯(lián)系客服。
3. 下載前請仔細閱讀文檔內(nèi)容,確認文檔內(nèi)容符合您的需求后進行下載,若出現(xiàn)內(nèi)容與標題不符可向本站投訴處理。
4. 下載文檔時可能由于網(wǎng)絡(luò)波動等原因無法下載或下載錯誤,付費完成后未能成功下載的用戶請聯(lián)系客服處理。