串口通信
串行接口是一種可以將接受來自CPU的并行數(shù)據(jù)字符轉(zhuǎn)換為連續(xù)的串行數(shù)據(jù)流發(fā)送出去,同時(shí)可將接受的串行數(shù)據(jù)流轉(zhuǎn)換為并行的數(shù)據(jù)字符供給CPU的器件。一般完成這種功能的電路,我們稱為串行接口電路。
串口通信原理
串口通信(Serial Communications)的概念非常簡(jiǎn)單,串口按位(bit)發(fā)送和接收字節(jié)。盡管比按字節(jié)(byte)的并行通信慢,但是串口可以在使用一根線發(fā)送數(shù)據(jù)的同時(shí)用另一根線接收數(shù)據(jù)。它很簡(jiǎn)單并且能夠?qū)崿F(xiàn)遠(yuǎn)距離通信。比如IEEE488定義并行通行狀態(tài)時(shí),規(guī)定設(shè)備線總長(zhǎng)不得超過20米,并且任意兩個(gè)設(shè)備間的長(zhǎng)度不得超過2米;而對(duì)于串口而言,長(zhǎng)度可達(dá)1200米。典型地,串口用于ASCII碼字符的傳輸。通信使用3根線完成,分別是地線、發(fā)送、接收。由于串口通信是異步的,端口能夠在一根線上發(fā)送數(shù)據(jù)同時(shí)在另一根線上接收數(shù)據(jù)。其他線用于握手,但不是必須的。串口通信最重要的參數(shù)是波特率、數(shù)據(jù)位、停止位和奇偶校驗(yàn)。對(duì)于兩個(gè)進(jìn)行通信的端口,這些參數(shù)必須匹配。
a,波特率:這是一個(gè)衡量符號(hào)傳輸速率的參數(shù)。指的是信號(hào)被調(diào)制以后在單位時(shí)間內(nèi)的變化,即單位時(shí)間內(nèi)載波參數(shù)變化的次數(shù),如每秒鐘傳送240個(gè)字符,而每個(gè)字符格式包含10位(1個(gè)起始位,1個(gè)停止位,8個(gè)數(shù)據(jù)位),這時(shí)的波特率為240Bd,比特率為10位*240個(gè)/秒=2400bps。一般調(diào)制速率大于波特率,比如曼徹斯特編碼)。通常電話線的波特率為14400,28800和36600。波特率可以遠(yuǎn)遠(yuǎn)大于這些值,但是波特率和距離成反比。高波特率常常用于放置的很近的儀器間的通信,典型的例子就是GPIB設(shè)備的通信。
b,數(shù)據(jù)位:這是衡量通信中實(shí)際數(shù)據(jù)位的參數(shù)。當(dāng)計(jì)算機(jī)發(fā)送一個(gè)信息包,實(shí)際的數(shù)據(jù)往往不會(huì)是8位的,標(biāo)準(zhǔn)的值是6、7和8位。如何設(shè)置取決于你想傳送的信息。比如,標(biāo)準(zhǔn)的ASCII碼是0~127(7位)。擴(kuò)展的ASCII碼是0~255(8位)。如果數(shù)據(jù)使用簡(jiǎn)單的文本(標(biāo)準(zhǔn) ASCII碼),那么每個(gè)數(shù)據(jù)包使用7位數(shù)據(jù)。每個(gè)包是指一個(gè)字節(jié),包括開始/停止位,數(shù)據(jù)位和奇偶校驗(yàn)位。由于實(shí)際數(shù)據(jù)位取決于通信協(xié)議的選取,術(shù)語“包”指任何通信的情況。
c,停止位:用于表示單個(gè)包的最后一位。典型的值為1,1.5和2位。由于數(shù)據(jù)是在傳輸線上定時(shí)的,并且每一個(gè)設(shè)備有其自己的時(shí)鐘,很可能在通信中兩臺(tái)設(shè)備間出現(xiàn)了小小的不同步。因此停止位不僅僅是表示傳輸?shù)慕Y(jié)束,并且提供計(jì)算機(jī)校正時(shí)鐘同步的機(jī)會(huì)。適用于停止位的位數(shù)越多,不同時(shí)鐘同步的容忍程度越大,但是數(shù)據(jù)傳輸率同時(shí)也越慢。
d,奇偶校驗(yàn)位:在串口通信中一種簡(jiǎn)單的檢錯(cuò)方式。有四種檢錯(cuò)方式:偶、奇、高和低。當(dāng)然沒有校驗(yàn)位也是可以的。對(duì)于偶和奇校驗(yàn)的情況,串口會(huì)設(shè)置校驗(yàn)位(數(shù)據(jù)位后面的一位),用一個(gè)值確保傳輸?shù)臄?shù)據(jù)有偶個(gè)或者奇?zhèn)€邏輯高位。例如,如果數(shù)據(jù)是011,那么對(duì)于偶校驗(yàn),校驗(yàn)位為0,保證邏輯高的位數(shù)是偶數(shù)個(gè)。如果是奇校驗(yàn),校驗(yàn)位為1,這樣就有3個(gè)邏輯高位。高位和低位不真正的檢查數(shù)據(jù),簡(jiǎn)單置位邏輯高或者邏輯低校驗(yàn)。這樣使得接收設(shè)備能夠知道一個(gè)位的狀態(tài),有機(jī)會(huì)判斷是否有噪聲干擾了通信或者是否傳輸和接收數(shù)據(jù)是否不同步。
并行通信
在計(jì)算機(jī)和終端之間的數(shù)據(jù)傳輸通常是靠電纜或信道上的電流或電壓變化實(shí)現(xiàn)的。如果一組數(shù)據(jù)的各數(shù)據(jù)位在多條線上同時(shí)被傳輸,這種傳輸方式稱為并行通信。
并行通信原理
并行接口
一般地并行接口有 3 個(gè)方面的功能:
⑴實(shí)現(xiàn)與系統(tǒng)總線的連接:提供數(shù)據(jù)的輸入輸出功能。
⑵實(shí)現(xiàn)與外設(shè)連接:確保與外設(shè)間有效進(jìn)行數(shù)據(jù)的接收和發(fā)送。
⑶具有中斷請(qǐng)求處理功能:外設(shè)輸入輸出采用中斷的方法來實(shí)現(xiàn)。
接口連接
典型的雙向并行接口與外設(shè)連接
⒈并行接口與CPU的連接
⑴數(shù)據(jù)總線:是CPU與并行接口進(jìn)行數(shù)據(jù)交換的通道。
⑵讀出寫入信號(hào)線:控制數(shù)據(jù)流向,確定操作是讀還是寫。
⑶復(fù)位線,準(zhǔn)備好狀態(tài)線:并行接口數(shù)據(jù)準(zhǔn)備就緒。
⑷中斷請(qǐng)求線:并行接口向CPU進(jìn)行中斷請(qǐng)求。
⑸地址譯碼電路:進(jìn)行選擇不同的接口電路,選擇接口電路內(nèi)部不同的寄存器。
⒉并行接口與外設(shè)的連接
⑴輸入設(shè)備:數(shù)據(jù)輸入線,設(shè)備數(shù)據(jù)準(zhǔn)備就緒狀態(tài)線和接口接收數(shù)據(jù)回答線。
⑵輸出設(shè)備:數(shù)據(jù)輸出線,接口數(shù)據(jù)準(zhǔn)備就緒狀態(tài)線和外設(shè)接收數(shù)據(jù)回答線。
⒊并行接口
⑴控制寄存器:接收CPU發(fā)來的控制命令。
⑵數(shù)據(jù)輸入緩沖器、數(shù)據(jù)輸出緩沖器:進(jìn)行數(shù)據(jù)的輸入、輸出。
⑶狀態(tài)寄存器:提供接口電路工作狀態(tài)供CPU查詢。
傳輸原理
⒈ 并行接口輸入數(shù)據(jù)的過程
外設(shè)將數(shù)據(jù)送到“數(shù)據(jù)輸入線”,通過“輸入數(shù)據(jù)準(zhǔn)備好” 狀態(tài)線通知并行接口取走,接口將數(shù)據(jù)鎖存到“輸入緩沖器”,通過“數(shù)據(jù)輸入回答”線通知外設(shè),接口數(shù)據(jù)緩沖器已滿,不要再送數(shù)據(jù),接口在其內(nèi)“狀態(tài)寄存器” 的相應(yīng)位置 1,便于CPU 查詢和接口向CPU 發(fā)中斷請(qǐng)求之用。
CPU 從接口將數(shù)據(jù)取走后,接口將“數(shù)據(jù)輸入準(zhǔn)備好”、“數(shù)據(jù)輸入回答” 信號(hào)清除,以便外設(shè)輸入下一個(gè)數(shù)據(jù)。
⒉ 并行接口輸出數(shù)據(jù)的過程
接口“數(shù)據(jù)輸出緩沖器” 空,“數(shù)據(jù)輸出準(zhǔn)備好” 狀態(tài)線送 1,收到CPU 發(fā)的數(shù)據(jù),將之復(fù)位清0,數(shù)據(jù)通過“數(shù)據(jù)輸出” 線送外設(shè),由“數(shù)據(jù)輸出準(zhǔn)備好” 線通知外設(shè)取數(shù)據(jù)。
實(shí)例
微機(jī)系統(tǒng)中最基本的信息交換方法
例如:微機(jī)與并行接口打印機(jī)、磁盤驅(qū)動(dòng)器
例如:系統(tǒng)板上各部件之間,接口電路板上各部件之間
串行通信和并行通信區(qū)別
并行通信傳輸中有多個(gè)數(shù)據(jù)位,同時(shí)在兩個(gè)設(shè)備之間傳輸。發(fā)送設(shè)備將這些數(shù)據(jù)位通過對(duì)應(yīng)的數(shù)據(jù)線傳送給接收設(shè)備,還可附加一位數(shù)據(jù)校驗(yàn)位。接收設(shè)備可同時(shí)接收到這些數(shù)據(jù),不需要做任何變換就可直接使用。并行方式主要用于近距離通信。計(jì)算機(jī)內(nèi)的總線結(jié)構(gòu)就是并行通信的例子。這種方法的優(yōu)點(diǎn)是傳輸速度快,處理簡(jiǎn)單。
串行數(shù)據(jù)傳輸時(shí),數(shù)據(jù)是一位一位地在通信線上傳輸?shù)模扔删哂袔孜豢偩€的計(jì)算機(jī)內(nèi)的發(fā)送設(shè)備,將幾位并行數(shù)據(jù)經(jīng)并--串轉(zhuǎn)換硬件轉(zhuǎn)換成串行方式,再逐位經(jīng)傳輸線到達(dá)接收站的設(shè)備中,并在接收端將數(shù)據(jù)從串行方式重新轉(zhuǎn)換成并行方式,以供接收方使用。串行數(shù)據(jù)傳輸?shù)乃俣纫炔⑿袀鬏斅枚?,但?duì)于覆蓋面極其廣闊的公用電話系統(tǒng)來說具有更大的現(xiàn)實(shí)意義。
串行數(shù)據(jù)通信的方向性結(jié)構(gòu)有三種,即單工、半雙工和全雙工。
并行通信是把一個(gè)字符的各數(shù)位用幾條線同時(shí)進(jìn)行傳輸,傳輸速度快,信息率高。但它比串行通信所用的電纜多,故常用在傳輸距離較短(幾米至幾十米)、數(shù)據(jù)傳輸率較高的場(chǎng)合。 實(shí)現(xiàn)并行通信的接口就是并行接口。
并行接口可設(shè)計(jì)為只作為輸入/輸出接口,也可設(shè)計(jì)為既作為輸入又作為輸出的接口。它可以用兩種方法實(shí)現(xiàn),一種是利用同一個(gè)接口中的兩個(gè)通路,一個(gè)作輸入通路,一個(gè)作輸出通路;另一種使用同一個(gè)雙向通路,既作為輸入又作為輸出。 連接設(shè)備接口有PS/2,PATA,LPT等
串行通信是指數(shù)據(jù)一位一位地依次傳輸,每一位數(shù)據(jù)占據(jù)一個(gè)固定的時(shí)間長(zhǎng)度。其只要少數(shù)幾條線就可以在系統(tǒng)間交換信息,特別適用于計(jì)算機(jī)與計(jì)算機(jī)、計(jì)算機(jī)與外設(shè)之間的遠(yuǎn)距離通信, 連接設(shè)備接口有SATA,USB等 lpt是并行通信接口,一般鏈接打印機(jī)。
com是串行通信接口,一般鏈接modem,串口鼠標(biāo) 一:
網(wǎng)卡(Network Interface Card,簡(jiǎn)稱NIC),也稱網(wǎng)絡(luò)適配器,是電腦與局域網(wǎng)相互連接的接口。無論是普通電腦還是高端服務(wù)器,只要連接到局域網(wǎng),就都需要安裝一塊網(wǎng)卡。如果有必要,一臺(tái)電腦也可以同時(shí)安裝兩塊或多塊網(wǎng)卡。
電腦之間在進(jìn)行相互通訊時(shí),數(shù)據(jù)不是以流而是以幀的方式進(jìn)行傳輸?shù)?。我們可以把幀看做是一種數(shù)據(jù)包,在數(shù)據(jù)包中不僅包含有數(shù)據(jù)信息,而且還包含有數(shù)據(jù)的發(fā)送地、接收地信息和數(shù)據(jù)的校驗(yàn)信息。
網(wǎng)卡的功能主要有兩個(gè):一是將電腦的數(shù)據(jù)封裝為幀,并通過網(wǎng)線(對(duì)無線網(wǎng)絡(luò)來說就是電磁波)將數(shù)據(jù)發(fā)送到網(wǎng)絡(luò)上去;二是接收網(wǎng)絡(luò)上傳過來的幀,并將幀重新組合成數(shù)據(jù),發(fā)送到所在的電腦中。網(wǎng)卡接收所有在網(wǎng)絡(luò)上傳輸?shù)男盘?hào),但只接受發(fā)送到該電腦的幀和廣播幀,將其余的幀丟棄。然后,傳送到系統(tǒng)CPU做進(jìn)一步處理。當(dāng)電腦發(fā)送數(shù)據(jù)時(shí),網(wǎng)卡等待合適的時(shí)間將分組插入到數(shù)據(jù)流中。接收系統(tǒng)通知電腦消息
是否完整地到達(dá),如果出現(xiàn)問題,將要求對(duì)方重新發(fā)送。
網(wǎng)卡雖然有很多種,不過,有一點(diǎn)是一致的,那就是每塊網(wǎng)卡都有一個(gè)世界惟一的ID號(hào),也叫做MAC(Media Access Control)地址。MAC地址被燒錄于網(wǎng)卡的ROM中,就像是我們每個(gè)人的遺傳基因密碼DNA一樣,即使在全世界也絕對(duì)不會(huì)重復(fù)。MAC地址用于在網(wǎng)絡(luò)中標(biāo)識(shí)電腦的身份,實(shí)現(xiàn)網(wǎng)絡(luò)中不同電腦之間的通信和信息交換。
評(píng)論