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盘。