計算機接口知識:串行口、并行口、USB接口是如何聯(lián)絡(luò)主機和外設(shè)的?_第1頁
免費預(yù)覽已結(jié)束,剩余1頁可下載查看

下載本文檔

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

文檔簡介

1、計算機接口知識:串行口、并行口、usb接口是如何聯(lián)絡(luò)主機和外設(shè)的? 本文主要敘述了計算機接口的基礎(chǔ)學(xué)問。具體描述了串行口、并行口如何通過握手信號舉行通信,并介紹了的硬件和軟件結(jié)構(gòu)與數(shù)據(jù)傳輸?shù)姆绞?。在控制領(lǐng)域,想要對一個相對復(fù)雜的系統(tǒng)舉行有效控制,要在設(shè)備之間建立一個互相聯(lián)絡(luò)和交流的機制,計算機科學(xué)里稱這種聯(lián)絡(luò)機制為“接口(interface)”。譬如,當(dāng)我們需要打印一份文件時,首先主機需要與打印機之間要建立聯(lián)系,然后才干向打印機發(fā)送數(shù)據(jù)。那么,這是怎樣一個過程呢?握手信號,聯(lián)系主機與外設(shè)的紐帶計算機接口的主要功能就是使數(shù)據(jù)通過接口使之能夠在不同模塊或系統(tǒng)間自由流淌,達(dá)到數(shù)據(jù)分享的目的。在過去很

2、長一個時期內(nèi),主機與打印機之間是通過并行口銜接起來的,現(xiàn)在針式打印機仍然用法并行口,激光打印機和一部分噴墨打印機已經(jīng)采納usb接口了。先來看看并行口是怎樣舉行數(shù)據(jù)交換的。圖1 并行口所謂并行口,是指數(shù)據(jù)在多條信號線上同時舉行傳送。標(biāo)準(zhǔn)的并行口為8位,也就是說惟獨8條數(shù)據(jù)線。那么,標(biāo)準(zhǔn)的并行口為何定義了25個針腳呢?本來,除了8根數(shù)據(jù)線,還有一系列的指令線、狀態(tài)信號線和接地線(圖1)。其中的指令線由主機發(fā)往打印機,而狀態(tài)信號線則由打印機反饋給主機。指令線與狀態(tài)線之間往往是成對浮現(xiàn)的一條指令線對應(yīng)一條狀態(tài)線,彼此接頭的兩個信號則被形象地稱作握手(handshaking)信號。表1 spp模式下并行

3、口信號定義通過握手信號,主控端可獲得被控端的狀態(tài)信息,從而打算下一步做什么了。譬如,當(dāng)用戶需要打印文件時,會向打印機發(fā)出nselect指令,假如打印機電源已經(jīng)打開,則通過select信號線傳回“在線”狀態(tài)信號。接下來,主機向打印機傳輸nstorbe信號,同時將存放數(shù)據(jù)的發(fā)送到數(shù)據(jù)線上,一旦busy信號為低電平,則執(zhí)行數(shù)據(jù)傳輸。此時,打印機輸出nack信號,表示完成了一個字節(jié)的數(shù)據(jù)傳輸任務(wù),告知主機可以開頭傳輸下一個字節(jié)了(圖2)。圖2 并行口數(shù)據(jù)傳輸時序圖假如在打印過程中紙張用盡,打印機發(fā)出缺紙信號,主機收到這個信號后,會在顯示屏上顯示出對應(yīng)的信息,以通知用戶放入紙張。有了這樣一個機制,機器之

4、間便可以自動地舉行各種工作。采納同步通信建立聯(lián)系主機與外設(shè)的紐帶握手信號的另一用途是對被控設(shè)備舉行故障診斷。譬如電腦在啟動過程中會向打印機發(fā)出控制指令nint讓打印機復(fù)位,假如應(yīng)答信號nerror為高電平,則解釋打印機功能正常,否則意味著打印機出錯了。握手信號是聯(lián)系主機與外設(shè)的紐帶,通過握手信號你來我往的過程,主機便可獲得外設(shè)須要信息,從而為數(shù)據(jù)傳輸做好預(yù)備。與并行口一樣,標(biāo)準(zhǔn)串行口rs-232c也提供了握手信號。握手信號是聯(lián)系主機與外設(shè)的紐帶,主機通過握手信號獲得外設(shè)須要信息,為數(shù)據(jù)傳輸做好預(yù)備。那么,握手信號是不是在全部的計算機接口中都是必需的呢?回答是否定的。在鼠標(biāo)和鍵盤用法ps/2接口

5、中,就沒有握手信號。鍵盤和鼠標(biāo)也需要跟主機之間舉行數(shù)據(jù)傳輸,沒有握手信號,這些設(shè)備又是怎樣與主機建立聯(lián)系的呢?我們先考察一下ps/2鼠標(biāo)端口(圖3)。ps/2端口用作鼠標(biāo)接口時,只用6個插針中的4個,pin1用于傳送數(shù)據(jù),pin3接地,pin4向鼠標(biāo)供電,pin5為鼠標(biāo)提供時鐘信號。與串行口、并行口相比,ps/2接口沒有握手信號,但是有時鐘信號,兩者的差別就在這里。圖3 ps/2鼠標(biāo)接口莫非說,時鐘信號能夠代替握手信號的一些功能嗎?也不行以這么說。合理的說明是,這是兩種徹低不同的通信方式。并行口和串行口用法的通信方式稱作“異步通信”,而ps/2接口則用法“同步通信”。通信接口中是否用法時鐘信號

6、是區(qū)分同步通信還是異步通信的標(biāo)記,同步通信的雙方用法同一個時鐘,而異步通信中無須這么做。盡管如此,無論同步通信還是異步通信,通信雙方都必需互相協(xié)調(diào),以一定的商定(協(xié)議)保持雙方同步,否則就會造成數(shù)據(jù)的錯誤與混亂。在異步通信方式中,收發(fā)雙方取得同步的方法是采納在字符格式中設(shè)置起始位和停止位。在一個有效字符正式發(fā)送前,先發(fā)送一個起始位,而在字符結(jié)束時再發(fā)送一個停止位。接收器不斷地檢測或監(jiān)視線路上信號的變幻,當(dāng)檢測到有起始位時,便知道緊隨其后的是有效字符位的到來,這才開頭接收字符;當(dāng)檢測到停止位時,便停止接收。用法該方式舉行通信時,發(fā)送器與接收器不需要相同的時鐘,所以稱之為異步通信。而在同步通信方式

7、中,傳輸信息的每一位都必需在收發(fā)兩端嚴(yán)格保持同步,即所謂的“位同步”。因此,在同步通信中,收發(fā)兩端需要同一個時鐘源作為同步信號。舉行同步傳送時,發(fā)送端須先發(fā)送一個同步字符去通知接收端串行數(shù)據(jù)的第一位何時到達(dá),接著便以延續(xù)的形式發(fā)送信息,傳輸效率較高。而異步通信每傳送一個字符要增強大約20%的附加信息位,傳輸效率較低。同步通信除了具有通信效率高的優(yōu)點之外,接口的結(jié)構(gòu)也比較容易,而且越發(fā)易于管理。正由于如此,同步通信的應(yīng)用也非常廣泛。smbus(system management bus,系統(tǒng)管理)就是一種同步通信接口,它惟獨兩根信號線:一根雙向數(shù)據(jù)線和一根時鐘信號線。windows中顯示的各種設(shè)

8、備的創(chuàng)造商名稱和型號等信息,都是通過smbus總線收集的。圖4 基于smbus的cpu溫度監(jiān)控電路smbus的數(shù)據(jù)傳輸率為100kbps,雖然速度較慢,卻以其結(jié)構(gòu)簡潔造價低廉的特點,成為業(yè)界普遍歡迎的接口標(biāo)準(zhǔn)。主板監(jiān)控系統(tǒng)中傳送各種的測量結(jié)果,以及bios向監(jiān)控芯片發(fā)送指令,都是利用smbus實現(xiàn)的。pci插槽上也給smbus預(yù)留了兩個引腳(a40為smbus 時鐘線,a41為smbus 數(shù)據(jù)線),以便于pci接口卡與主板設(shè)備之間交換信息。usb接口是怎樣舉行通信的呢?usb接口中既沒有握手信號,也沒有時鐘信號,它是怎樣舉行通信的呢?我們已經(jīng)知道,傳統(tǒng)的串行口、并行口通過握手信號舉行通信,這些

9、接口通常通過握手信號來聯(lián)絡(luò)主機和外設(shè)。我們也已經(jīng)知道,通信雙方可以同步或異步兩種方式舉行通信,兩者最大的區(qū)分是,同步通信接口中有時鐘信號線。usb接口應(yīng)用很廣??墒?,usb接口中既沒有握手信號,也沒有時鐘信號,它是怎樣在主機與外設(shè)之間建立聯(lián)系的呢?又是如何交換數(shù)據(jù)的呢?為了深化理解usb接口的通信過程,先介紹usb的硬件和軟件結(jié)構(gòu)。從物理結(jié)構(gòu)上,usb系統(tǒng)是一個星形結(jié)構(gòu)。usb系統(tǒng)包含三類硬件設(shè)備: usb主機(usb host)、 usb設(shè)備(usb device)和usb集線器(usb hub)。usb總線上的物理銜接是一個分層的星形拓?fù)?,處于每個星形拓?fù)渲行牡氖莌ub集線器,在主機與hu

10、b之間,hub與hub之間,hub與設(shè)備之間都是點對點的銜接。圖5 usb拓?fù)浣Y(jié)構(gòu)usb host對usb系統(tǒng)舉行管理、每毫秒產(chǎn)生一幀數(shù)據(jù)、發(fā)送配置哀求對usb設(shè)備舉行配置、管理和復(fù)原總線上的錯誤。 usb hub用于設(shè)備擴展銜接,全部usb device都銜接在usb hub的端口上。usb device接收usb總線上的全部數(shù)據(jù)包,通過數(shù)據(jù)包的地址域來推斷是不是發(fā)給自己的數(shù)據(jù)包:若地址不符,則容易地丟棄該數(shù)據(jù)包;若地址相符,則通過響應(yīng)usb host的數(shù)據(jù)包與usb host舉行數(shù)據(jù)傳輸。從規(guī)律結(jié)構(gòu)上看,每個usb規(guī)律設(shè)備都挺直與usb host舉行數(shù)據(jù)傳輸。與傳統(tǒng)接口以硬件手段實現(xiàn)握手的

11、辦法不同,usb接口用法“軟握手”辦法。usb的軟握手機制是透過三個層次的驅(qū)動程序?qū)崿F(xiàn)的,在這中間起到關(guān)鍵作用的是設(shè)備驅(qū)動程序,該程序在主機與設(shè)備之間建立起起碼一個管道。管道有兩種類型:流管道和消息管道。其中有一個最重要的消息管道是“缺省控制管道”,這個管道在設(shè)備一加電的時候就存在了,它提供設(shè)備的配置和狀態(tài)等信息。主機與設(shè)備之間的聯(lián)絡(luò)就是通過消息管道實現(xiàn)的。圖6 usb軟件結(jié)構(gòu)協(xié)議棧驅(qū)動程序的主要作用是將設(shè)備與相應(yīng)的設(shè)備驅(qū)動程序銜接起來。由于usb支持的設(shè)備無數(shù),而每個詳細(xì)的設(shè)備都有自己對應(yīng)的設(shè)備驅(qū)動程序。對于某一詳細(xì)設(shè)備來說,用法哪個驅(qū)動來管理,就要由協(xié)議棧驅(qū)動程序通過讀取設(shè)備描述符舉行選擇。挑選好驅(qū)動程序之后,協(xié)議棧驅(qū)動程序還要給usb設(shè)備分配地址。管道建立起來之后,數(shù)

溫馨提示

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

評論

0/150

提交評論