目標板識別為隨身碟

來源:互聯網
上載者:User

Mass Storage的實際應用就是隨身碟,目標板和PC通過USB相連,PC可以把目標板識別為隨身碟,在很多產品上都很常用。這裡介紹一下在WinCE系統中隨身碟功能的實現。

在談WinCE的USB Mass Storage實現之前,首先要具備以下條件:

1. 開發板支援USBClient裝置。

2. 開發板上至少有一種存放裝置可以被用來映射為隨身碟。

現在的處理器一般都帶有USB Client或者是USB OTG控制器,並且BSP中都有相應的驅動。對於存放裝置來說,Nandflash或者SD卡都可以作為存放裝置。所以都不是什麼問題。下面介紹一下步驟:

1. 選擇WinCE Mass Storage組件

在定製WinCE的時候,在Catalog Items View中選擇”Device Drivers”->”USB Function”->”USB Function Clients”->”Mass Storage”。

2. 更改USB Client驅動的註冊表配置

在WinCE中,USB Client驅動的註冊表配置如下:

[HKEY_LOCAL_MACHINE\Drivers\USB\FunctionDrivers]

DefaultClientDriver”:設定預設的USB Client驅動,這裡應該是Mass_Storage_Class

[HKEY_LOCAL_MACHINE\Drivers\USB\FunctionDrivers\Mass_Storage_Class]

Dll”:USB Client的驅動

DeviceName”:被映射為隨身碟的存放裝置的裝置名稱

FriendlyName”:顯示裝置名稱

idVendor”:Vendor ID,應該向USB組織申請

idProduct”:Product ID,由廠商定義

Manufacturer”:廠商名

Product”:產品名

bcdDevice”:裝置的版本號碼

InterfaceSubClass”:USB Host端通過該值來枚舉裝置,06h表示Mass Storage。

InterfaceProtocol”:USB裝置所支援的傳輸協議,50h表示bulk-only。

上面對註冊表的配置進行了介紹,這裡給各例子:

[HKEY_LOCAL_MACHINE\Drivers\USB\FunctionDrivers]

   "DefaultClientDriver"="Mass_Storage_Class"

[HKEY_LOCAL_MACHINE\Drivers\USB\FunctionDrivers\Mass_Storage_Class]

   "Dll"="usbmsfn.dll"

   "InterfaceSubClass"=dword:06

   "InterfaceProtocol"=dword:50

   "DeviceName"="DSK1:"

   "FriendlyName"="Mass Storage"

   "idVendor"=dword:048C

   "Manufacturer"="Honeywell"

   "idProduct"=dword:0001

   "Product"="Honeywell Mass Storage"

   "bcdDevice"=dword:0

3. 重新編譯WinCE工程

由於添加了新的組件,需要重新編譯WinCE工程。

編譯完成後,下載並運行,將裝置通過USB串連到PC上,PC就會將裝置識別為隨身碟。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.