在CE6下 从USB 虚拟出3个串口跟modem 通讯(CE系统是主设备)我把 D:\WINCE600\PUBLIC\COMMON\OAK\DRIVERS\USB\CLASS\USBSER 移植到BSP 驱动目录编译成usbser.dll , 注册表如下:
[HKEY_LOCAL_MACHINE\Drivers\USB\LoadClients\1118_121\Default\Default\USBSER_CLASS]
"Prefix"="COM"
"Dll"="USBSer.DLL"
[HKEY_LOCAL_MACHINE\Drivers\USB\ClientDrivers\USBSER_CLASS]
"Prefix"="COM"
"Dll"="USBSer.DLL"
"DeviceArrayIndex"=dword:1
“index”=dword:8
"RxBufferSize"=dword:4000
"IClass"="{CC5195AC-BA49-48a0-BE17-DF6D1B0173DD}"
PID VID 对应MODEM 的PID VID 插上设备可以识别COM8 也可以收发数据,我现在还要虚拟2个串口,需要修改驱动代码吗,或者就修改注册表就可以了?
===========================================================================
[HKEY_LOCAL_MACHINE\Drivers\USB\LoadClients\1118_121\Default\Default\USBSER_CLASS]
指定到interface,interfacecode,看看
====================================================================
不用修改代码,添加注册表就可以了。
给LoadClients\1118_121\Default\Default增加几个子键就可以了。
如:
LoadClients\1118_121\Default\Default\USBSER_1
LoadClients\1118_121\Default\Default\USBSER_2
LoadClients\1118_121\Default\Default\USBSER_3
这样,驱动就会根据设备有多少个interface,每个interface都会枚举
LoadClients\1118_121\Default\Default\下的所有子键并加载其驱动,
可以参考下华为3G 模块驱动的注册表,里面就虚拟出3个串口。