USB的優點有以下幾條:
1.USB為所有的USB外設提供了單一的、易于操作的標準的連接類型。這樣一來就簡化了USB外設的設計,同時也簡化了用戶在判斷哪個插頭對應哪個插槽時的任務,實現了單一的數據通用接口。
2.USB排除了各個設備象鼠標、調制解調器、鍵盤和打印機設備對去系統資源的需求,因而減少了硬件的復雜性和對端口的占用,整個的USB的系統只有一個端口和一個中斷,節省了系統資源。
3.USB支持熱插拔(hot plug),也就是說在不關PC的情況下可以安全的插上和斷開USB設備,動態的加載驅動程序。其他普通的外圍連接標準,如SCSI設備等必須在關掉主機的情況下才能增加或移走外圍設備。
4.USB支持PNP。當插入USB設備的時候,計算機系統檢測該外設并且通過自動的加載相關的驅動程序來對該設備進行配置,并使其正常工作。
5.USB在設備供電方面提供了靈活性。USB直接連接到Hub或者是連接到Host的設備可以通過USB電纜供電,也可以通過電池或者其它的電力設備來供電,或使用兩種供電方式的組合.并且支持節約能源的掛機和喚醒模式。
6.USB提供全速12Mbps的速率和低速1.5Mbps的速率來適應各種不同類型的外設。
7.針對不能處理突然發生的非連續傳送的設備,如音頻和視頻設備,USB可以保證其固定帶寬。
8.為了適應各種不同類型外圍設備的要求,USB提供了四種不同的數據傳送類型。
9.USB使得多個外圍設備可以跟主機通信。
USB的目的:1,使用方便 2,可以提供實時的數據給PC 3,端口的靈活擴展性
USB標準可以www.usb.org/developer中找到,并且你還可以在該站點找到另外的一個USB的測試工具:usbcomp.exe,它包含一個usbcheck的工具可以檢測到設備是否一些USB的高層次的要求。同時它還有一個usbcheck的工具可以檢測HID(human interface device)的設備。而Win98還有一個"Ignore hubs"(Memphis only)的檢測窗口。在W2K DDK中包含的一個USBView的工具可以看出系統中所有的USB總線以及USB總線上的所有的設備。
USB的基本特性
每一個設備(device)會有一個或者多個的邏輯連接點在里面,每個連接點叫endpoint.每個endpoint有四種數據傳送方式:控制(Control)方式傳送;同步(isochronous)方式傳送;中斷(interrupt)方式傳送;大量(bulk)傳送.但是所有的endpoint0都被用來傳送配置和控制信息。
在host和設備的endpoint之間的連接叫作管道“pipe",endpoint0叫做缺省(default pipe)。
對于同樣性質的一組的endpoint的組合叫做接口(interface),如果一個設備包含不止一個的接口就可以稱之為復合設備(composite device)。
同樣的道理,對于同樣的類型的接口的組合可以稱之為“配置"(configuration)。但是每次只能有一個配置是可用的,而一旦該配置激活,里面的接口和endpoint就都同時可以使用。
host從設備發過來的描述字(descrīptors)中來判斷用的是哪個配置,哪個接口等等,而這些的描述字通常是在endpoint0中傳送。
傳輸方式
在USB的數據傳送的方式下,有四種的傳輸方式:控制(Control)同步(isochronous)中斷(interrupt)大量(bulk)。如果你是從硬件開始來設計整個的系統,你還要正確選擇傳送的方式,而作為一個驅動程序的書寫者,就只需要弄清楚他是采用的什么工作方式就行了。
通常所有的傳送方式下的主動權都在PC邊,也就是host邊。
·控制(Control)方式傳送:控制傳送是雙向傳送,數據量通常較小。USB系統軟件用來主要進行查詢、配置和給USB設備發送通用的命令??刂苽魉头绞娇梢园?、16、32和64字節的數據,這依賴于設備和傳輸速度??刂苽鬏數湫偷赜迷谥饔嬎銠C和USB外設之間的端點(Endpoint)0之間的傳輸,但是指定供應商的控制傳輸可能用到其它的端點。
·同步(isochronous)方式傳送:同步傳輸提供了確定的帶寬和間隔時間(latency)。它被用于時間嚴格并具有較強容錯性的流數據傳輸,或者用于要求恒定的數據傳送率的即時應用中。例如執行即時通話的網絡電話應用時,使用同步傳輸模式是很好的選擇。同步數據要求確定的帶寬值和確定的最大傳送次數。對于同步傳送來說,即時的數據傳遞比完美的精度和數據的完整性更重要一些。
·中斷(interrupt)方式傳送:中斷方式傳輸主要用于定時查詢設備是否有中斷數據要傳送。設備的端點模式器的結構決定了它的查詢頻率,從1到255ms之間。這種傳輸方式典型的應用在少量的分散的、不可預測數據的傳輸。鍵盤、操縱桿和鼠標就屬于這一類型。中斷方式傳送是單向的并且對于host來說只有輸入的方式。
·大量(bulk)傳送:主要應用在數據大量傳送傳送和接受數據上,同時又沒有帶寬和間隔時間要求的情況下,要求保證傳輸。打印機和掃描儀屬于這種類型。這種類型的設備適合于傳輸非常慢和大量被延遲的傳輸,可以等到所有其它類型的數據的傳送完成之后再傳送和接收數據。
還有很多有關USB的接口規范,以及低層的硬件接口編程,內容是非常煩雜,這里就略過,在這里只是想大家在理論的層面上對USB有一個認識,所以文章難度相對較高,適合對這方面感興趣的高手瀏覽。
1.USB為所有的USB外設提供了單一的、易于操作的標準的連接類型。這樣一來就簡化了USB外設的設計,同時也簡化了用戶在判斷哪個插頭對應哪個插槽時的任務,實現了單一的數據通用接口。
2.USB排除了各個設備象鼠標、調制解調器、鍵盤和打印機設備對去系統資源的需求,因而減少了硬件的復雜性和對端口的占用,整個的USB的系統只有一個端口和一個中斷,節省了系統資源。
3.USB支持熱插拔(hot plug),也就是說在不關PC的情況下可以安全的插上和斷開USB設備,動態的加載驅動程序。其他普通的外圍連接標準,如SCSI設備等必須在關掉主機的情況下才能增加或移走外圍設備。
4.USB支持PNP。當插入USB設備的時候,計算機系統檢測該外設并且通過自動的加載相關的驅動程序來對該設備進行配置,并使其正常工作。
5.USB在設備供電方面提供了靈活性。USB直接連接到Hub或者是連接到Host的設備可以通過USB電纜供電,也可以通過電池或者其它的電力設備來供電,或使用兩種供電方式的組合.并且支持節約能源的掛機和喚醒模式。
6.USB提供全速12Mbps的速率和低速1.5Mbps的速率來適應各種不同類型的外設。
7.針對不能處理突然發生的非連續傳送的設備,如音頻和視頻設備,USB可以保證其固定帶寬。
8.為了適應各種不同類型外圍設備的要求,USB提供了四種不同的數據傳送類型。
9.USB使得多個外圍設備可以跟主機通信。
USB的目的:1,使用方便 2,可以提供實時的數據給PC 3,端口的靈活擴展性
USB標準可以www.usb.org/developer中找到,并且你還可以在該站點找到另外的一個USB的測試工具:usbcomp.exe,它包含一個usbcheck的工具可以檢測到設備是否一些USB的高層次的要求。同時它還有一個usbcheck的工具可以檢測HID(human interface device)的設備。而Win98還有一個"Ignore hubs"(Memphis only)的檢測窗口。在W2K DDK中包含的一個USBView的工具可以看出系統中所有的USB總線以及USB總線上的所有的設備。
USB的基本特性
每一個設備(device)會有一個或者多個的邏輯連接點在里面,每個連接點叫endpoint.每個endpoint有四種數據傳送方式:控制(Control)方式傳送;同步(isochronous)方式傳送;中斷(interrupt)方式傳送;大量(bulk)傳送.但是所有的endpoint0都被用來傳送配置和控制信息。
在host和設備的endpoint之間的連接叫作管道“pipe",endpoint0叫做缺省(default pipe)。
對于同樣性質的一組的endpoint的組合叫做接口(interface),如果一個設備包含不止一個的接口就可以稱之為復合設備(composite device)。
同樣的道理,對于同樣的類型的接口的組合可以稱之為“配置"(configuration)。但是每次只能有一個配置是可用的,而一旦該配置激活,里面的接口和endpoint就都同時可以使用。
host從設備發過來的描述字(descrīptors)中來判斷用的是哪個配置,哪個接口等等,而這些的描述字通常是在endpoint0中傳送。
傳輸方式
在USB的數據傳送的方式下,有四種的傳輸方式:控制(Control)同步(isochronous)中斷(interrupt)大量(bulk)。如果你是從硬件開始來設計整個的系統,你還要正確選擇傳送的方式,而作為一個驅動程序的書寫者,就只需要弄清楚他是采用的什么工作方式就行了。
通常所有的傳送方式下的主動權都在PC邊,也就是host邊。
·控制(Control)方式傳送:控制傳送是雙向傳送,數據量通常較小。USB系統軟件用來主要進行查詢、配置和給USB設備發送通用的命令??刂苽魉头绞娇梢园?、16、32和64字節的數據,這依賴于設備和傳輸速度??刂苽鬏數湫偷赜迷谥饔嬎銠C和USB外設之間的端點(Endpoint)0之間的傳輸,但是指定供應商的控制傳輸可能用到其它的端點。
·同步(isochronous)方式傳送:同步傳輸提供了確定的帶寬和間隔時間(latency)。它被用于時間嚴格并具有較強容錯性的流數據傳輸,或者用于要求恒定的數據傳送率的即時應用中。例如執行即時通話的網絡電話應用時,使用同步傳輸模式是很好的選擇。同步數據要求確定的帶寬值和確定的最大傳送次數。對于同步傳送來說,即時的數據傳遞比完美的精度和數據的完整性更重要一些。
·中斷(interrupt)方式傳送:中斷方式傳輸主要用于定時查詢設備是否有中斷數據要傳送。設備的端點模式器的結構決定了它的查詢頻率,從1到255ms之間。這種傳輸方式典型的應用在少量的分散的、不可預測數據的傳輸。鍵盤、操縱桿和鼠標就屬于這一類型。中斷方式傳送是單向的并且對于host來說只有輸入的方式。
·大量(bulk)傳送:主要應用在數據大量傳送傳送和接受數據上,同時又沒有帶寬和間隔時間要求的情況下,要求保證傳輸。打印機和掃描儀屬于這種類型。這種類型的設備適合于傳輸非常慢和大量被延遲的傳輸,可以等到所有其它類型的數據的傳送完成之后再傳送和接收數據。
還有很多有關USB的接口規范,以及低層的硬件接口編程,內容是非常煩雜,這里就略過,在這里只是想大家在理論的層面上對USB有一個認識,所以文章難度相對較高,適合對這方面感興趣的高手瀏覽。
- USB技術(9061)
評論
查看更多