您的位置:首页 > 其它

WINCE下USB的同步模式与U盘模式的切换

2014-05-22 09:45 225 查看
在SMDK2416.bat中,找到

set BSP_USBFNCLASS=SERIAL

@REM set BSP_USBFNCLASS=MASS_STORAGE

set BSP_KITL=NONE

rem set BSP_KITL=USBSERIAL

修改为

set BSP_USBFNCLASS=MASS_STORAGE   即U盘模式;       

set BSP_USBFNCLASS=SERIAL     即同步模式。

注册表中需要修改才能正确改为U盘模式 

修改完后双击运行SMDK2416.bat,在PB中执行

Copy Files to Release Directory

然后make生成NK,完成切换。

1.修改BSP设置。例如上s3c6410中,找到SMDK6410.bat ,set BSP_USBFNCLASS=MASS_STORAGE

2. 选择WinCE Mass Storage组件

在定制WinCE的时候,在Catalog Items View中选择”Device Drivers”->”USB Function”->”USB Function Clients”->”Mass Storage”。

3. 更改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”:被映射为U盘的存储设备的设备名

“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:"   //这个DSKn 的不同将识别不同的设备(如NandFlash,SD卡等)

   "FriendlyName"="Mass Storage"

   "idVendor"=dword:048C

   "Manufacturer"="Honeywell"

   "idProduct"=dword:0001

   "Product"="Honeywell Mass Storage"

   "bcdDevice"=dword:0

 

4. 重新编译WinCE工程

由于添加了新的组件,需要重新编译WinCE工程。

 

编译完成后,下载并运行,将设备通过USB连接到PC上,PC就会将设备识别为U盘。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: