




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第8章輸入輸出接口本章教學(xué)目的通過(guò)輸入輸出接口是計(jì)算機(jī)的重要組成部分,通過(guò)I/O接口控制方式的學(xué)習(xí),使學(xué)生初步了解主機(jī)與外設(shè)的主要通信方式及其特點(diǎn),通過(guò)并行接口8255A的學(xué)習(xí)和實(shí)踐,使學(xué)生接觸具體的接口形式,從而進(jìn)一步加深對(duì)接口知識(shí)的理解。本章主要外語(yǔ)詞匯I/O:Input/Output,輸入/輸出接口DMA:DirectMemoryAccess,直接存儲(chǔ)器存取方式主要內(nèi)容微型計(jì)算機(jī)的輸入/輸出接口并行通信與并行接口可編程并行通信接口芯片8255A串行通信及串行接口可編程串行通信接口芯片8251A本章學(xué)習(xí)要求1.掌握并行接口的概念,可編程并行接口芯片的功能;可編程并行接口芯片8255A的結(jié)構(gòu),其三種工作方式及特點(diǎn);8255A的使用;8255A的端口地址分配,方式0的功能及端口命令字的設(shè)置。
2.理解8255A各種工作方式的區(qū)別3.了解主機(jī)與外設(shè)間數(shù)據(jù)傳送的基本控制方式(程序控制方式,中斷方式,DMA方式)簡(jiǎn)單了解串行通信的概念。
I/O接口概述為什么需要I/O接口(電路)?微機(jī)的外部設(shè)備多種多樣工作原理、驅(qū)動(dòng)方式、信息格式、以及工作速度方面彼此差別很大它們不能與CPU直接相連,必須經(jīng)過(guò)中間電路再與系統(tǒng)相連這部分電路被稱為I/O接口電路什么是I/O接口(電路)?I/O接口是位于系統(tǒng)與外設(shè)間、用來(lái)協(xié)助完成數(shù)據(jù)傳送和控制任務(wù)的邏輯電路PC機(jī)系統(tǒng)板的可編程接口芯片、I/O總線槽的電路板(適配器)都是接口電路RS-2328.1.1輸入/輸出接口交換信號(hào)可分為四種:①數(shù)字量,二進(jìn)制數(shù)據(jù),最小單位是一個(gè)bit(位),還有字節(jié)、字等。②模擬量,現(xiàn)場(chǎng)信號(hào)大多是由傳感器來(lái)的模擬電壓或電流,他們必須經(jīng)過(guò)A/D轉(zhuǎn)換,變成數(shù)字量才能進(jìn)入計(jì)算機(jī),有些接口有處理模擬量的電路,稱為模擬接口。③開關(guān)量,開關(guān)量只有兩種狀態(tài),即“開”或“關(guān)”,可用一位二進(jìn)制數(shù)表示,如“1”表示“開”,“0”表示“關(guān)”。④脈沖量,脈沖量是以脈沖形式表示的一種信號(hào),如計(jì)算機(jī)中用到的定時(shí)脈沖或控制脈沖等。
8.1微機(jī)的輸入/輸出接口8.1.2輸入/輸出的控制方式在微機(jī)系統(tǒng)中,可采用的輸入/輸出控制方式一般有4種:
1.程序控制方式
這是指在程序控制下進(jìn)行信息傳送。程序控制方式可以分為: (1)無(wú)條件傳送方式 (2)條件傳送方式無(wú)條件傳送方式:當(dāng)外設(shè)已準(zhǔn)備就緒,那就不必查詢外設(shè)的狀態(tài)而進(jìn)行信息傳輸,這就稱為無(wú)條件傳送。這種信息傳送方式只適用于簡(jiǎn)單的外設(shè),如開關(guān)和數(shù)碼段顯示器等。74LS138:(2)條件傳送方式:
CPU通過(guò)執(zhí)行程序不斷讀取并測(cè)試外部設(shè)備狀態(tài),如果輸入外部設(shè)備處于已準(zhǔn)備好狀態(tài)或輸出外部設(shè)備為空閑狀態(tài)時(shí),則CPU執(zhí)行傳送信息指令。也稱為“查詢式傳送”。2.中斷控制方式 中斷控制方式一般用來(lái)傳送低速外部設(shè)備與CPU之間的信息交換。每操作一次,CPU要打斷原來(lái)執(zhí)行的程序去執(zhí)行一般中斷服務(wù)程序。優(yōu)點(diǎn):中斷傳送方式的優(yōu)點(diǎn)是:CPU不必查詢等待,工作效率高,CPU與外設(shè)可以并行工作;由于外設(shè)具有申請(qǐng)中斷的主動(dòng)權(quán),故系統(tǒng)實(shí)時(shí)性比查詢方式要好得多。缺點(diǎn):對(duì)速度較高的外部設(shè)備會(huì)產(chǎn)生信息丟失,因此不能采用。3.DMA控制方式
DMA控制方式是一種成塊傳送數(shù)據(jù)的方式。
在存儲(chǔ)器和外設(shè)之間、存儲(chǔ)器和存儲(chǔ)器之間直接進(jìn)行數(shù)據(jù)傳送,傳送過(guò)程無(wú)需CPU介入優(yōu)點(diǎn):在傳送時(shí)就不必進(jìn)行保護(hù)現(xiàn)場(chǎng)等一系列額外操作,傳輸速度基本取決于存儲(chǔ)器和外設(shè)的速度。4.輸入/輸出處理機(jī)控制方式對(duì)于有大量輸入/輸出設(shè)備的微機(jī)系統(tǒng),DMA控制方式已不能滿足這種需要。Intel公司生產(chǎn)與86系列配套的輸入/輸出處理機(jī)(IOP)8089。8.2并行通信與并行接口并行通信
把一個(gè)字符的各數(shù)位用幾條線同時(shí)進(jìn)行傳輸,傳輸速度快,信息率高。
但它比串行通信所用的電纜多,因此,并行通信常用在傳輸距離較短(幾米至幾十米)和數(shù)據(jù)傳輸率較高的場(chǎng)合。并行接口
實(shí)現(xiàn)并行通信的接口就是并行接口。典型的并行接口和外部設(shè)備連接如圖8-4所示。圖中的并行接口用一個(gè)通道和輸入設(shè)備相連,用另一個(gè)通道和輸出設(shè)備相連,每個(gè)通道中除數(shù)據(jù)線外均配有一定的控制線和狀態(tài)線。并行接口的輸入過(guò)程外部設(shè)備將數(shù)據(jù)送給接口,使?fàn)顟B(tài)線“數(shù)據(jù)輸入準(zhǔn)備好”成為高電平。接口把數(shù)據(jù)接收到數(shù)據(jù)輸入緩沖寄存器,使“數(shù)據(jù)輸入回答”線變?yōu)楦唠娖?,作為?duì)外部設(shè)備的響應(yīng)。外部設(shè)備接到此信號(hào),撤除數(shù)據(jù)和“數(shù)據(jù)輸入準(zhǔn)備好”信號(hào)。數(shù)據(jù)到達(dá)接口中后,接口會(huì)在狀態(tài)寄存器中設(shè)置“輸入準(zhǔn)備好”狀態(tài)位,以便CPU對(duì)其進(jìn)行查詢,接口也可以在此時(shí)向CPU發(fā)一個(gè)中斷請(qǐng)求。CPU既可以用軟件查詢方式,也可以用中斷方式來(lái)設(shè)法讀取接口中的數(shù)據(jù)。CPU從并行接口中讀取數(shù)據(jù)后,接口會(huì)自動(dòng)清除狀態(tài)寄存器中的“輸入準(zhǔn)備好”狀態(tài)位,并且使數(shù)據(jù)總線處于高阻狀態(tài)。并行接口的輸出過(guò)程CPU既可以用軟件查詢方式,也可以用中斷方式設(shè)法往接口中輸出一個(gè)數(shù)據(jù)。每當(dāng)外部設(shè)備從接口取走一個(gè)數(shù)據(jù)之后,接口就會(huì)將狀態(tài)寄存器中的“輸出準(zhǔn)備好”狀態(tài)位置“1”,以表示CPU當(dāng)前可以往接口中輸出數(shù)據(jù),這個(gè)狀態(tài)位可供CPU進(jìn)行查詢。接口也可以向CPU發(fā)一個(gè)中斷請(qǐng)求。CPU輸出的數(shù)據(jù)到達(dá)接口的輸出緩沖寄存器中接口自動(dòng)清除“輸出準(zhǔn)備好”狀態(tài)位,并且將數(shù)據(jù)送往外部設(shè)備---接口往外部設(shè)備發(fā)送一個(gè)“驅(qū)動(dòng)信號(hào)”來(lái)啟動(dòng)外部設(shè)備接收數(shù)據(jù)外部設(shè)備被啟動(dòng)后,開始接收數(shù)據(jù),并往接口發(fā)一個(gè)“數(shù)據(jù)輸出回答”信號(hào)接口收到此信號(hào),便將狀態(tài)寄存器中的“輸出準(zhǔn)備好”狀態(tài)位重新置“1”,以便CPU輸出下一個(gè)數(shù)據(jù)。8.3可編程并行通信接口芯片8255A8255A是Intel86系列微處理機(jī)的配套并行接口芯片,它可為86系列CPU與外部設(shè)備之間提供并行輸入/輸出的通道。由于它是可編程的,可以通過(guò)軟件來(lái)設(shè)置芯片的工作方式,所以,用8255A連接外部設(shè)備時(shí),通常不用再附加外部電路,很方便使用。8.3.18255A芯片內(nèi)部結(jié)構(gòu)及其功能數(shù)據(jù)總線緩沖器內(nèi)部控制線內(nèi)部數(shù)據(jù)線D0~D7A組控制A組端口AA組端口C上部B組控制B組端口BB組端口C下部讀寫控制邏輯PC0~PC3PB0~PB7PC4~PC7PA0~PA7RDWRA0A1CSRESET1.并行輸入/輸出端口A,B,C8255A芯片內(nèi)部包含3個(gè)8位端口,其中:端口A包含一個(gè)8位數(shù)據(jù)輸出鎖存/緩沖存儲(chǔ)器和一個(gè)8位數(shù)據(jù)輸入鎖存器端口B包含一個(gè)8位數(shù)據(jù)輸入/輸出、鎖存/緩沖存儲(chǔ)器和一個(gè)8位數(shù)據(jù)輸入緩沖存儲(chǔ)器;端口C包含一個(gè)輸出鎖存/緩沖存儲(chǔ)器和一個(gè)輸入緩沖存儲(chǔ)器。必要時(shí)端口C可分成兩個(gè)4位端口,分別與端口A和端口B配合工作,通常將端口A和端口B定義為輸入/輸出的數(shù)據(jù)端口,而端口C可作為狀態(tài)或控制信息的傳送端口。2.A組和B組控制部件A組和B組各有一個(gè)控制單元,可接收來(lái)自讀/寫控制部件的命令和CPU通過(guò)數(shù)據(jù)總線(D7~D0)送來(lái)的控制字,并根據(jù)它們來(lái)定義各個(gè)端口的操作方式。端口A與端口C的高4位(PC7~PC4)構(gòu)成A組,由A組控制部件實(shí)現(xiàn)控制功能端口B與端口C的低4位(PC3~PC0)構(gòu)成B組,由B組控制部件實(shí)現(xiàn)控制功能3.數(shù)據(jù)總線緩沖存儲(chǔ)器這是一個(gè)三態(tài)雙向8位數(shù)據(jù)緩沖存儲(chǔ)器,它是8255A與8086CPU之間的數(shù)據(jù)接口。CPU執(zhí)行輸出指令時(shí),可將控制字或數(shù)據(jù)通過(guò)數(shù)據(jù)總線緩沖存儲(chǔ)器傳送給8255A。CPU執(zhí)行輸入指令時(shí),8255A可將狀態(tài)信息或數(shù)據(jù)通過(guò)總線緩沖存儲(chǔ)器向CPU輸入。4.讀/寫控制部件這是8255A內(nèi)部完成讀/寫控制功能的部件,它能接收CPU的控制命令,并根據(jù)它們向片內(nèi)各功能部件發(fā)出操作命令??山邮盏目刂泼钊缦拢?1)CS——片選信號(hào)。由CPU輸入,通常由端口的高位地址碼(A15~A2)譯碼得到,CS有效,表示該8255A被選中。(2)RD,WR——讀、寫控制信號(hào)。由CPU輸入,RD有效,表示CPU讀8255A,應(yīng)由8255A向CPU傳送數(shù)據(jù)或狀態(tài)信息。WR有效,表示CPU寫8255A,應(yīng)由CPU將控制字或數(shù)據(jù)寫入8255A。(3)RESET——復(fù)位信號(hào)。由CPU輸入。RESET有效時(shí),清除8255A中所有控制字寄存器內(nèi)容,并將各端口置成輸入方式。(4)A1和A0——端口選擇信號(hào)。當(dāng)A1A0=00,選擇端口A;當(dāng)A1A0=01,選擇端口B;當(dāng)A1A0=10,選擇端口C;當(dāng)A1A0=11,選擇控制字寄存器。8255A的操作:
A1A0RDWRCS操作00010端口A數(shù)據(jù)送CPU(輸入)01010端口B數(shù)據(jù)送CPU(輸入)10010端口C數(shù)據(jù)送CPU(輸入)11010非法操作00100CPU數(shù)據(jù)送端口A(輸出)01100CPU數(shù)據(jù)送端口B(輸出)10100CPU數(shù)據(jù)送端口C(輸出)11100CPU數(shù)據(jù)送控制口××110數(shù)據(jù)總線浮空××××1未選中該8255,數(shù)據(jù)總線浮空8.3.28255A芯片的控制字及其工作方式8255A中各端口可有3種基本工作方式:方式0:基本輸入輸出方式適用于無(wú)條件傳送和查詢方式的接口電路方式1:選通輸入輸出方式適用于查詢和中斷方式的接口電路方式2:雙向選通傳送方式適用于與雙向傳送數(shù)據(jù)的外設(shè)適用于查詢和中斷方式的接口電路端口A可處于3種工作方式(方式0,方式1和方式2)端口B只可處于兩種方式(方式0和方式1)端口C常常被分成高4位和低4位兩部分,可分別用來(lái)傳送數(shù)據(jù)或控制信息.用戶可用軟件來(lái)分別定義3個(gè)端口的工作方式,可使用的控制字有定義工作方式控制字和置位/復(fù)位控制字。1.控制字(1)定義工作方式控制字:
通過(guò)定義工作方式控制字可將3個(gè)端口分別定義為3種不同方式的組合,當(dāng)將端口A定義為方式1或方式2或?qū)⒍丝贐定義為方式1時(shí),要求使用端口C的某些位作控制用,這時(shí)需要使用一個(gè)專門的置位/復(fù)位控制字來(lái)對(duì)控制端口C的各位分別進(jìn)行置位/復(fù)位操作。(2)置位/復(fù)位控制字:只對(duì)端口C有效,其使用格式如下圖所示2.工作方式:(1)工作方式0這是8255A中各端口的基本輸入/輸出方式。它只完成簡(jiǎn)單的并行輸入/輸出操作,CPU可從指定端口輸入信息,也可向指定端口輸出信息。如果3個(gè)端口均處于工作方式0,則可由工作方式控制字定義16種工作方式的組合。(2)工作方式1:(輸入引腳:A端口)數(shù)據(jù)選通信號(hào)表示外設(shè)已經(jīng)準(zhǔn)備好數(shù)據(jù)輸入緩沖器滿信號(hào)表示A口已經(jīng)接收數(shù)據(jù)中斷請(qǐng)求信號(hào)請(qǐng)求CPU接收數(shù)據(jù)PC4PC5PC3PA7~PA0INTEAIBFAINTRASTBA中斷允許觸發(fā)器PC6、72I/O方式1(輸入引腳:B端口)PC2PC1PC0PB7~PB0INTEBIBFBINTRBSTBB數(shù)據(jù)選通信號(hào)表示外設(shè)已經(jīng)準(zhǔn)備好數(shù)據(jù)輸入緩沖器滿信號(hào)表示B口已經(jīng)接收數(shù)據(jù)中斷請(qǐng)求信號(hào)請(qǐng)求CPU接收數(shù)據(jù)中斷允許觸發(fā)器方式1需借用端口C用做聯(lián)絡(luò)信號(hào)同時(shí)還具有中斷請(qǐng)求和屏蔽功能方式1(輸入聯(lián)絡(luò)信號(hào))STB*——選通信號(hào),低電平有效由外設(shè)提供的輸入信號(hào),當(dāng)其有效時(shí),將輸入設(shè)備送來(lái)的數(shù)據(jù)鎖存至8255A的輸入鎖存器IBF——輸入緩沖器滿信號(hào),高電平有效8255A輸出的聯(lián)絡(luò)信號(hào)。當(dāng)其有效時(shí),表示數(shù)據(jù)已鎖存在輸入鎖存器INTR——中斷請(qǐng)求信號(hào),高電平有效8255A輸出的信號(hào),可用于向CPU提出中斷請(qǐng)求,要求CPU讀取外設(shè)數(shù)據(jù)方式1(中斷控制)8255A的中斷由中斷允許觸發(fā)器INTE控制置位允許中斷,復(fù)位禁止中斷對(duì)INTE的操作通過(guò)寫入端口C的對(duì)應(yīng)位實(shí)現(xiàn),INTE觸發(fā)器對(duì)應(yīng)端口C的位是作應(yīng)答聯(lián)絡(luò)信號(hào)的輸入信號(hào)的那一位,只要對(duì)那一位置位/復(fù)位就可以控制INTE觸發(fā)器選通輸入方式下端口A的INTEA對(duì)應(yīng)PC4端口B的INTEB對(duì)應(yīng)PC2方式1(輸出引腳:A端口)外設(shè)響應(yīng)信號(hào)表示外設(shè)已經(jīng)接收到數(shù)據(jù)輸出緩沖器滿信號(hào)表示CPU已經(jīng)輸出了數(shù)據(jù)中斷請(qǐng)求信號(hào)請(qǐng)求CPU再次輸出數(shù)據(jù)PC6PC7PC3PA7~PA0INTEAOBFAINTRAACKA中斷允許觸發(fā)器方式1(輸出引腳:B端口)PC2PC1PC0PB7~PB0INTEBOBFBINTRBACKB外設(shè)響應(yīng)信號(hào)表示外設(shè)已經(jīng)接收到數(shù)據(jù)輸出緩沖器滿信號(hào)表示CPU已經(jīng)輸出了數(shù)據(jù)中斷請(qǐng)求信號(hào)請(qǐng)求CPU再次輸出數(shù)據(jù)中斷允許觸發(fā)器方式1(輸出聯(lián)絡(luò)信號(hào))OBF*——輸出緩沖器滿信號(hào),低有效8255A輸出給外設(shè)的一個(gè)控制信號(hào),當(dāng)其有效時(shí),表示CPU已把數(shù)據(jù)輸出給指定的端口,外設(shè)可以取走ACK*——響應(yīng)信號(hào),低有效外設(shè)的響應(yīng)信號(hào),指示8255A的端口數(shù)據(jù)已由外設(shè)接受INTR——中斷請(qǐng)求信號(hào),高有效當(dāng)輸出設(shè)備已接受數(shù)據(jù)后,8255A輸出此信號(hào)向CPU提出中斷請(qǐng)求,要求CPU繼續(xù)提供數(shù)據(jù)端口A的INTEA對(duì)應(yīng)PC6端口B的INTEB對(duì)應(yīng)PC2方式1的應(yīng)用:端口A和端口B均工作于工作方式1A、B都完成輸入操作功能A、B都完成輸出操作功能A、B其中一個(gè)輸入,另一個(gè)輸出端口A、B都為方式1輸入操作工作方式控制字可設(shè)置如下端口狀態(tài)如下圖所示當(dāng)端口A和端口B同時(shí)被定義為工作方式1完成輸入操作時(shí),端口C的PC5~PC0被用作控制信號(hào),只有PC7和PC6位可完成數(shù)據(jù)輸入或輸出操作。因此這實(shí)際上可構(gòu)成兩種組合狀態(tài):端口A,B輸入,PC7,PC6輸入端口A,B輸入,PC7,PC6輸出。當(dāng)A、B同時(shí)完成輸出或其中一個(gè)輸入、一個(gè)輸出情況類似,只是使用信號(hào)和控制字不同。方式2-雙向方式8255A中只允許端口A處于工作方式2,方式2將方式1的選通輸入輸出功能組合成一個(gè)雙向數(shù)據(jù)端口,可以發(fā)送數(shù)據(jù)和接收數(shù)據(jù),可用來(lái)在兩臺(tái)處理機(jī)之間實(shí)現(xiàn)雙向并行通信。其有關(guān)的控制信號(hào)由端口C提供,并可向CPU發(fā)出中斷請(qǐng)求信號(hào)。當(dāng)端口A工作于方式2時(shí),允許端口B工作方式0或方式1完成輸入/輸出功能。方式2的數(shù)據(jù)輸入過(guò)程與方式1的輸入方式一樣方式2的數(shù)據(jù)輸出過(guò)程與方式1的輸出方式有一點(diǎn)不同:數(shù)據(jù)輸出時(shí)8255A不是在OBF*有效時(shí)向外設(shè)輸出數(shù)據(jù),而是在外設(shè)提供響應(yīng)信號(hào)ACK*時(shí)才送出數(shù)據(jù)方式2雙向引腳PC6PC7PC3PA7~PA0INTE1OBFAINTRAACKAPC4PC5IBFASTBAINTE2用PC6設(shè)置INTE1(輸出)用PC4設(shè)置INTE2(輸入)輸入和輸出中斷通過(guò)或門輸出INTRA信號(hào)端口A工作于方式2所需要的5個(gè)控制信號(hào)分別由端口C的PC7~PC3來(lái)提供。如果端口B工作于方式0,那么PC2~PC0可用作數(shù)據(jù)輸入/輸出;如果端口B工作于方式1,那么PC2~PC0用來(lái)作端口B的控制信號(hào)當(dāng)端口A工作于方式2時(shí),允許端口B工作方式0或方式1完成輸入/輸出功能,其方式控制字格式如下圖所示。例18255A初始化編程。設(shè)8255A的A口工作方式1輸出,B口工作方式1輸入,PC4和PC5輸入,禁止B口中斷。設(shè)片選信號(hào)CS由A9A2=10000000確定。試編寫程序?qū)?255A進(jìn)行初始化。8255A并行接口應(yīng)用舉例初始化程序如下:MOV AL,10101110B ;控制字送ALMOV DX,1000000011B ;8255A控制字寄存器地址送DXOUT DX,AL ;控制字送8255A的控制寄存器MOV AL,00001101B ;PC6置1,允許A口中斷OUT DX,ALMOV AL,00000100B ;PC2置0,禁止B口中斷OUT DX,AL例2將外設(shè)開關(guān)的二進(jìn)制狀態(tài)從A口輸入,并由B口輸出到LED顯示器,如圖5.22所示。
符號(hào)形狀7段碼.gfedcba符號(hào)形狀7段碼.gfedcba’0’00111111’8’01111111’1’00000110’9’01100111’2’01011011’A’01110111’3’01001111’B’01111100’4’01100110’C’00111001’5’01101101’D’01011110’6’01111101’E’01111001’7’00000111’F’01110001DATA SEGMENTLEDTAL DB3FH,06H,5BH,4FH,66H,6DH,7DH,07H DB7FH,67H,77H,7CH,39H,5EH,79H,71HDATA ENDSCODESEGMENTMAIN PROCFARASSUMECS:CODE,DS:DATASTART:PUSH DS MOV AX,0 PUSH AX MOV AX,DATA ;裝填數(shù)據(jù)段寄存器DSMOV DS,AX
MOV AL,90H ;設(shè)置方式選擇字
OUT 0D3H,AL
8255A端口地址為D0-D3H,A口工作于方式0輸入,B口工作于方式0輸出,程序如下:
AA:in al,0D0H ;讀端口A and al,0FH ;取端口A低4位
movbx,offsetLEDTAL;取LED顯示代碼表首地址
xlat ;查表,AL←(BX+AL) out 0D1H,al ;從端口B輸出LED顯示代碼
movax,1000 ;延遲
BB:dec ax jnz BB jmp AA ;返回到AA
RETMAINENDPCODEENDS ENDSTART8.4串行通信及串行接口8.4.1串行通信線路的工作方式串行通信指的是數(shù)據(jù)一位一位地依次傳輸,每一位數(shù)據(jù)占據(jù)一個(gè)固定的時(shí)間長(zhǎng)度。串行通信只要一條傳輸線,將數(shù)據(jù)逐位順序傳送。串行通信的特點(diǎn)如下:
1、長(zhǎng)短離傳送成本低,節(jié)省傳輸線,這是顯而易見的。這也是串行通信的主要優(yōu)點(diǎn)。
2、數(shù)據(jù)傳送效率低。與并行通信比,這也這是顯而易見的。這也是串行通信的主要缺點(diǎn)。
3、接口復(fù)雜。例如:傳送一個(gè)字節(jié),并行通信只需要1t的時(shí)間,而串行通信至少需要8t的時(shí)間。數(shù)據(jù)串行通信的三種方式:?jiǎn)喂し绞桨腚p工方式全雙工方式發(fā)送器與接收器
發(fā)送緩沖器接收緩沖器并串變換寄存器串并變換寄存器……...………..……..通信線路CPU發(fā)送數(shù)據(jù)CPU接收數(shù)據(jù)………...………..發(fā)送時(shí)鐘接收時(shí)鐘接收控制接收控制發(fā)送器接收器8.4.2串行接口串行接口有許多種類,典型的串行接口如下圖所示,包括4個(gè)主要寄存器:控制寄存器、狀態(tài)寄存器、數(shù)據(jù)輸入寄存器及數(shù)據(jù)輸出寄存器。RS232UARTUSB8.4.3串行通信數(shù)據(jù)的收發(fā)方式有異步和同步兩種:1.異步通信方式所謂異步,是指發(fā)送設(shè)備和接收設(shè)備在約定的波特率(每秒鐘傳送的位數(shù))下,不需要嚴(yán)格的同步,允許有相對(duì)的延遲。即兩端的頻率差別在1/10以內(nèi),就能正確地實(shí)現(xiàn)通信。在進(jìn)行異步傳送時(shí)必須確定字符格式及波特率。
起始位:每個(gè)字符的開始必須是持續(xù)一個(gè)比特時(shí)間的邏輯“0”電平,標(biāo)志著一個(gè)字符的開始。停止位:可設(shè)置為1位、1.5位或2位,并規(guī)定為邏輯“1”狀態(tài)。圖異步傳送數(shù)據(jù)格式(a)有空閑位;(b)無(wú)空閑位
波特率每秒傳送數(shù)據(jù)的位數(shù)稱為傳送速率,即波特率(bandrate)。波特率一般在300,600,900,1,200,2,400,…,9,600波特之間。計(jì)算機(jī)之間的異步通信速率一經(jīng)確定后,一般不應(yīng)變動(dòng),但通信的數(shù)據(jù)是可變動(dòng)的,也就是數(shù)據(jù)組之間的空閑位是可變的。2.同步通信方式同步,就是指取掉異步傳送時(shí)每個(gè)字符的起始位和停止位,僅在數(shù)據(jù)塊開始處用12個(gè)同步字符來(lái)表示數(shù)據(jù)塊傳送的開始,然后串行的數(shù)據(jù)塊信息以連續(xù)的形式發(fā)送,每個(gè)發(fā)送時(shí)鐘周期發(fā)送一位信息,故同步傳送中要求對(duì)傳送信息的每一位都必須在收、發(fā)兩端嚴(yán)格保持同步,實(shí)現(xiàn)“位同步”。
(1)面向字符型的數(shù)據(jù)格式:?jiǎn)瓮綌?shù)據(jù)格式:傳送一幀數(shù)據(jù)僅使用一個(gè)同步字。當(dāng)接收端檢測(cè)到一個(gè)完整的同步字后,就連續(xù)接收數(shù)據(jù)。雙同步數(shù)據(jù)格式:利用兩個(gè)同步字進(jìn)行同步。外同步數(shù)據(jù)格式:在發(fā)送的一幀數(shù)據(jù)中不包含同步字。同步由專門的控制線產(chǎn)生一個(gè)同步信號(hào)SYNC加到串行接口上。(a)單同步數(shù)據(jù)格式;(b)雙同步數(shù)據(jù)格式;(c)SDLC數(shù)據(jù)格式;(d)HDLC數(shù)據(jù)格式;(e)外同步格式(2)面向比特型的數(shù)據(jù)格式:IBM公司推出的同步數(shù)據(jù)鏈路控制數(shù)據(jù)格式SDLC。ISO推薦的高級(jí)數(shù)據(jù)鏈路控制數(shù)據(jù)格式HDLC。8.5可編程串行通信接口芯片8251A8251A是一個(gè)通用串行輸入/輸出接口,能將并行輸入的8位數(shù)據(jù)變換成逐位輸出的串行信號(hào);也能將串行輸入數(shù)據(jù)變換成并行數(shù)據(jù),一次傳送給處理機(jī)。廣泛應(yīng)用于長(zhǎng)距離通信系統(tǒng)及計(jì)算機(jī)網(wǎng)絡(luò)。(1)發(fā)送器:發(fā)送緩沖存儲(chǔ)器、并串轉(zhuǎn)換、發(fā)送控制電路。功能是從CPU接收并行數(shù)據(jù),自動(dòng)加上適當(dāng)?shù)某蓭盘?hào)并轉(zhuǎn)換成串行數(shù)據(jù)后從TXD引腳發(fā)送出去。8251A內(nèi)部結(jié)構(gòu)框圖:(2)接收器功能是從RXD引腳接收串行數(shù)據(jù),按指定的方式裝配成并行數(shù)據(jù)。(3)數(shù)據(jù)總線緩沖存儲(chǔ)器用于向CPU傳遞命令、數(shù)據(jù)或狀態(tài)信息。與CPU相互交換的數(shù)據(jù)和控制字就存放在這里,共有三個(gè)緩沖器。(4)讀/寫控制邏輯:功能是接收CPU的控制信號(hào),控制數(shù)據(jù)的傳送方向。(5)調(diào)制解調(diào)器控制:提供和調(diào)制解調(diào)器的聯(lián)絡(luò)信號(hào)。8.5.28251A芯片的控制字及其工作方式可編程串行通信接口芯片8251A在使用前必須進(jìn)行初始化,以確定它的工作方式,傳送速率,字符格式以及停止位長(zhǎng)度等,可使用的控制字如下:
1.方式選擇控制字其使用格式如圖8.28所示。B2B1位用來(lái)定義8251A的工作方式是同步方式還是異步方式,如果是異步方式還可由B2B1的取值來(lái)確定傳送速率?!?表示輸入的時(shí)鐘頻率與波特率相同,允許發(fā)送和接收波特率不同,RXC和TXC也可不相同,但是它們的波特率系數(shù)必須相同;×16表示時(shí)鐘頻率是波特率的16倍;×64表示時(shí)鐘頻率是波特率的64倍。因此通常稱1,16和64為波特率系數(shù),它們之間存在如下的關(guān)系:發(fā)送/接收時(shí)鐘頻率=發(fā)送/接收波特率×波特率系數(shù)L2L1位用來(lái)定義數(shù)據(jù)字符的長(zhǎng)度可為5,6,7或8位。PEN位用來(lái)定義是否帶奇偶校驗(yàn),稱作校驗(yàn)允許位。在PEN=1情況下,由EP位定義是采用奇校驗(yàn)還是偶校驗(yàn)。S2S1位用來(lái)定義異步方式的停止位長(zhǎng)度(1位、15位或2位)。對(duì)于同步方式,S1位用來(lái)定義是外同步(S1=1)還是內(nèi)同步(S1=0),S2位用來(lái)定義是單同步(S2=1)還是雙同步(S2=0)。2.操作命令控制字其使用格式如圖8.29所示,TXEN位是允許發(fā)送位,TXEN=1,發(fā)送器才能通過(guò)TXD線向外部串行發(fā)送數(shù)據(jù)。DTR位是數(shù)據(jù)終端準(zhǔn)備好位。DTR=1,表示CPU已準(zhǔn)備好接收數(shù)據(jù),這時(shí)DTR引線端輸出有效。RXE位是允許接收位。RXE=1,接收器才能通過(guò)RXD線從外部串行接收數(shù)據(jù)。SBRK位是發(fā)送斷缺字符位。SBRK=1,通過(guò)TXD線一直發(fā)送“0”信號(hào)。正常通信過(guò)程中SBRK位應(yīng)保持為“0”。ER位是清除錯(cuò)誤標(biāo)志位。8251A設(shè)置有3個(gè)出錯(cuò)標(biāo)志,分別是奇偶校驗(yàn)標(biāo)志PE,越界錯(cuò)誤標(biāo)志OE和幀校驗(yàn)錯(cuò)標(biāo)志FE。ER=1時(shí)將PE,OE和FE標(biāo)志同時(shí)清“0”。RTS位是請(qǐng)求發(fā)送信號(hào)。RTS=1,迫使8251A輸出RTS有效,表示CPU已作好發(fā)送數(shù)據(jù)準(zhǔn)備,請(qǐng)求向調(diào)制/解調(diào)器或外部設(shè)備發(fā)送數(shù)據(jù)。IR位是內(nèi)部復(fù)位信號(hào)。IR=1,迫使8251A回到接收方式選擇控制字的狀態(tài)。EH位為跟蹤方式位。EH位只對(duì)同步方式有效,EH=1,表示開始搜索同步字符,因此對(duì)于同步方式,一旦允許接收(RXE=1),必須同時(shí)使EH=1,并且使ER=1,清除全部錯(cuò)誤標(biāo)志,才能開始搜索同步字符。從此以后所有寫入的8251A的控制字都是操作命令控制字。只有外部復(fù)位命令
溫馨提示
- 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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 綜治宣傳合同范本
- 銷售果木苗木合同范本
- 科技在商業(yè)談判中的策略運(yùn)用
- 科技發(fā)展與自我成長(zhǎng)策略的同步性研究
- 現(xiàn)代城市中地下綜合管廊的智能化管理方案
- 訂金轉(zhuǎn)讓合同范本
- 2025至2030年中國(guó)船用電加熱器數(shù)據(jù)監(jiān)測(cè)研究報(bào)告
- 酒店商業(yè)贊助合同范本
- 2025年度水利工程款抵還住宅房款執(zhí)行協(xié)議
- 二零二五年度素食餐廳轉(zhuǎn)讓及素食文化推廣合同
- 七年級(jí)下冊(cè)《平行線的判定》課件與練習(xí)
- 2025年中考英語(yǔ)時(shí)文閱讀 6篇有關(guān)電影哪吒2和 DeepSeek的英語(yǔ)閱讀(含答案)
- 修高速土方合同范例
- 2024年湖北省武漢市中考語(yǔ)文試卷
- 二零二五年度高品質(zhì)小區(qū)瀝青路面翻新施工與道路綠化合同2篇
- 2024年形勢(shì)與政策復(fù)習(xí)題庫(kù)含答案(綜合題)
- 2022年北京市初三一模語(yǔ)文試題匯編:基礎(chǔ)知識(shí)綜合
- 2025年廣東食品藥品職業(yè)學(xué)院高職單招高職單招英語(yǔ)2016-2024年參考題庫(kù)含答案解析
- 2 爆破工試題及答案
- 工程項(xiàng)目部安全生產(chǎn)治本攻堅(jiān)三年行動(dòng)實(shí)施方案
- 2024三農(nóng)新政策解讀
評(píng)論
0/150
提交評(píng)論