有時候我們需要重裝系統或者進入PE系統,我們常用的方法是使用U盤啟動盤,前提是你需要有一個U盤和一款U盤啟動盤制作工具,怎么制作U盤啟動盤?極速小編為你介紹一款國外的U盤啟動制作工具(WinUSB),它可以幫你將多個系統例如Win7/Win8/Win10裝在你的U盤中,然后隨時啟動你需要的系統,非常強大。
基本介紹
如果您正在開發需要與PC通話的設備,那么涉及USB的可能性很大。對于每個USB設備,PC分配一個軟件驅動程序。 Windows為符合定義的USB類(例如人機界面,打印機或大容量存儲)的設備提供驅動程序。如果您的設備不適合定義的類,則可以使用Microsoft的WinUSB驅動程序。
在本文中,我將展示如何編程和訪問WinUSB設備。 WinUSB驅動程序要求使用Windows XP SP2或更高版本的PC,包括Windows Vista和Windows 7。
每種用途的傳輸類型
每個USB數據傳輸位于PC或其他USB主機與設備端點之間。設備端點是存儲接收到的數據或要發送的數據的緩沖區。每個設備必須支持端點零,這是雙向的。另外,可選的端點地址每個都有一個數字(1-15)和一個方向(IN或OUT)。
即使端點駐留在設備上,USB規范也會從主機PC的角度定義端點方向。 IN端點向PC發送數據,OUT端點從PC接收數據。在為設備端編寫代碼時,這種命名約定可能會引起混淆!
USB如此多才多藝的一個原因是它支持四種傳輸類型,每種類型都有不同的優勢。 WinUSB支持控制,批量和中斷傳輸。控制傳輸使用端點零。其他傳輸類型可以使用端點1和更高端點。
控制傳輸提供了一種結構化的方式來發送請求和數據并接收響應。控制轉移是唯一一種可以在單一轉移中雙向傳遞信息的類型。設備連接后,在一個名為枚舉的過程中,主機使用控制傳輸來了解設備。
WinUSB設備也可以使用控制傳輸在供應商定義的請求中發送和接收數據。例如,您可以定義設置或讀取開關的請求,發送數據以配置設備操作或接收傳感器讀數。
控制轉移有兩個或三個階段。要了解新連接的設備,主機使用控制傳輸從設備請求稱為描述符的數據結構。在安裝階段,主機發送請求。在數據階段,設備發送請求的描述符。在狀態階段,主機確認接收描述符。主機也可以使用控制傳輸將信息發送到數據階段的設備,設備在狀態階段進行確認。有些請求沒有數據階段。
USB主機為控制傳輸保留一部分總線帶寬:低速和全速端點為10%,高速端點為20%。如果總線不忙,控制傳輸可以使用多于預留帶寬。但所有設備必須共享總線,因此在繁忙的總線上,控制權轉移可能不得不等待。
其他傳輸類型不具有多個階段,可以為任何目的傳輸數據。在另外一輛閑置的公交車上,批量轉運是比較快的。但批量傳輸沒有保證的帶寬,所以在繁忙的公交車上,批量傳輸必須等待。批量傳輸的常見用途是打印機和掃描儀,快速傳輸很好,但不是必需的。
對于中斷傳輸,主機保證來自IN端點的數據請求或向OUT端點發送數據的比較大時間間隔。中斷傳輸的常見用途是鼠標和鍵盤,它們需要將用戶輸入快速傳輸到主機。
等時傳輸具有保證的傳輸速率,但與其他傳輸類型不同,等時傳輸不使用確認,并且接收器沒有定義的方式來請求重新傳輸損壞的數據。等時傳輸的常見用途是流式音頻和視頻,用戶不會注意到或將容忍一些損壞或丟失的數據包。 WinUSB不支持同步傳輸。
使用USB框架
我的示例代碼是針對Microchip Technology的PIC18F4550單片機和MPLAB C18編譯器的。我在Microchip的PICDEM FS-USB開發板上測試了代碼。從我的網站上可以找到完整的用于PIC的WinUSB項目以及配套的Visual Basic和Visual C#應用程序。
我的PIC代碼使用了Microchip的免費USB框架,它是一組處理低級USB通信的源代碼模塊。使用框架可以節省很多時間和麻煩。
對于除端點0之外的每個端點,設備都提供端點描述符。此列表顯示了每個方向上批量和中斷端點的端點描述符:
文件信息
文件大小:5799384 字節
文件版本:3.7.0.1
MD5:76DB37A2F69135667083B048900E22FC
SHA1:5147CD450158D82E6AEE4F7FB242199471E69FF0
CRC32:2B50C289
官方網站:http://www.winusb.net/
相關搜索:U盤啟動 啟動盤 U盤啟動盤
騰訊視頻官方版 | 45.34MB
愛奇藝視頻官方正式版 | 35.10MB
暴風影音最新版下載 | 50.3MB
酷狗音樂2022下載 | 37MB