微型計算機接口-第7章-并行接口_第1頁
微型計算機接口-第7章-并行接口_第2頁
微型計算機接口-第7章-并行接口_第3頁
微型計算機接口-第7章-并行接口_第4頁
微型計算機接口-第7章-并行接口_第5頁
已閱讀5頁,還剩42頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

2023/9/22計算機接口技術(shù)1第7章并行接口本章主要內(nèi)容

并行接口基本特點

并行接口芯片的工作方式和編程模型并行接口解決方案并行接口的應(yīng)用舉例2023/9/22計算機接口技術(shù)27.1并行接口的特點1.并行接口最基本的特點是以字節(jié)、字或雙字寬度,

在接口與I/O設(shè)備之間的多根數(shù)據(jù)線上傳輸數(shù)據(jù),因此數(shù)據(jù)傳輸速率快。

2.并行傳輸時,除數(shù)據(jù)線外,還有地址線、控制線的支持,實際上,并行接口所使用的信號線是系統(tǒng)三總線的延伸。

3.并行傳送不要求固定的傳輸速率,而由被連接或控制的I/O設(shè)備操作的要求決定。4.在并行數(shù)據(jù)傳輸過程中,一般不作差錯檢驗。

5.并行接口使用的信號線比較多,宜用于近距離傳輸。2023/9/22計算機接口技術(shù)37.2

組成并行接口的元器件1.一般的IC芯片三態(tài)緩沖器和鎖存器組成并行接口。這類并行接口可用于對一些簡單的I/O設(shè)備進行控制。2.可編程并行接口芯片可編程并行接口芯片(如82C55A)功能強、可靠性高、通用性好,并且使用靈活方便,因此成為并行接口設(shè)計的首選芯片。3.FPGA器件

采用FPGA器件,利用EDA(ElectronicDesignAutomation,電子設(shè)計自動化)技術(shù)來設(shè)計并行接口,可以實現(xiàn)復(fù)雜的接口功能,并且可以將接口中的輔助電路,如I/O端口地址譯碼電路都包含進去,這是

目前接口設(shè)計很流行的一種方法。在并行接口中,8位或16位是一起行動的,因此,當采用并行接口與外設(shè)交換數(shù)據(jù)時,即使是只用到其中的一位,也是一次輸入/輸出8位或16位。并行傳送信息,不要求固定的格式,這與串行傳送的數(shù)據(jù)格式的要求不同。并行接口芯片:具有兩個或兩個以上的鎖存器或者緩沖器的數(shù)據(jù)端口;每個數(shù)據(jù)端口都具有與CPU用應(yīng)答方式交換信號所必須的控制和狀態(tài)信息,也有與外設(shè)交換信息所必須的控制和狀態(tài)信息;每個數(shù)據(jù)端口有能用中斷方式與CPU交換信息所必須的電路;片選和內(nèi)部控制電路;可用程序選擇數(shù)據(jù)端口、選擇端口的數(shù)據(jù)傳送方向和選擇與CPU交換信息的方法。并行接口芯片:8255;8255A(通用的可編程并行I/O接口芯片)2023/9/22計算機接口技術(shù)42023/9/22計算機接口技術(shù)57.3并行接口電路的解決方案

生產(chǎn)CPU的各廠商都有與其配套的并行接口芯片,它們的基本功能與工作原理相同。我們選用82C55A作為并行接口電路的核心芯片。它是一個通用型、功能強且成本低的接口芯片,可與任意一個需要并行傳輸數(shù)據(jù)的I/O設(shè)備相連接。7.3.1通用并行接口82C55A的外部特性82C55A是一個單+5V電源供電、40個引腳的雙列直插式組件,82C55A的外部引腳及信號定義如圖7.1所示。

引腳可分為面向CPU和面向I/O設(shè)備兩側(cè)。

8255A的基本特性具有兩個8位(A口和B口)和兩個4位(C口高/低4位)并行I/O端口的接口芯片。能適應(yīng)CPU與I/O接口之間的多種數(shù)據(jù)傳送方式的要求??蓤?zhí)行功能很強,內(nèi)容豐富的命令(方式字和控制字)為用戶如何根據(jù)外界條件(I/O設(shè)備需要哪些信號線以及它能提供哪些狀態(tài)線)來使用8255A構(gòu)成多種接口電路,組成微機應(yīng)用系統(tǒng)提供了靈活方便的編程環(huán)境。PC口的使用比較特殊,除作數(shù)據(jù)口外,當工作在1方式和2方式時,它的大部分引腳被分配作專用聯(lián)絡(luò)信號;PC口可以進行按位控制;在CPU讀取8255A狀態(tài)時,PC口又作1,2方式的狀態(tài)口用,等等。

8255芯片內(nèi)部主要由控制寄存器、狀態(tài)寄存器和數(shù)據(jù)寄器組成。2023/9/22計算機接口技術(shù)62023/9/22計算機接口技術(shù)7

8255A外部引腳

引腳名

方向

功能

D0~D7

雙向

數(shù)據(jù)線

片選

A1,A0

選寄存器

RESET

復(fù)位信號

PA0~PA7

雙向

A端口的I/O線

PB0~PB7

雙向

B端口的I/O線

PC0~PC7

雙向

C端口的I/O線82C55A信號定義圖7.182C55A外部引腳及信號定義2023/9/22計算機接口技術(shù)81.面向CPU一側(cè)的信號線

數(shù)據(jù)總線(DB):

D0~D7:雙向數(shù)據(jù)線,用于CPU向8255A發(fā)送命令、數(shù)據(jù)和8255A向CPU回送狀態(tài)、數(shù)據(jù)。

地址總線(AB):

:片選信號,低電平有效;

A0、A1:芯片內(nèi)部端口地址信號;

控制總線(CB):

:讀信號,低電平有效。

:寫信號,低電平有效。

RESET:復(fù)位信號,高電平有效。

2023/9/22計算機接口技術(shù)92.面向外部設(shè)備一側(cè)的信號線

PA0-PA7(A端口),8位數(shù)據(jù)線。

PB0-PB7(B端口),8位數(shù)據(jù)線。

PC0-PC7(C端口),C端口可作3種信號線使用:兩個4位數(shù)據(jù)線(PC0~3,

PC4~7);

1和2方式的專用握手聯(lián)絡(luò)信號線;按位控制信號線。

3.8255A的基本特性具有兩個8位(A口和B口)和兩個4位(C口高/低4位)并行I/O端口的接口芯片。能適應(yīng)CPU與I/O接口之間的多種數(shù)據(jù)傳送方式的要求。可執(zhí)行功能很強,內(nèi)容豐富的命令(方式字和控制字)為用戶如何根據(jù)外界條件(I/O設(shè)備需要哪些信號線以及它能提供哪些狀態(tài)線)來使用8255A構(gòu)成多種接口電路,組成微機應(yīng)用系統(tǒng)提供了靈活方便的編程環(huán)境。PC口的使用比較特殊,除作數(shù)據(jù)口外,當工作在1方式和2方式時,它的大部分引腳被分配作專用聯(lián)絡(luò)信號;PC口可以進行按位控制;在CPU讀取8255A狀態(tài)時,PC口又作1,2方式的狀態(tài)口用,等等。8255芯片內(nèi)部主要由控制寄存器、狀態(tài)寄存器和數(shù)據(jù)寄器組成。2023/9/22計算機接口技術(shù)11

7.3.2通用并行接口芯片的工作方式82C55A的工作方式有3種—方式0、方式1和方式2,下面分別介紹3種工作方式的功能和特點。

1.0方式的功能與特點

(1)功能

A端口用于數(shù)據(jù)傳輸,8位并行。

B端口用于數(shù)據(jù)傳輸,8位并行。

C端口用于數(shù)據(jù)傳輸時,分高4位和低4位,4位并行;用作控制信號時,按位輸出邏輯高或低電平。

2023/9/22計算機接口技術(shù)12

(2)特點

1)作單向數(shù)據(jù)傳送,即一次初始化只能把某個并行端口置成輸入或輸出,不能置成既輸入又輸出;

2)不要求固定的聯(lián)絡(luò)(應(yīng)答)信號,無固定的工作時序和固定的工作狀態(tài)字;

3)適用于無條件或查詢方式數(shù)據(jù)傳輸,不能采用中斷方式交換數(shù)據(jù)。2023/9/22計算機接口技術(shù)132.1方式的功能與特點(1)功能

A端口作數(shù)據(jù)端口(8位并行)。

B端口作數(shù)據(jù)端口(8位并行)。

C端口可有4種功能,分別為:作A端口和B端口的專用聯(lián)絡(luò)信號線;作數(shù)據(jù)端口,未分配做專用聯(lián)絡(luò)信號的引腳做數(shù)據(jù)線用;作狀態(tài)端口,讀取A端口和B端口的狀態(tài)字;作位控,按位輸出邏輯1或邏輯0。

2023/9/22計算機接口技術(shù)14(2)特點

1)作單向數(shù)據(jù)傳送,即一次初始化只能把某個并行端口置成輸入或輸出;2)要求專用的聯(lián)絡(luò)(握手/應(yīng)答)信號,有固定的工作時序和專用的工作狀態(tài)字;

3)適用于查詢或中斷方式與CPU交換數(shù)據(jù),不能用于無條件方式交換數(shù)據(jù)。2023/9/22計算機接口技術(shù)153.2方式的功能和特點

(1)功能

A端口做雙向數(shù)據(jù)端口(8位并行);

B端口做單向數(shù)據(jù)端口(8位并行);

C端口有4種功能,與1方式類似。

(2)特點2方式是一種雙向選通方式,它與1方式不同之處是雙方能夠同時發(fā)送和接收。其工作特點:

2023/9/22計算機接口技術(shù)16

1)雙向數(shù)據(jù)傳送,即一次初始化可將A端口置成既輸入又輸出,具有雙向性;

2)要求使用兩對專用的聯(lián)絡(luò)信號,有固定的工作時序和專用的工作狀態(tài)字;

3)適用于查詢和中斷方式與CPU交換數(shù)據(jù),特別是在要求與I/O設(shè)備進行雙向數(shù)據(jù)傳輸時很有用。2023/9/22計算機接口技術(shù)17

7.3.3通用并行接口82C55A的編程模型

82C55A的編程模型包括內(nèi)部可訪問的寄存器、分配給寄存器的端口地址,以及裝入寄存器的命令字、狀態(tài)字。用戶利用它的編程模型進行并行接口的程序設(shè)計。2023/9/22計算機接口技術(shù)181.內(nèi)部寄存器82C55A內(nèi)部邏輯結(jié)構(gòu)如下圖所示,圖中的“讀/寫控制邏輯”中設(shè)置有命令寄存器、狀態(tài)寄存器(從C口讀出)、以及3個雙向數(shù)據(jù)寄存器,均為8位。82C55A內(nèi)部邏輯框圖8255A的內(nèi)部結(jié)構(gòu)以下3個部分組成(與CPU接口;與外設(shè)接口;內(nèi)部邏輯)。①數(shù)據(jù)總線緩沖器。這是一個三態(tài)雙向8位緩沖器,它是8255A與CPU系統(tǒng)數(shù)據(jù)總線的接口。②讀/寫控制邏輯。讀/寫控制邏輯由讀信號RD、寫信號WR、選片信號CS以及端口選擇信號A1A0等組成。③輸入/輸出端口A、B、C。8255A包括3個8位輸入輸出端口(port)。每個端口都有一個數(shù)據(jù)輸入寄存器和一個數(shù)據(jù)輸出寄存器。④A組和B組控制電路??刂艫、B和C三個端口的工作方式。2023/9/22計算機接口技術(shù)20

2.端口地址82C55A的應(yīng)用分兩種情況:

系統(tǒng)配置的并行接口,其端口地址由系統(tǒng)安排(見表3.1和表3.2)。

用戶擴展的并行接口,其端口地址由用戶通過I/O譯碼電路選定(見表3.3)。3.編程命令82C55A有兩個編程命令,分別為工作方式命令和按位操作(置位/復(fù)位)命令。兩個命令的功能及格式:CSA1A0RDWR讀操作內(nèi)容PC系統(tǒng)實驗平臺00001PA口→數(shù)據(jù)總線(→CPU)數(shù)據(jù)60H300H00101PB口→數(shù)據(jù)總線(→CPU)數(shù)據(jù)61H301H01001PC口→數(shù)據(jù)總線(→CPU)數(shù)據(jù)62H302H寫操作00010PA口←數(shù)據(jù)總線(←CPU)數(shù)據(jù)60H300H00110PB口←數(shù)據(jù)總線(←CPU)數(shù)據(jù)61H301H01010PC口←數(shù)據(jù)總線(←CPU)數(shù)據(jù)62H302H01110控制寄存器←數(shù)據(jù)總線控制字63H303H無操作情況1××××總線懸浮(三態(tài))0××11總線懸浮01101控制口不能讀63H303H8255A基本操作與端口地址2023/9/22計算機接口技術(shù)22(1)方式命令

功能:指定82C55A的工作方式及其方式下3個并行端口的輸入或輸出功能。

格式:8位命令字的格式及每一位的含義,如圖7.2所示

圖7.282C55A的工作方式字的格式2023/9/22計算機接口技術(shù)23例如:若要求把A端口指定為1方式,輸入;把C端口上半部指定為輸出。把B端口指定為0方式,輸出;把C端口下半部指定為輸入。則工作方式命令代碼是10110001B或B1H。若將此方式命令代碼寫到82C55A的命令寄存器,即實現(xiàn)了對82C55A工作方式及端口功能的指定,或者說完成了對82C55A的初始化。2023/9/22計算機接口技術(shù)24

匯編語言初始化的程序段如下。MOVDX,303H;82C55命令口地址MOVAL,0B1H;初始化命令OUTDX,AL;送到命令口2023/9/22計算機接口技術(shù)25(2)按位置位/復(fù)位命令

功能:指定82C55A的C端口8個引腳中的任意一個引腳,也只能1次指定1個引腳輸出高電平或低電平。

格式:8位命令字的格式與含義,如圖7.3所示。

圖7.382C55A的命令字格式2023/9/22計算機接口技術(shù)26例如:

若把C端口的PC2引腳輸出高電平,去啟動步進電機,則命令字應(yīng)該為00000101B或05H。其程序段如下:MOVDX,303H;82C55A命令口地址MOVAL,05H;使PC2=1的命令字OUTDX,AL;送到命令口2023/9/22計算機接口技術(shù)27

如果要使PC2引腳輸出低電平,去停止步進電機,則命令字應(yīng)該為00000100B或04H.

其程序段如下:MOVDX,303H;82C55命令口地址MOVAL,04H;使PC2=0的命令OUTDX,AL;送到命令口2023/9/22計算機接口技術(shù)28(3)關(guān)于兩個命令的討論①方式命令是對8255A的3個端口的工作方式及功能進行指定,即進行初始化,初始工作要在使用8255A之前做。②按位置位/復(fù)位命令只是對PC口的輸出進行控制,實現(xiàn)動態(tài)控制的一種支持。它可放在初始化程序以后的任何地方。按位置位/復(fù)位命令雖然是對C端口進行按位輸出操作,但它不能寫入作數(shù)據(jù)口用的C端口,只能寫入命令口,原因是它不是數(shù)據(jù),而是命令,要按命令的格式來解釋和執(zhí)行。③兩個命令的最高位(D7)都分配作了特征位,設(shè)置特征位的目的是為了解決端口共用。82C55A有兩個命令,但只有一個命令端口,當兩個命令寫到同一個命令端口時,就用特征位加以識別。④按位置位/復(fù)位的命令代碼只能寫入命令口。2023/9/22計算機接口技術(shù)297.4

步進電機控制接口設(shè)計例7.1步進電機控制接口電路設(shè)計

1.要求

設(shè)計一個四相六線式步進電機接口電路,要求按四相雙八拍方式運行,當按下開關(guān)SW2時,步進電機開始運行;當按下開關(guān)SW1時,步進電機停止。

2023/9/22計算機接口技術(shù)30

2.分析首先,CPU與步進電機之間的數(shù)據(jù)交換是無條件傳輸,因此可利用82C55A的0方式設(shè)計步進電機控制接口。其次,本題接口的被控對象是步進電機,那么,如何對步進電機實施控制,就要了解步進電機的控制原理及控制方法。2023/9/22計算機接口技術(shù)31(1)步進電機控制原理步進電機旋轉(zhuǎn)的角位移與輸入脈沖的個數(shù)成正比;步進電機的轉(zhuǎn)速與輸入脈沖的頻率成正比;步進電機的轉(zhuǎn)動方向與輸入脈沖對繞組加電的順序有關(guān)。因此,步進電機旋轉(zhuǎn)的角位移、轉(zhuǎn)速及方向均受輸入脈沖的控制。2023/9/22計算機接口技術(shù)32(2)運行方式與方向控制

步進電機的運行方式指各相繞組循環(huán)輪流通電的方式,如四相步進電機有單四拍、單八拍、雙四拍、雙八拍幾種方式,如圖7.4所示。

圖7.4四相步進電機運行方式2023/9/22計算機接口技術(shù)33

可見,為了實現(xiàn)對各繞組按一定方式輪流加電,需要1個脈沖循環(huán)分配器。脈沖循環(huán)分配器可用硬件,也可以軟件來實現(xiàn),本例采用軟件的方法,即循環(huán)查表法來實現(xiàn)對運行方式與方向的控制。

循環(huán)查表法是將各相繞組加電順序的控制代碼制成一張步進電機相序表(見表7.2),存放在內(nèi)存區(qū),再設(shè)置一個地址指針。若改變相序表內(nèi)的加電代碼和地址指針的指向,則可改變步進電機的運行方式與方向。2023/9/22計算機接口技術(shù)34

表7.2四相雙八拍運行方式相序加電代碼表2023/9/22計算機接口技術(shù)35(3)運行速度的控制

控制步進電機運行速度有兩種途徑:

硬件改變輸入脈沖的頻率,通過對定時器(如82C54A)定時常數(shù)的設(shè)定,使其升頻、降頻或恒頻;

軟件延時,調(diào)用延時子程序。2023/9/22計算機接口技術(shù)36(4)步進電機的驅(qū)動

步進電機在系統(tǒng)中是一種執(zhí)行元件,都要帶負載,因此,需要功率驅(qū)動。常采用達林頓復(fù)合管,如采用TIP122作為功率驅(qū)動級。驅(qū)動原理如圖7.5所示。在復(fù)合管的b極加高電平,復(fù)合管導(dǎo)通,步進電機的A相加電。圖7.5步進電機驅(qū)動原理圖2023/9/22計算機接口技術(shù)37(5)步進電機的啟/??刂茷榱丝刂撇竭M電機的啟/停,通常采用設(shè)置硬開關(guān)和軟開關(guān)。

所謂硬開關(guān),一般是在外部設(shè)置按鍵開關(guān)SW,并且約定當開關(guān)SW按下時啟動運行或停止運行。

所謂軟開關(guān),就是利用系統(tǒng)的鍵盤,定義某一個鍵,當該鍵按下時,啟動或停止運行。2023/9/22計算機接口技術(shù)383.設(shè)計(1)硬件設(shè)計采用并行接口芯片82C55A作為步進電機與CPU的接口。根據(jù)設(shè)計要求,需要使用3種信號線,即3個端口。

1)A端口為輸出,向步進電機的4個繞組發(fā)送加電代碼(相序碼),以控制步進電機運行方式;

2)C端口的高4位(PC4)為輸出,控制74LS373的開/關(guān),起隔離作用;

3)C端口的低4位(PC0和PC1)為輸入,分別與開關(guān)SW2和SW1連接,以控制步進電機的啟動和停止。步進電機接口電路如圖7.6所示。2023/9/22計算機接口技術(shù)39圖7.6步進電機控制接口原理圖2023/9/22計算機接口技術(shù)40(2)軟件設(shè)計

在開環(huán)控制方式下,四相步進電機的啟/停操作可以隨時進行,是一種無條件并行傳送??刂瞥绦虬ǎ合嘈虮砗拖嘈蛑羔樀脑O(shè)置、82C55A初始化、步進電機啟/??刂?、相

溫馨提示

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

評論

0/150

提交評論