日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

USB设备类型汇总

發布時間:2023/12/8 编程问答 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 USB设备类型汇总 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

USB設備類型匯總

Mr_Michael

0.1792020.07.29 16:44:47字數 1,859閱讀 7,494

參考:usb wiki、USB

一、USB概述

1.USB 版本

2.USB 接口

[站外圖片上傳中...(image-2f523-1596012258374)]

3.USB Class Codes

? USB定義了設備類的類別碼信息,它的功能包括:可以用來識別設備并且加載設備驅動。這種代碼信息有包含Base Class([基類])、SubClass([子類])、Protocol([協議])一共占有3個字節。

Base Class、SubClass與Protocol詳細關系列表

4.USB封包格式

二、常見usb設備類型

參考ACM&ECM&NCM&EEM&RNDIS&RmNet介紹

1.USB CDC設備

通用串行總線(USB)通信設備(Communication devices)的定義由三個類組成:

  • 通信設備類(Communication Device Class, CDC):設備級定義,被主機用于識別(確定)含有幾種不同類型接口的通信設備;
  • 通信接口類(Communication Interface Class):定義了一種通用機制,該機制可被用來使能處于USB總線上的所有類型的通信服務,即USB通信設備的控制功能;
  • 數據接口類(Data Interface Class):定義了一種通用機制,當一種數據不符合任何類的要求時,該機制使這種數據傳輸能通過USB塊傳輸或同步傳輸類型在USB總線上進行,即通過USB塊傳輸或同步傳輸類型去實現任何類型的數據傳輸的機制。

1)USB CDC ACM(虛擬串口)

  • CDC-ACM (Abstract Control Model 抽象控制模型)允許任何通信設備提供串行通信接口(例如發送和接收AT命令的調制解調器設備)。該設備類型是在PSTN(Public Switched Telephone Network)中定義的。
  • CDC-ACM驅動程序將USB設備作為虛擬調制解調器或虛擬COM端口暴露給操作系統。驅動程序可以通過ACM(通過不同通道分離數據和AT命令)或通過串行仿真(按原樣傳遞AT命令和作為數據流的一部分)發送數據和AT命令。

2)USB CDC ECM

CDC-ECM(Ethernet Networking Control Model 以太網網絡控制模型)用于在設備和主機之間交換以太網幀數據。CDC-ECM設備的一般用例是LAN/WLAN的點對點以太網適配器。(獲取的是局域網IP)

3)USB CDC NCM

CDC-NCM(Network Control Model 網絡控制模型)協議用于在設備和主機之間交換高速以太網幀數據。這些以太網幀可以傳送通過通信網絡傳輸的IPv4或IPv6數據報。NCM設備的一般用例是支持3.5G/4G網絡的無線網絡適配器,例如:HSPA +和LTE。NCM是建立在ECM的基礎上,進行改進以支持更高的數據速率,主要表現在

  • 多個以太網幀可以聚合為單個USB傳輸;
  • 為了最大限度地減少在USB設備中處理以太網幀時的開銷,CDC-NCM可以按照最好的方式將以太網幀放到USB傳輸中。
  • CDC-ECM專為USB full-speed設備而設計,尤其適用于支持DOCSIS 1.0電纜調制解調器。雖然ECM在功能上是完整的,但它在吞吐量或效率方面不能很好地擴展到更高的USB速度和更高的網絡速度。NCM利用從ECM實施中獲得的經驗,并調整數據傳輸協議,使其更加高效。

4)USB CDC EEM

CDC-EEM(Ethernet Emulation Model 以太網仿真模型)是一種通過USB總線以低成本和高效率傳輸以太網幀的規范。與CDC ECM不同,EEM不會擴展USB總線上的接口,而是將USB總線視為移動以太網數據包的工具。EEM是較新的標準,比ECM稍微簡單一些,可以獲得更多的硬件支持。兩者之間的差別是:

  • ECM將網絡接口擴展到目標(例如USB電纜調制解調器);
  • EEM用于移動設備通過USB使用以太網與主機通信。

但是,對于Linux gadget,與主機的接口是相同的(usbX設備),因此差異很小。

5)USB CDC OBEX

USB CDC-OBEX(Object Exchange 對象交換)符合WMC(Wireless Mobile Communication 無線移動通信)OBEX功能模型,支持USB上的OBEX應用程序。

6)USB WMC

USB WMC(Wireless Mobile Communication 無線移動通信),可以理解為USB上網卡(連接移動通信網絡),該模型包括以下內容:

image

2.RNDIS設備

  • RNDIS(Remote Network Driver Interface Specification 遠程網絡驅動接口協議)是Microsoft專有協議,主要用于USB之上,在支持Microsoft RNDIS協議的Windows PC上提供類似CDC的通信功能。它提供了大多數Windows,Linux和FreeBSD操作系統版本的虛擬以太網鏈接。

  • NDIS和RNDIS區別:NDIS是一種規范,定義了網絡驅動接口的api。RNDIS是一種技術,是將TCP/IP封裝在USB報文里,實現網絡通信。

  • NDIS和PPP區別:ppp通過pppd進行撥號,NDIS通過gobinet進行撥號。

  • RNDIS的框架如下:

    image

3.RmNet設備

RmNet是高通公司為其手機平臺開發的專有USB虛擬以太網框架。 RmNet通過薄層協議(TLP)提供更高的吞吐量,并允許服務質量流量控制。

  • RmNet和CDC-ECM區別:更像是兩種撥號方式的區別,RmNet獲取公網IP,CCD-ECM獲取局域網IP。
  • 在高通平臺上,rmnet 也是屬于CDC-ECM,他們具體的區別在于對于USB命令的封裝以及使用的USB接口,端點定義方式不同。
  • 如果是使用RmNet,那么發起data call是通過QMI工具發的QMI命令,QMI工具為QMICM,QMICM集成了QMI命令。
  • 而通過標準的CDC-ECM發起data call,則是發送標準的ECM命令。
    • 如果是QMICM建立的data call,不走router的,所以它的IP地址獲得的是公網IP。
    • 而通過標準的CDC-ECM建立的data call,是走router的,獲得的IP地址是私有的IP如192.168開頭。

4.HID設備

Human Interface Device的縮寫,由其名稱可以了解HID設備是直接與人交互的設備,例如鍵盤、鼠標與游戲桿等。不過HID設備并不一定要有人機接口,只要符合HID類別規范的設備都是HID設備。

5.Mass Storage設備

USB大容量存儲設備是一個協議,允許一個USB接口的設備與主計算設備相連接,以便在兩者之間傳輸文件。對于主計算設備來說,USB設備看起來就像一個移動硬盤,允許拖放型文件傳送。它實際上是由USB實施者論壇所通過許多通訊協議的匯總,這一標準提供了許多設備的界面。包括移動硬盤、閃存盤、移動光學驅動器、讀卡器、數碼相機、數碼音樂播放器、PDA以及手機等等。

總結

以上是生活随笔為你收集整理的USB设备类型汇总的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。