微型計(jì)算機(jī)原理與接口技術(shù):并行通信與接口技術(shù)_第1頁
微型計(jì)算機(jī)原理與接口技術(shù):并行通信與接口技術(shù)_第2頁
微型計(jì)算機(jī)原理與接口技術(shù):并行通信與接口技術(shù)_第3頁
微型計(jì)算機(jī)原理與接口技術(shù):并行通信與接口技術(shù)_第4頁
微型計(jì)算機(jī)原理與接口技術(shù):并行通信與接口技術(shù)_第5頁
已閱讀5頁,還剩47頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

§7并行通信與接口技術(shù)(P217)

本章學(xué)習(xí)要點(diǎn):1、掌握8255A與CPU或PC總線的連接2、掌握8255A的初始化編程3、掌握8255A方式0的應(yīng)用與程序設(shè)計(jì)4、理解8255A在其它方式下的工作原理§7.1并行通信概述一、為什么要擴(kuò)展并口?

二、并行通信特點(diǎn):(1)并行通信使用多根數(shù)據(jù)線,以字符為單位同時傳送數(shù)據(jù)。(2)并行通信中尚未標(biāo)準(zhǔn)化,不存在傳送格式問題,通常一次傳輸一個字符。(3)對于同步傳輸和異步傳輸也沒有嚴(yán)格定義。

同步傳送:I/O接口與外設(shè)之間使用同一個時序信號。

異步傳送:I/O接口和設(shè)備之間采用應(yīng)答方式。(4)并行接口傳遞的數(shù)據(jù)不要求固定的格式,這與串行傳送信息有數(shù)據(jù)格式的要求不同。(5)同串行通信相比,并行通信傳輸速度快,但不適于遠(yuǎn)距離傳輸。(6)并行接口從電路結(jié)構(gòu)來看,有可編程(8255A)和不可編程(簡單接口)之分。(圖)

二、并行通信特點(diǎn):§7.2可編程并行通信接口芯片8255A一、引腳功能(P259圖9-2)二、8255A內(nèi)部結(jié)構(gòu)(P259圖9-1)1、和外設(shè)一邊相連的信號

PA7~PA0——A組數(shù)據(jù)信號

PB7~PB0——B組數(shù)據(jù)信號

PC7~PC0——C組數(shù)據(jù)信號2、和CPU一邊相連的信號RESET 復(fù)位信號,高電平有效D7~D0 數(shù)據(jù)線

片選信號

讀出信號

寫入信號A1、A0 端口選擇信號二、8255A引腳功能(P259)3、8255A各端口與讀/寫信號、地址信號之間的對應(yīng)關(guān)系

A1A0

操作01000寫端口A01001寫端口B01010寫端口C01011寫控制寄存器00100讀端口A00101讀端口B00110讀端口C00111無操作4、8255A與CPU/PC總線的連接三、8255A的控制字(P260)工作方式:

方式0——基本的輸入輸出方式方式1——選通的輸入輸出方式方式2——雙向傳輸方式

各端口工作方式選擇控制字

C端口按位置1或置0控制字控制字分為:1、工作方式選擇控制字:(P260)2.端口C置1/置0控制字(P261)1、方式0(基本輸入/輸出方式)在該方式下,端口A和端口B可以由方式選擇控制字定為輸入口或輸出口,端口C分為兩個4位端口,同樣可以設(shè)定為輸出口或輸入口。四、8255A工作方式(P261)注意:若C口的高4位與低4位同為輸入或輸出,則對C口的訪問與A、B口相同,否則對C口訪問需要采取適當(dāng)?shù)钠帘未胧?/p>

方式0的輸入與輸出時序:(見書P262圖9-5、9-6)下面以輸出時序?yàn)槔v解。

方式0的輸出時序:(P262圖9-6)8255A端口CPU地址線CPU數(shù)據(jù)線CPU控制線2、方式1(選通工作方式)

在方式1下,A端口和B端口需要C端口提供選通信號和應(yīng)答信號,這些信號與C端口中的位有固定的對應(yīng)關(guān)系。A端口和B端口的工作方式可以不同。A端口和B端口既可以設(shè)置為輸入口,也可以設(shè)置為輸出口。由于方式1輸入和輸出的控制信號和狀態(tài)信號有不同的意義,所以下面分為方式1輸入和輸出兩種情況介紹。(1)輸入情況(P227圖6.22)

(1)輸入情況(P263圖9-7)中斷的允許和禁止:當(dāng)A/B通道設(shè)定為方式1輸入時,IBF=1能否發(fā)出中斷請求信號,還要取決于8255A內(nèi)部的中斷允許寄存器INTE是否為1。對INTEa/INTEb中斷允許觸發(fā)器的置1或清0是通過對PC4/PC2的置復(fù)位控制操作完成的。關(guān)于對C口的置復(fù)位控制字參見書P261圖9-4。需要說明的是:

INTE觸發(fā)器的狀態(tài)雖然是通過PC4/PC2設(shè)置的,但不影響PC4/PC2的引腳邏輯狀態(tài),只是對內(nèi)部中斷允許觸發(fā)器進(jìn)行操作。

方式1輸入時的工作時序如下:P263圖9-8(2)輸出情況P263圖9-8(1)方式2的特點(diǎn)只適用于端口A,由端口C提供5位控制和狀態(tài)信號。

方式2的使用場合:一個并行外設(shè)既可以作為輸入又可以作為輸出,輸入輸出動作不會同時進(jìn)行。

說明:只有端口A能工作在方式2。3、方式2(2)方式2信號

它是A口在方式1下,輸入和輸出兩種情況的組合。

見P263~P264(3)方式2的時序五、實(shí)際應(yīng)用(P267;書上P268有小錯誤)例1:電路如圖所示,8255工作在方式0,將內(nèi)存緩沖區(qū)BUF中的20個字符打印出來。設(shè):8255A的片選地址為300H。8255A作為打印機(jī)接口的示意圖

程序段如下:

MOVDX,303H MOVAL,81H;A口方式0、PC7~4出、PC3~0入

OUTDX,AL MOVAL,0DH;C口:PC6=1,即:=1 OUTDX,AL LEASI,BUF MOVCX,20LP:MOVDX,302HINAL,DX ;判BUSY=0?

ANDAL,04H;取PC2狀態(tài)

JNZLP MOVDX,300H MOVAL,[SI]

INCSI OUTDX,AL MOVDX,303H MOVAL,0CH;C口:PC6=0,即:=0 OUTDX,AL NOP NOP MOVAL,0DH;C口:PC6=1,即:=1 OUTDX,AL LOOPLP例2:方式1操作——打印機(jī)接口打印機(jī)是經(jīng)常使用的外設(shè),除少數(shù)情況都使用并行接口。它有8位數(shù)據(jù)線DATA1~DATA8,數(shù)據(jù)選通信號STROBE,應(yīng)答信號ACK和忙信號BUSY,其工作時序如圖所示:

本例8255A與打印機(jī)的接口電路如下圖所示,使用ACK作為聯(lián)絡(luò)的應(yīng)答信號。8255A工作在方式1,ACK與PC6(端口A的ACKA)相連,而STROBE由PC4通過軟件方式產(chǎn)生,PC3(INTRA)產(chǎn)生的中斷請求送入PC機(jī)8259A的IRQ7引腳。設(shè):8259A的端口地址為20H,8255A端口地址為300H~303H,8255A傳送n個字符給打印機(jī)的程序如下:DATASEGMENTBUFDB‘Hello…’

nEQU$-BUF;打印字節(jié)數(shù)

INT0F_SEGDW?;存0FH號中斷向量的段地址

INT0F_OFFDW?;存0FH號中斷向量的偏移地址

INT0F_IMFDB?;存0FH號中斷向量的屏蔽字DATAENDS例2:方式1操作——打印機(jī)接口編程CODESEGMENTASSUMECS:CODE,DATA:DS,DATA:ESSTART:MOVAX,DATA ;初始化數(shù)據(jù)段

MOVDS,AXCLI ;關(guān)中斷

MOVAX,350FH ;取0F

號中斷向量

INT21HMOVINT0F_SEG,ES ;保存原中斷向量

MOVINT0F_OFF,BXPUSHDS ;保存DS段值

MOVAX,SEGPRINT_INT;置換中斷向量

MOVDS,AX例2:方式1操作——打印機(jī)接口編程MOVDX,OFFSETPRINT_INTMOVAX,250FHINT21HPOPDS ;恢復(fù)原DS值INAL,21H ;從奇地址讀8259A屏蔽字MOVIMF,AL ;保存原屏蔽字ANDAL,7FH ;允許PCIRQ7中斷OUT21H,AL MOVDX,303H;303H是控制口地址MOVAL,10100000B ;A口方式1輸出,PC4為輸出OUTDX,ALMOVAL,0DH ;置PC6=1,允許8255A中斷OUTDX,AL;此時(DX)=303H,下同例2:方式1操作——打印機(jī)接口編程MOVAL,09H ;8255A的PC4輸出高電平OUTDX,AL ;(初始化STROBE#=1)STI ;標(biāo)志寄存器IF開中斷MOVBXOFFSETBUF;緩沖區(qū)首地址MOVCL,n ;傳送長度MOVAL,[BX] ;取數(shù)據(jù)INCBXMOVDX,300H ;A口地址OUTDX,AL ;向8255A輸出第一個字節(jié)DECCLMOVDX,303H ;8255A控制口地址例2:方式1操作——打印機(jī)接口編程MOVAL,08H ;輸出PC4低電平

OUTDX,AL ;(發(fā)STROBE#=0)

NOP ;延時,形成脈寬

NOPMOVAL,09H ;輸出PC4高電平

OUTDX,AL ;(STROBE#=1)HERE:CMPCL,0 ;等待n次中斷

JNZHERECLI ;開中斷

PUSHDS ;保存DSMOVAX,INT0F_SEG;恢復(fù)類型0FH

原中斷向量例2:方式1操作——打印機(jī)接口編程MOVDS,AXMOVDX,INT0F_OFFMOVAX,250FHINT21HPOPDSMOVAL,IMF ;取原屏蔽字OUT21H,AL ;恢復(fù)原屏蔽狀態(tài)MOVAH,4CH;返回DOSINT21H;下面是中斷服務(wù)程序例2:方式1操作——打印機(jī)接口編程PRINT_INTPROCNEARPUSHDX ;保護(hù)現(xiàn)場PUSHAXMOVDX,300HMOVAL,[BX];BX已指向緩沖區(qū)BUFOUTDX,AL ;8255A端口A輸出下一個字節(jié)INCBX ;修改地址DECCL ;字節(jié)計(jì)數(shù)MOVDX,303HMOVAL,08H

;產(chǎn)生STROBE#=0信號OUTDX,AL例2:方式1操作——打印機(jī)接口編程N(yùn)OP ;產(chǎn)生脈寬NOPMOVAL,09H ;產(chǎn)生STROBE#=1OUTDX,ALMOVAL,20H ;發(fā)EOI結(jié)束中斷OUT20H,ALPOPAX ;恢復(fù)現(xiàn)場POPDXIRETPRINT_INTENDPCODEENDSENDSTART例2:方式1操作——打印機(jī)接口編程練習(xí)1:設(shè)計(jì)一個方波信號發(fā)生器,要求用8255A的PC5端輸出連續(xù)方波信號(頻率不作要求,占空比1:1)。設(shè)計(jì)硬件電路,并編寫滿足功能要求的程序段。設(shè):8255A的片選地址為310~31FH。延時程序DELY_2S已知可以直接調(diào)用。想一想:這樣的發(fā)生器有缺點(diǎn)嗎?練習(xí)二:設(shè)計(jì)一個彩燈控制電路,由全滅開始依次點(diǎn)亮“天津工程師范學(xué)院”8個漢字,設(shè)計(jì)硬件控制電路,并編寫程序段。設(shè):8255A的片選地址為310~31FH。延時程序DELY_2S已知可以直接調(diào)用。要求用PA口輸出彩燈控制信號。工作方式控制字:方式0、各端口均為輸出的控制字為80H程序?qū)崿F(xiàn)技巧:

SARAL,1

硬件設(shè)計(jì)---驅(qū)動問題思考題:1、以十六進(jìn)制顯示鍵盤輸入的二進(jìn)制數(shù)2、顯示鍵號(鍵從0或從1開始編號)課程小結(jié):

1、三種工作方式的特點(diǎn)

2、置復(fù)位命令與端口輸出的異同(方式1、方式2、INTE)作業(yè):電路如圖所示,8255A工作在方式0,編寫驅(qū)動程序使兩個LED交替發(fā)光,亮滅持續(xù)時間約為1秒。設(shè)所需延時子程序DELY_1S已知,可以直接調(diào)用。A9~A3思考:按給出的要求,控制彩燈亮滅變化。END

對共陽極顯示器,要點(diǎn)亮的顯示段引腳需接低電平邏輯0,共陰極則相反,需接高電平邏輯1。本例采用了共陽極7段LED顯示器,但因使用了反相驅(qū)動,所以8255A輸出的段碼正好與共陽極所要求的電平狀態(tài)相反,其顯示16進(jìn)制數(shù)字形的編碼如表9.3所示。開關(guān)輸入與顯示程序如下:DATASEGMENTSEGTABDB3FH,06H,5BH,4FH,66H,6DH,7DH,07H;定義7段碼表

DB7FH,67H,77H,7CH,39H,5EH,79H,71HDATAEND

溫馨提示

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

最新文檔

評論

0/150

提交評論